From c13133d7e812db0d91a7f978fb0b09616510354d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Wed, 22 Jul 2026 22:36:53 +0200 Subject: [PATCH 001/149] add go sdk bindings foundation and go-bindgen-fixup dev tool --- Makefile.toml | 26 +- dev-tools/Cargo.lock | 4 + dev-tools/Cargo.toml | 2 +- dev-tools/README.md | 6 + dev-tools/go-bindgen-fixup/Cargo.toml | 14 + dev-tools/go-bindgen-fixup/src/lib.rs | 462 + dev-tools/go-bindgen-fixup/src/main.rs | 26 + sdks/go/.gitignore | 9 + sdks/go/componentize-go.toml | 5 + sdks/go/examples/smoke/go.mod | 17 + sdks/go/examples/smoke/go.sum | 21 + sdks/go/examples/smoke/main.go | 13 + sdks/go/go.mod | 13 + sdks/go/go.sum | 12 + sdks/go/golem.go | 15 + .../wit/export_golem_agent_guest/empty.s | 3 + .../export_golem_agent_guest/wit_bindings.go | 54 + .../export_golem_api_load_snapshot/empty.s | 3 + .../wit_bindings.go | 41 + .../export_golem_api_save_snapshot/empty.s | 3 + .../wit_bindings.go | 40 + .../internal/wit/golem_agent_common/empty.s | 3 + .../wit/golem_agent_common/wit_bindings.go | 621 + .../go/internal/wit/golem_agent_guest/empty.s | 3 + .../wit/golem_agent_guest/wit_bindings.go | 42 + sdks/go/internal/wit/golem_agent_host/empty.s | 3 + .../wit/golem_agent_host/wit_bindings.go | 28546 ++++++ .../go/internal/wit/golem_api_context/empty.s | 3 + .../wit/golem_api_context/wit_bindings.go | 533 + sdks/go/internal/wit/golem_api_host/empty.s | 3 + .../wit/golem_api_host/wit_bindings.go | 1192 + .../wit/golem_api_load_snapshot/empty.s | 3 + .../golem_api_load_snapshot/wit_bindings.go | 38 + sdks/go/internal/wit/golem_api_oplog/empty.s | 3 + .../wit/golem_api_oplog/wit_bindings.go | 72221 ++++++++++++++++ sdks/go/internal/wit/golem_api_retry/empty.s | 3 + .../wit/golem_api_retry/wit_bindings.go | 2729 + .../wit/golem_api_save_snapshot/empty.s | 3 + .../golem_api_save_snapshot/wit_bindings.go | 38 + sdks/go/internal/wit/golem_core_types/empty.s | 3 + .../wit/golem_core_types/wit_bindings.go | 1476 + .../wit/golem_durability_durability/empty.s | 3 + .../wit_bindings.go | 7151 ++ .../go/internal/wit/golem_quota_types/empty.s | 3 + .../wit/golem_quota_types/wit_bindings.go | 176 + .../internal/wit/golem_rdbms_ignite2/empty.s | 3 + .../wit/golem_rdbms_ignite2/wit_bindings.go | 2036 + .../go/internal/wit/golem_rdbms_mysql/empty.s | 3 + .../wit/golem_rdbms_mysql/wit_bindings.go | 4065 + .../internal/wit/golem_rdbms_postgres/empty.s | 3 + .../wit/golem_rdbms_postgres/wit_bindings.go | 10569 +++ .../go/internal/wit/golem_rdbms_types/empty.s | 3 + .../wit/golem_rdbms_types/wit_bindings.go | 107 + .../internal/wit/golem_secrets_reveal/empty.s | 3 + .../wit/golem_secrets_reveal/wit_bindings.go | 2389 + .../internal/wit/golem_secrets_types/empty.s | 3 + .../wit/golem_secrets_types/wit_bindings.go | 206 + .../wit/golem_websocket_client/empty.s | 3 + .../golem_websocket_client/wit_bindings.go | 691 + .../wit/wasi_blobstore_blobstore/empty.s | 3 + .../wasi_blobstore_blobstore/wit_bindings.go | 226 + .../wit/wasi_blobstore_container/empty.s | 3 + .../wasi_blobstore_container/wit_bindings.go | 434 + .../internal/wit/wasi_blobstore_types/empty.s | 3 + .../wit/wasi_blobstore_types/wit_bindings.go | 312 + .../wit/wasi_cli_0_3_0_environment/empty.s | 3 + .../wit_bindings.go | 110 + .../wasi_clocks_0_3_0_system_clock/empty.s | 3 + .../wit_bindings.go | 85 + .../wit/wasi_clocks_0_3_0_types/empty.s | 3 + .../wasi_clocks_0_3_0_types/wit_bindings.go | 37 + .../go/internal/wit/wasi_config_store/empty.s | 3 + .../wit/wasi_config_store/wit_bindings.go | 185 + .../wit/wasi_http_0_3_0_client/empty.s | 3 + .../wasi_http_0_3_0_client/wit_bindings.go | 483 + .../wit/wasi_http_0_3_0_types/empty.s | 3 + .../wit/wasi_http_0_3_0_types/wit_bindings.go | 4061 + .../wit/wasi_keyvalue_eventual/empty.s | 3 + .../wasi_keyvalue_eventual/wit_bindings.go | 166 + .../wit/wasi_keyvalue_eventual_batch/empty.s | 3 + .../wit_bindings.go | 208 + .../internal/wit/wasi_keyvalue_types/empty.s | 3 + .../wit/wasi_keyvalue_types/wit_bindings.go | 409 + .../wasi_keyvalue_wasi_keyvalue_error/empty.s | 3 + .../wit_bindings.go | 111 + sdks/go/internal/wit/wit_exports/empty.s | 3 + .../internal/wit/wit_exports/wit_exports.go | 19733 +++++ sdks/go/wit/deps/blobstore/blobstore.wit | 29 + sdks/go/wit/deps/blobstore/container.wit | 51 + sdks/go/wit/deps/blobstore/types.wit | 70 + sdks/go/wit/deps/blobstore/world.wit | 5 + sdks/go/wit/deps/cli-0.2.6/cli.wit | 261 + sdks/go/wit/deps/cli/cli.wit | 256 + sdks/go/wit/deps/clocks-0.2.6/clocks.wit | 157 + sdks/go/wit/deps/clocks/clocks.wit | 161 + sdks/go/wit/deps/config/store.wit | 30 + sdks/go/wit/deps/config/world.wit | 6 + .../wit/deps/filesystem-0.2.6/filesystem.wit | 587 + sdks/go/wit/deps/filesystem/filesystem.wit | 575 + sdks/go/wit/deps/golem-1.x/golem-context.wit | 93 + sdks/go/wit/deps/golem-1.x/golem-host.wit | 340 + .../deps/golem-1.x/golem-oplog-processor.wit | 27 + sdks/go/wit/deps/golem-1.x/golem-oplog.wit | 977 + sdks/go/wit/deps/golem-1.x/golem-retry.wit | 165 + sdks/go/wit/deps/golem-agent/common.wit | 237 + sdks/go/wit/deps/golem-agent/guest.wit | 37 + sdks/go/wit/deps/golem-agent/host.wit | 143 + .../wit/deps/golem-core-v2/golem-core-v2.wit | 587 + .../golem-durability/golem-durability.wit | 85 + sdks/go/wit/deps/golem-quota/types.wit | 76 + sdks/go/wit/deps/golem-rdbms/ignite.wit | 81 + sdks/go/wit/deps/golem-rdbms/mysql.wit | 138 + sdks/go/wit/deps/golem-rdbms/postgres.wit | 293 + sdks/go/wit/deps/golem-rdbms/types.wit | 47 + sdks/go/wit/deps/golem-rdbms/world.wit | 7 + sdks/go/wit/deps/golem-secrets/reveal.wit | 31 + sdks/go/wit/deps/golem-secrets/types.wit | 73 + sdks/go/wit/deps/golem-tool/common.wit | 379 + sdks/go/wit/deps/golem-tool/guest.wit | 58 + sdks/go/wit/deps/golem-tool/host.wit | 85 + .../go/wit/deps/golem-websocket/websocket.wit | 46 + sdks/go/wit/deps/http-0.2.6/http.wit | 733 + sdks/go/wit/deps/http/http.wit | 509 + sdks/go/wit/deps/io-0.2.6/io.wit | 331 + sdks/go/wit/deps/keyvalue/caching.wit | 87 + sdks/go/wit/deps/keyvalue/error.wit | 20 + sdks/go/wit/deps/keyvalue/eventual-batch.wit | 81 + sdks/go/wit/deps/keyvalue/eventual.wit | 56 + sdks/go/wit/deps/keyvalue/handle-watch.wit | 17 + sdks/go/wit/deps/keyvalue/types.wit | 67 + sdks/go/wit/deps/keyvalue/world.wit | 21 + sdks/go/wit/deps/logging/logging.wit | 37 + sdks/go/wit/deps/random-0.2.6/random.wit | 92 + sdks/go/wit/deps/random/random.wit | 107 + sdks/go/wit/deps/sockets-0.2.6/sockets.wit | 949 + sdks/go/wit/deps/sockets/sockets.wit | 839 + sdks/go/wit/main.wit | 47 + 137 files changed, 172458 insertions(+), 2 deletions(-) create mode 100644 dev-tools/go-bindgen-fixup/Cargo.toml create mode 100644 dev-tools/go-bindgen-fixup/src/lib.rs create mode 100644 dev-tools/go-bindgen-fixup/src/main.rs create mode 100644 sdks/go/.gitignore create mode 100644 sdks/go/componentize-go.toml create mode 100644 sdks/go/examples/smoke/go.mod create mode 100644 sdks/go/examples/smoke/go.sum create mode 100644 sdks/go/examples/smoke/main.go create mode 100644 sdks/go/go.mod create mode 100644 sdks/go/go.sum create mode 100644 sdks/go/golem.go create mode 100644 sdks/go/internal/wit/export_golem_agent_guest/empty.s create mode 100644 sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go create mode 100644 sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s create mode 100644 sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go create mode 100644 sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s create mode 100644 sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_agent_common/empty.s create mode 100644 sdks/go/internal/wit/golem_agent_common/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_agent_guest/empty.s create mode 100644 sdks/go/internal/wit/golem_agent_guest/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_agent_host/empty.s create mode 100644 sdks/go/internal/wit/golem_agent_host/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_api_context/empty.s create mode 100644 sdks/go/internal/wit/golem_api_context/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_api_host/empty.s create mode 100644 sdks/go/internal/wit/golem_api_host/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_api_load_snapshot/empty.s create mode 100644 sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_api_oplog/empty.s create mode 100644 sdks/go/internal/wit/golem_api_oplog/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_api_retry/empty.s create mode 100644 sdks/go/internal/wit/golem_api_retry/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_api_save_snapshot/empty.s create mode 100644 sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_core_types/empty.s create mode 100644 sdks/go/internal/wit/golem_core_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_durability_durability/empty.s create mode 100644 sdks/go/internal/wit/golem_durability_durability/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_quota_types/empty.s create mode 100644 sdks/go/internal/wit/golem_quota_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_rdbms_ignite2/empty.s create mode 100644 sdks/go/internal/wit/golem_rdbms_ignite2/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_rdbms_mysql/empty.s create mode 100644 sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_rdbms_postgres/empty.s create mode 100644 sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_rdbms_types/empty.s create mode 100644 sdks/go/internal/wit/golem_rdbms_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_secrets_reveal/empty.s create mode 100644 sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_secrets_types/empty.s create mode 100644 sdks/go/internal/wit/golem_secrets_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/golem_websocket_client/empty.s create mode 100644 sdks/go/internal/wit/golem_websocket_client/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_blobstore_blobstore/empty.s create mode 100644 sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_blobstore_container/empty.s create mode 100644 sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_blobstore_types/empty.s create mode 100644 sdks/go/internal/wit/wasi_blobstore_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_cli_0_3_0_environment/empty.s create mode 100644 sdks/go/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s create mode 100644 sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_clocks_0_3_0_types/empty.s create mode 100644 sdks/go/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_config_store/empty.s create mode 100644 sdks/go/internal/wit/wasi_config_store/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_http_0_3_0_client/empty.s create mode 100644 sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_http_0_3_0_types/empty.s create mode 100644 sdks/go/internal/wit/wasi_http_0_3_0_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_keyvalue_eventual/empty.s create mode 100644 sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_keyvalue_eventual_batch/empty.s create mode 100644 sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_keyvalue_types/empty.s create mode 100644 sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go create mode 100644 sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s create mode 100644 sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go create mode 100644 sdks/go/internal/wit/wit_exports/empty.s create mode 100644 sdks/go/internal/wit/wit_exports/wit_exports.go create mode 100644 sdks/go/wit/deps/blobstore/blobstore.wit create mode 100644 sdks/go/wit/deps/blobstore/container.wit create mode 100644 sdks/go/wit/deps/blobstore/types.wit create mode 100644 sdks/go/wit/deps/blobstore/world.wit create mode 100644 sdks/go/wit/deps/cli-0.2.6/cli.wit create mode 100644 sdks/go/wit/deps/cli/cli.wit create mode 100644 sdks/go/wit/deps/clocks-0.2.6/clocks.wit create mode 100644 sdks/go/wit/deps/clocks/clocks.wit create mode 100644 sdks/go/wit/deps/config/store.wit create mode 100644 sdks/go/wit/deps/config/world.wit create mode 100644 sdks/go/wit/deps/filesystem-0.2.6/filesystem.wit create mode 100644 sdks/go/wit/deps/filesystem/filesystem.wit create mode 100644 sdks/go/wit/deps/golem-1.x/golem-context.wit create mode 100644 sdks/go/wit/deps/golem-1.x/golem-host.wit create mode 100644 sdks/go/wit/deps/golem-1.x/golem-oplog-processor.wit create mode 100644 sdks/go/wit/deps/golem-1.x/golem-oplog.wit create mode 100644 sdks/go/wit/deps/golem-1.x/golem-retry.wit create mode 100644 sdks/go/wit/deps/golem-agent/common.wit create mode 100644 sdks/go/wit/deps/golem-agent/guest.wit create mode 100644 sdks/go/wit/deps/golem-agent/host.wit create mode 100644 sdks/go/wit/deps/golem-core-v2/golem-core-v2.wit create mode 100644 sdks/go/wit/deps/golem-durability/golem-durability.wit create mode 100644 sdks/go/wit/deps/golem-quota/types.wit create mode 100644 sdks/go/wit/deps/golem-rdbms/ignite.wit create mode 100644 sdks/go/wit/deps/golem-rdbms/mysql.wit create mode 100644 sdks/go/wit/deps/golem-rdbms/postgres.wit create mode 100644 sdks/go/wit/deps/golem-rdbms/types.wit create mode 100644 sdks/go/wit/deps/golem-rdbms/world.wit create mode 100644 sdks/go/wit/deps/golem-secrets/reveal.wit create mode 100644 sdks/go/wit/deps/golem-secrets/types.wit create mode 100644 sdks/go/wit/deps/golem-tool/common.wit create mode 100644 sdks/go/wit/deps/golem-tool/guest.wit create mode 100644 sdks/go/wit/deps/golem-tool/host.wit create mode 100644 sdks/go/wit/deps/golem-websocket/websocket.wit create mode 100644 sdks/go/wit/deps/http-0.2.6/http.wit create mode 100644 sdks/go/wit/deps/http/http.wit create mode 100644 sdks/go/wit/deps/io-0.2.6/io.wit create mode 100644 sdks/go/wit/deps/keyvalue/caching.wit create mode 100644 sdks/go/wit/deps/keyvalue/error.wit create mode 100644 sdks/go/wit/deps/keyvalue/eventual-batch.wit create mode 100644 sdks/go/wit/deps/keyvalue/eventual.wit create mode 100644 sdks/go/wit/deps/keyvalue/handle-watch.wit create mode 100644 sdks/go/wit/deps/keyvalue/types.wit create mode 100644 sdks/go/wit/deps/keyvalue/world.wit create mode 100644 sdks/go/wit/deps/logging/logging.wit create mode 100644 sdks/go/wit/deps/random-0.2.6/random.wit create mode 100644 sdks/go/wit/deps/random/random.wit create mode 100644 sdks/go/wit/deps/sockets-0.2.6/sockets.wit create mode 100644 sdks/go/wit/deps/sockets/sockets.wit create mode 100644 sdks/go/wit/main.wit diff --git a/Makefile.toml b/Makefile.toml index 362bd6d1c3..a85ed74aba 100644 --- a/Makefile.toml +++ b/Makefile.toml @@ -111,6 +111,7 @@ args = [ "--src", "wit/deps", "--dst", "sdks/ts/wit/deps", "--src", "wit/deps", "--dst", "sdks/scala/wit/deps", "--src", "wit/deps", "--dst", "sdks/moonbit/golem_sdk/wit/deps", + "--src", "wit/deps", "--dst", "sdks/go/wit/deps", ] [tasks.wit-golem-cli] @@ -129,7 +130,7 @@ args = [ private = true script_runner = "@duckscript" script = ''' -status = exec git status --porcelain -- golem-common/wit/deps cli/golem-cli/wit/deps sdks/rust/golem-rust/wit/deps sdks/ts/wit/deps sdks/scala/wit/deps sdks/moonbit/golem_sdk/wit/deps +status = exec git status --porcelain -- golem-common/wit/deps cli/golem-cli/wit/deps sdks/rust/golem-rust/wit/deps sdks/ts/wit/deps sdks/scala/wit/deps sdks/moonbit/golem_sdk/wit/deps sdks/go/wit/deps ok = eq ${status.code} 0 if not ${ok} echo "git status failed (exit ${status.code}):" @@ -403,6 +404,29 @@ else fi ''' +[tasks.generate-sdk-go-bindings] +description = "Regenerates the Go SDK's WIT bindings (sdks/go/internal/wit)" +dependencies = ["wit"] +cwd = "./sdks/go" +script_runner = "@duckscript" +script = ''' +# The componentize-go version is pinned in sdks/go/go.mod via the `tool` directive +# (never `latest`); `go tool` therefore resolves the exact pinned build. +# --all-features is a GLOBAL flag and must precede the subcommand: golem's p3 WIT +# uses @unstable annotations (timezone). +exec --fail-on-error go tool componentize-go --all-features bindings --output internal/wit --pkg-name github.com/golemcloud/golem-go/internal/wit --generate-stubs --format + +# Works around a wit-bindgen crates/go codegen bug; see dev-tools/go-bindgen-fixup. +exec --fail-on-error cargo run --quiet --manifest-path ../../dev-tools/Cargo.toml --bin go-bindgen-fixup -- internal/wit +exec --fail-on-error gofmt -w internal/wit + +# The generated code is wasm-only (//go:wasmimport declarations have no bodies), +# so it can only be type-checked for the wasip1 target, not the host. +set_env GOOS wasip1 +set_env GOARCH wasm +exec --fail-on-error go build ./internal/wit/... +''' + [tasks.clean-sdk-scala] description = "Cleans the Scala SDK" cwd = "./sdks/scala" diff --git a/dev-tools/Cargo.lock b/dev-tools/Cargo.lock index 6577455adb..c7040f6176 100644 --- a/dev-tools/Cargo.lock +++ b/dev-tools/Cargo.lock @@ -5,3 +5,7 @@ version = 4 [[package]] name = "dir-mirror" version = "0.0.0" + +[[package]] +name = "go-bindgen-fixup" +version = "0.0.0" diff --git a/dev-tools/Cargo.toml b/dev-tools/Cargo.toml index c5c438964a..97007388ea 100644 --- a/dev-tools/Cargo.toml +++ b/dev-tools/Cargo.toml @@ -4,4 +4,4 @@ # Add more tool crates as members. [workspace] resolver = "2" -members = ["dir-mirror"] +members = ["dir-mirror", "go-bindgen-fixup"] diff --git a/dev-tools/README.md b/dev-tools/README.md index 247d9c6c8d..c87ccae828 100644 --- a/dev-tools/README.md +++ b/dev-tools/README.md @@ -29,6 +29,12 @@ main workspace. ## Tools +- **`go-bindgen-fixup`** — post-processes the generated Go SDK bindings (`sdks/go/internal/wit`) + to work around a `wit-bindgen` `crates/go` codegen bug: variant case tag constants are named + ``, which collides with the record type generated from a WIT record named + `-` (golem's `queued-card-event`), producing Go that does not compile. Renames + the colliding *constant* to `Tag`. Collision detection is generic, not hardcoded. Invoked + by `sdks/go/scripts/generate-bindings.sh`; **delete once fixed upstream**. - **`dir-mirror`** — idempotent directory mirror: makes a destination directory a byte-identical copy of a source directory, rewriting only changed files (preserving mtimes) and pruning stale ones. Used by the `wit` task to sync the per-crate diff --git a/dev-tools/go-bindgen-fixup/Cargo.toml b/dev-tools/go-bindgen-fixup/Cargo.toml new file mode 100644 index 0000000000..ab3434f35d --- /dev/null +++ b/dev-tools/go-bindgen-fixup/Cargo.toml @@ -0,0 +1,14 @@ +[package] +name = "go-bindgen-fixup" +version = "0.0.0" +edition = "2024" +license-file = "../../LICENSE" +publish = false +description = "Works around a wit-bindgen crates/go codegen bug in the generated Go SDK bindings" + +# No dependencies — std only, on purpose (see dev-tools/README.md). Tests use plain +# `cargo test` (libtest), so there are no dev-dependencies either. + +[[bin]] +name = "go-bindgen-fixup" +test = false diff --git a/dev-tools/go-bindgen-fixup/src/lib.rs b/dev-tools/go-bindgen-fixup/src/lib.rs new file mode 100644 index 0000000000..e3017e1d32 --- /dev/null +++ b/dev-tools/go-bindgen-fixup/src/lib.rs @@ -0,0 +1,462 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +//! Post-process Go bindings generated by `wit-bindgen`'s `crates/go` backend, working +//! around codegen bugs that produce Go which does not compile. +//! +//! Two independent fixups are applied; both are upstream bugs and both should be deleted +//! from here once fixed upstream (see `tmp/plan` → "Upstream candidates"). +//! +//! # 1. Variant tag constants colliding with record types +//! +//! **The bug** (wit-bindgen 0.58.0): a variant's case tag constants are named +//! ``, which collides with the record type generated for a WIT record +//! named `-`. Golem's WIT uses exactly that convention: +//! +//! ```wit +//! record queued-card-event-install { card-id: card-id } +//! variant queued-card-event { install(queued-card-event-install), ... } +//! ``` +//! +//! which generates both `type QueuedCardEventInstall struct` and +//! `const QueuedCardEventInstall uint8 = 0`, so Go rejects the package with +//! "X redeclared in this block" and "X (type) is not an expression". +//! +//! `golem:api/oplog` (where this occurs) is pulled in transitively via +//! `golem:durability`, so it cannot be avoided by trimming the world. +//! +//! **The fix**: rename the colliding *constant* to `Tag` and update the four call +//! shapes the generator emits. The record type keeps its name, so nothing user-facing +//! changes. +//! +//! Collision detection is generic — declared struct type names are intersected with +//! declared tag constants; no names are hardcoded. +//! +//! # 2. Missing `empty.s` in the exports package +//! +//! Go only allows a function declaration **without a body** if the package contains at +//! least one `.s` file (the compiler assumes assembly supplies it). `//go:wasmimport` +//! declarations are bodyless by nature, so the generator drops a small `empty.s` stub +//! into each package — its own comment says it exists "for testing this package without +//! WebAssembly". +//! +//! It emits that stub for *import* packages but **not** for the exports package, which +//! nevertheless contains one bodyless `[task-return]` `//go:wasmimport` per async export. +//! Without it, that package (and therefore anything importing the SDK) cannot be compiled +//! for the host at all — which would rule out native `go test`. +//! +//! **The fix**: write the same stub into any package that has a `//go:wasmimport` but no +//! `.s` file. Calling a host import on the host is still a *link* error naming the missing +//! symbol, so the host/guest boundary stays enforced by the toolchain. + +use std::fs; +use std::io; +use std::path::{Path, PathBuf}; + +pub const USAGE: &str = "Usage: go-bindgen-fixup [ ...]\n\ + \n\ + Applies workarounds for wit-bindgen crates/go codegen bugs, recursively, in each\n\ + :\n\ + \n\ + 1. renames variant tag constants that collide with a struct type of the same\n\ + name to Tag;\n\ + 2. adds the missing empty.s stub to any package that has a bodyless\n\ + //go:wasmimport but no assembly file (without it the package cannot be\n\ + compiled for the host, which would rule out native `go test`)."; + +/// Integer types wit-bindgen uses for variant discriminants. +const TAG_TYPES: [&str; 3] = ["uint8", "uint16", "uint32"]; + +/// Names of struct types declared in `src` (`type Foo struct {`). +fn struct_types(src: &str) -> Vec<&str> { + src.lines() + .filter_map(|line| { + let rest = line.strip_prefix("type ")?; + let (name, tail) = rest.split_once(' ')?; + tail.starts_with("struct {").then_some(name) + }) + .collect() +} + +/// Names of tag constants declared in `src` (`\tFoo uint8 = 0`, possibly gofmt-aligned +/// with extra spaces). +fn tag_constants(src: &str) -> Vec<&str> { + src.lines() + .filter_map(parse_tag_const) + .map(|(n, _, _)| n) + .collect() +} + +/// Parse `\tNameuintN = ` into (name, int type, value). +fn parse_tag_const(line: &str) -> Option<(&str, &str, &str)> { + if !line.starts_with('\t') { + return None; + } + // `split_whitespace` already skips leading/trailing whitespace. + let mut parts = line.split_whitespace(); + let name = parts.next()?; + let int_ty = parts.next()?; + if !TAG_TYPES.contains(&int_ty) || parts.next()? != "=" { + return None; + } + let value = parts.next()?; + if parts.next().is_some() || value.is_empty() || !value.bytes().all(|b| b.is_ascii_digit()) { + return None; + } + Some((name, int_ty, value)) +} + +/// Rewrite `src`, renaming every tag constant whose name collides with a struct type. +/// Returns the new source and the names that were renamed (sorted, deduplicated). +pub fn fix_source(src: &str) -> (String, Vec) { + let types = struct_types(src); + let mut collisions: Vec = tag_constants(src) + .into_iter() + .filter(|c| types.contains(c)) + .map(str::to_string) + .collect(); + collisions.sort(); + collisions.dedup(); + + if collisions.is_empty() { + return (src.to_string(), collisions); + } + + let mut out = src.to_string(); + for name in &collisions { + let tag = format!("{name}Tag"); + + // 1. the declaration inside the const block + out = out + .lines() + .map(|line| match parse_tag_const(line) { + Some((n, int_ty, value)) if n == name => format!("\t{tag} {int_ty} = {value}"), + _ => line.to_string(), + }) + .collect::>() + .join("\n"); + if src.ends_with('\n') && !out.ends_with('\n') { + out.push('\n'); + } + + // 2..4: usages where the constant (not the type) is meant. Each pattern carries + // its own delimiter, so a longer identifier sharing this prefix cannot match. + out = out.replace(&format!(".tag != {name} {{"), &format!(".tag != {tag} {{")); + out = out.replace(&format!("{{{name}, "), &format!("{{{tag}, ")); + out = out.replace(&format!("case {name}:"), &format!("case {tag}:")); + } + (out, collisions) +} + +/// Byte-identical to the stub the generator writes into import packages (no trailing +/// newline), so a fixed-up tree is indistinguishable from a correctly generated one. +const EMPTY_S: &str = "// This file exists for testing this package without WebAssembly,\n\ + // allowing empty function bodies with a //go:wasmimport directive.\n\ + // See https://pkg.go.dev/cmd/compile for more information."; + +const EMPTY_S_NAME: &str = "empty.s"; + +/// Does this package directory declare a `//go:wasmimport` (i.e. contain bodyless +/// function declarations)? `//go:wasmexport` functions have bodies and do not count. +fn needs_assembly_stub(dir: &Path) -> io::Result { + for entry in fs::read_dir(dir)? { + let path = entry?.path(); + if path.extension().is_some_and(|e| e == "go") + && fs::read_to_string(&path)?.contains("//go:wasmimport") + { + return Ok(true); + } + } + Ok(false) +} + +fn has_assembly_file(dir: &Path) -> io::Result { + for entry in fs::read_dir(dir)? { + if entry?.path().extension().is_some_and(|e| e == "s") { + return Ok(true); + } + } + Ok(false) +} + +/// Write the `empty.s` stub into every package under `root` that needs one and lacks it. +/// Returns the paths written. +pub fn add_missing_assembly_stubs(root: &Path) -> io::Result> { + let mut written = Vec::new(); + let mut dirs = vec![root.to_path_buf()]; + while let Some(dir) = dirs.pop() { + for entry in fs::read_dir(&dir)? { + let path = entry?.path(); + if path.is_dir() { + dirs.push(path); + } + } + if needs_assembly_stub(&dir)? && !has_assembly_file(&dir)? { + let path = dir.join(EMPTY_S_NAME); + fs::write(&path, EMPTY_S)?; + written.push(path); + } + } + written.sort(); + Ok(written) +} + +/// Recursively collect `*.go` files under `dir`. +fn go_files(dir: &Path, out: &mut Vec) -> io::Result<()> { + for entry in fs::read_dir(dir)? { + let path = entry?.path(); + if path.is_dir() { + go_files(&path, out)?; + } else if path.extension().is_some_and(|e| e == "go") { + out.push(path); + } + } + out.sort(); + Ok(()) +} + +pub fn run(args: &[String]) -> io::Result<()> { + if args.is_empty() || args.iter().any(|a| a == "-h" || a == "--help") { + println!("{USAGE}"); + return Ok(()); + } + + let mut total = 0usize; + let mut stubs = 0usize; + for dir in args { + for path in add_missing_assembly_stubs(Path::new(dir))? { + stubs += 1; + println!( + " {}: added {EMPTY_S_NAME} (bodyless //go:wasmimport)", + path.display() + ); + } + + let mut files = Vec::new(); + go_files(Path::new(dir), &mut files)?; + for path in files { + let src = fs::read_to_string(&path)?; + let (fixed, renamed) = fix_source(&src); + if renamed.is_empty() { + continue; + } + fs::write(&path, fixed)?; + total += renamed.len(); + println!( + " {}: renamed {} colliding tag const(s) -> *Tag ({})", + path.display(), + renamed.len(), + renamed.join(", ") + ); + } + } + println!("go-bindgen-fixup: {total} constant(s) renamed, {stubs} assembly stub(s) added"); + Ok(()) +} + +#[cfg(test)] +mod tests { + use super::*; + use std::sync::atomic::{AtomicU64, Ordering}; + use std::time::{SystemTime, UNIX_EPOCH}; + + /// Minimal std-only temp directory, removed on drop (so dev-tools stays dependency-free). + struct TmpDir(PathBuf); + + impl TmpDir { + fn new() -> Self { + static COUNTER: AtomicU64 = AtomicU64::new(0); + let nanos = SystemTime::now() + .duration_since(UNIX_EPOCH) + .unwrap() + .as_nanos(); + let n = COUNTER.fetch_add(1, Ordering::Relaxed); + let path = std::env::temp_dir().join(format!( + "go-bindgen-fixup-test-{}-{nanos}-{n}", + std::process::id() + )); + fs::create_dir_all(&path).unwrap(); + TmpDir(path) + } + + fn path(&self) -> &Path { + &self.0 + } + } + + impl Drop for TmpDir { + fn drop(&mut self) { + let _ = fs::remove_dir_all(&self.0); + } + } + + fn write_go(dir: &Path, name: &str, contents: &str) { + fs::create_dir_all(dir).unwrap(); + fs::write(dir.join(name), contents).unwrap(); + } + + /// The real shape emitted for golem's `queued-card-event`, including the gofmt + /// alignment padding that makes the second constant easy to miss. + const SAMPLE: &str = "type QueuedCardEventInstall struct {\n\ + \tCardId golem_core_types.CardId\n\ + }\n\ + \n\ + type QueuedCardEventRevoke struct {\n\ + \tCardId golem_core_types.CardId\n\ + }\n\ + \n\ + const (\n\ + \tQueuedCardEventInstall uint8 = 0\n\ + \tQueuedCardEventRevoke uint8 = 1\n\ + )\n\ + \n\ + func (self QueuedCardEvent) Install() QueuedCardEventInstall {\n\ + \tif self.tag != QueuedCardEventInstall {\n\ + \t\tpanic(\"tag mismatch\")\n\ + \t}\n\ + \treturn self.value.(QueuedCardEventInstall)\n\ + }\n\ + \n\ + func MakeQueuedCardEventInstall(value QueuedCardEventInstall) QueuedCardEvent {\n\ + \treturn QueuedCardEvent{QueuedCardEventInstall, value}\n\ + }\n\ + \n\ + \t\t\tcase QueuedCardEventInstall:\n"; + + #[test] + fn detects_both_collisions_including_gofmt_aligned_one() { + let (_, renamed) = fix_source(SAMPLE); + assert_eq!( + renamed, + vec!["QueuedCardEventInstall", "QueuedCardEventRevoke"] + ); + } + + #[test] + fn renames_the_constant_declarations_only() { + let (out, _) = fix_source(SAMPLE); + assert!(out.contains("\tQueuedCardEventInstallTag uint8 = 0")); + assert!(out.contains("\tQueuedCardEventRevokeTag uint8 = 1")); + // the record types keep their names + assert!(out.contains("type QueuedCardEventInstall struct {")); + assert!(out.contains("type QueuedCardEventRevoke struct {")); + } + + #[test] + fn rewrites_constant_usages_but_not_type_usages() { + let (out, _) = fix_source(SAMPLE); + // constant positions + assert!(out.contains("if self.tag != QueuedCardEventInstallTag {")); + assert!(out.contains("QueuedCardEvent{QueuedCardEventInstallTag, value}")); + assert!(out.contains("case QueuedCardEventInstallTag:")); + // type positions must be untouched + assert!(out.contains("Install() QueuedCardEventInstall {")); + assert!(out.contains("self.value.(QueuedCardEventInstall)")); + assert!(out.contains("func MakeQueuedCardEventInstall(value QueuedCardEventInstall)")); + } + + #[test] + fn is_idempotent() { + let (once, _) = fix_source(SAMPLE); + let (twice, renamed) = fix_source(&once); + assert_eq!(once, twice); + assert!(renamed.is_empty(), "second pass must find nothing to do"); + } + + #[test] + fn leaves_non_colliding_files_untouched() { + let src = "type Foo struct {\n\tA string\n}\n\nconst (\n\tBarInstall uint8 = 0\n)\n"; + let (out, renamed) = fix_source(src); + assert_eq!(out, src); + assert!(renamed.is_empty()); + } + + #[test] + fn does_not_treat_arbitrary_constants_as_tags() { + // not a tag constant: wrong int type / not a plain integer literal + let src = + "type Foo struct {\n\tA string\n}\n\nconst (\n\tFoo int = 3\n\tBaz uint8 = x\n)\n"; + let (_, renamed) = fix_source(src); + assert!(renamed.is_empty()); + } + + #[test] + fn adds_stub_to_a_package_with_bodyless_wasmimport() { + let tmp = TmpDir::new(); + let pkg = tmp.path().join("wit_exports"); + write_go( + &pkg, + "wit_exports.go", + "package wit_exports\n\n//go:wasmimport [export]x [task-return]save\nfunc f(a uintptr)\n", + ); + + let written = add_missing_assembly_stubs(tmp.path()).unwrap(); + assert_eq!(written, vec![pkg.join("empty.s")]); + // byte-identical to what the generator writes for import packages + assert_eq!(fs::read_to_string(pkg.join("empty.s")).unwrap(), EMPTY_S); + } + + #[test] + fn does_not_add_a_stub_when_one_already_exists() { + let tmp = TmpDir::new(); + let pkg = tmp.path().join("imports"); + write_go( + &pkg, + "b.go", + "package imports\n//go:wasmimport env f\nfunc f()\n", + ); + fs::write(pkg.join("empty.s"), "// pre-existing").unwrap(); + + assert!(add_missing_assembly_stubs(tmp.path()).unwrap().is_empty()); + assert_eq!( + fs::read_to_string(pkg.join("empty.s")).unwrap(), + "// pre-existing" + ); + } + + #[test] + fn does_not_add_a_stub_for_wasmexport_only_packages() { + // //go:wasmexport functions have bodies, so no assembly file is required. + let tmp = TmpDir::new(); + let pkg = tmp.path().join("exports_only"); + write_go( + &pkg, + "c.go", + "package x\n//go:wasmexport run\nfunc run() {}\n", + ); + + assert!(add_missing_assembly_stubs(tmp.path()).unwrap().is_empty()); + assert!(!pkg.join("empty.s").exists()); + } + + #[test] + fn stub_addition_is_idempotent_and_recurses() { + let tmp = TmpDir::new(); + let nested = tmp.path().join("a/b/deep_pkg"); + write_go( + &nested, + "d.go", + "package deep\n//go:wasmimport env g\nfunc g()\n", + ); + + assert_eq!(add_missing_assembly_stubs(tmp.path()).unwrap().len(), 1); + assert!(add_missing_assembly_stubs(tmp.path()).unwrap().is_empty()); + } + + #[test] + fn preserves_trailing_newline() { + let (out, _) = fix_source(SAMPLE); + assert!(out.ends_with('\n')); + } +} diff --git a/dev-tools/go-bindgen-fixup/src/main.rs b/dev-tools/go-bindgen-fixup/src/main.rs new file mode 100644 index 0000000000..60571b4253 --- /dev/null +++ b/dev-tools/go-bindgen-fixup/src/main.rs @@ -0,0 +1,26 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +use std::process::ExitCode; + +fn main() -> ExitCode { + let args: Vec = std::env::args().skip(1).collect(); + match go_bindgen_fixup::run(&args) { + Ok(()) => ExitCode::SUCCESS, + Err(e) => { + eprintln!("go-bindgen-fixup: {e}"); + ExitCode::FAILURE + } + } +} diff --git a/sdks/go/.gitignore b/sdks/go/.gitignore new file mode 100644 index 0000000000..e25e5e2af2 --- /dev/null +++ b/sdks/go/.gitignore @@ -0,0 +1,9 @@ +# Built components. Regenerated by `componentize-go build`; no SDK ships a +# committed .wasm (unlike the TS/Scala QuickJS base images, Go compiles the +# guest from source, so there is no prebuilt artifact to check in). +*.wasm + +# golem-cli local state, if an example is run through the CLI +.golem/ +.golem-local/ +golem-temp/ diff --git a/sdks/go/componentize-go.toml b/sdks/go/componentize-go.toml new file mode 100644 index 0000000000..8d196aaf06 --- /dev/null +++ b/sdks/go/componentize-go.toml @@ -0,0 +1,5 @@ +# Consumed by `componentize-go` in downstream agent projects: because this file +# ships with the SDK module, an agent only needs to run `componentize-go build` +# with no WIT flags. +worlds = ["golem:agent-guest/agent-guest"] +wit_paths = ["wit"] diff --git a/sdks/go/examples/smoke/go.mod b/sdks/go/examples/smoke/go.mod new file mode 100644 index 0000000000..14ed240801 --- /dev/null +++ b/sdks/go/examples/smoke/go.mod @@ -0,0 +1,17 @@ +module smoke + +go 1.25.5 + +require github.com/golemcloud/golem-go v0.0.0 + +require ( + github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 // indirect + github.com/bytecodealliance/componentize-go v0.4.0 // indirect + github.com/gofrs/flock v0.13.0 // indirect + go.bytecodealliance.org/pkg v0.2.3 // indirect + golang.org/x/sys v0.37.0 // indirect +) + +replace github.com/golemcloud/golem-go => ../.. + +tool github.com/bytecodealliance/componentize-go diff --git a/sdks/go/examples/smoke/go.sum b/sdks/go/examples/smoke/go.sum new file mode 100644 index 0000000000..3a9de667b9 --- /dev/null +++ b/sdks/go/examples/smoke/go.sum @@ -0,0 +1,21 @@ +github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 h1:JtuelWqyixKApmXm3qghhZ7O96P6NKpyrlSIe8Rwnhw= +github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13/go.mod h1:7kfpUbyCdGJ9fDRCp3fopPQi5+cKNHgTE4ZuNrO71Cw= +github.com/bytecodealliance/componentize-go v0.4.0 h1:rzNC0pnrXl2PGaTlXkVnAvw9IH6JLMN5K49SYBcYEdU= +github.com/bytecodealliance/componentize-go v0.4.0/go.mod h1:w1QFtPLGI9o38epvMOPyCKbMc7q7GJ7yZhIvhGTpzA0= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/gofrs/flock v0.13.0 h1:95JolYOvGMqeH31+FC7D2+uULf6mG61mEZ/A8dRYMzw= +github.com/gofrs/flock v0.13.0/go.mod h1:jxeyy9R1auM5S6JYDBhDt+E2TCo7DkratH4Pgi8P+Z0= +github.com/google/go-cmp v0.3.0 h1:crn/baboCvb5fXaQ0IJ1SGTsTVrWpDsCWC8EGETZijY= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= +github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +go.bytecodealliance.org/pkg v0.2.3 h1:So9zHg8ahW+TH1JmgBHgIYuKHcinLiEcpV1tqVEZvLA= +go.bytecodealliance.org/pkg v0.2.3/go.mod h1:OjA+V8g3uUFixeCKFfamm6sYhTJdg8fvwEdJ2GO0GSk= +golang.org/x/sys v0.0.0-20190509141414-a5b02f93d862/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ= +golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/sdks/go/examples/smoke/main.go b/sdks/go/examples/smoke/main.go new file mode 100644 index 0000000000..dc8cd17f94 --- /dev/null +++ b/sdks/go/examples/smoke/main.go @@ -0,0 +1,13 @@ +// Package main is a Phase-1 smoke component: it exists only to prove the full +// toolchain chain (bindings -> componentize-go build -> valid component -> +// wasmtime instantiate). The guest exports are the generated stubs; real +// dispatch arrives in Phase 2. +package main + +import ( + // Linking the generated export glue is what makes the component export the + // golem:agent/guest world. + _ "github.com/golemcloud/golem-go" +) + +func main() {} diff --git a/sdks/go/go.mod b/sdks/go/go.mod new file mode 100644 index 0000000000..b302e9c8ee --- /dev/null +++ b/sdks/go/go.mod @@ -0,0 +1,13 @@ +module github.com/golemcloud/golem-go + +go 1.25.5 + +tool github.com/bytecodealliance/componentize-go + +require ( + github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 // indirect + github.com/bytecodealliance/componentize-go v0.4.0 // indirect + github.com/gofrs/flock v0.13.0 // indirect + go.bytecodealliance.org/pkg v0.2.3 // indirect + golang.org/x/sys v0.37.0 // indirect +) diff --git a/sdks/go/go.sum b/sdks/go/go.sum new file mode 100644 index 0000000000..b7afa3cea1 --- /dev/null +++ b/sdks/go/go.sum @@ -0,0 +1,12 @@ +github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 h1:JtuelWqyixKApmXm3qghhZ7O96P6NKpyrlSIe8Rwnhw= +github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13/go.mod h1:7kfpUbyCdGJ9fDRCp3fopPQi5+cKNHgTE4ZuNrO71Cw= +github.com/bytecodealliance/componentize-go v0.4.0 h1:rzNC0pnrXl2PGaTlXkVnAvw9IH6JLMN5K49SYBcYEdU= +github.com/bytecodealliance/componentize-go v0.4.0/go.mod h1:w1QFtPLGI9o38epvMOPyCKbMc7q7GJ7yZhIvhGTpzA0= +github.com/gofrs/flock v0.13.0 h1:95JolYOvGMqeH31+FC7D2+uULf6mG61mEZ/A8dRYMzw= +github.com/gofrs/flock v0.13.0/go.mod h1:jxeyy9R1auM5S6JYDBhDt+E2TCo7DkratH4Pgi8P+Z0= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +go.bytecodealliance.org/pkg v0.2.3 h1:So9zHg8ahW+TH1JmgBHgIYuKHcinLiEcpV1tqVEZvLA= +go.bytecodealliance.org/pkg v0.2.3/go.mod h1:OjA+V8g3uUFixeCKFfamm6sYhTJdg8fvwEdJ2GO0GSk= +golang.org/x/sys v0.0.0-20190509141414-a5b02f93d862/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ= +golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= diff --git a/sdks/go/golem.go b/sdks/go/golem.go new file mode 100644 index 0000000000..fa798d1a55 --- /dev/null +++ b/sdks/go/golem.go @@ -0,0 +1,15 @@ +// Package golem is the Golem Go SDK. +// +// Importing this package links the generated golem:agent/guest export glue into +// the component, so an agent's main package only needs: +// +// import _ "github.com/golemcloud/golem-go" +// +// The generated bindings stay in internal/ (they are an implementation detail +// and must not become public API); Go's internal-package rule means downstream +// modules cannot import them directly, so this package is the linkage point. +package golem + +import ( + _ "github.com/golemcloud/golem-go/internal/wit/wit_exports" +) diff --git a/sdks/go/internal/wit/export_golem_agent_guest/empty.s b/sdks/go/internal/wit/export_golem_agent_guest/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/export_golem_agent_guest/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go b/sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go new file mode 100644 index 0000000000..e8f4ba267f --- /dev/null +++ b/sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go @@ -0,0 +1,54 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package export_golem_agent_guest + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +func Initialize(_agentType string, _input golem_core_types.SchemaValueTree, _principal golem_agent_common.Principal) witTypes.Result[witTypes.Unit, golem_agent_common.AgentError] { + panic("not implemented") +} + +func Invoke(_methodName string, _input golem_core_types.SchemaValueTree, _principal golem_agent_common.Principal) witTypes.Result[witTypes.Option[golem_core_types.SchemaValueTree], golem_agent_common.AgentError] { + panic("not implemented") +} + +func GetDefinition() golem_agent_common.AgentType { + panic("not implemented") +} + +func DiscoverAgentTypes() witTypes.Result[[]golem_agent_common.AgentType, golem_agent_common.AgentError] { + panic("not implemented") +} diff --git a/sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s b/sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go b/sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go new file mode 100644 index 0000000000..62a0877499 --- /dev/null +++ b/sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go @@ -0,0 +1,41 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package export_golem_api_load_snapshot + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +func Load(_snapshot golem_api_host.Snapshot) witTypes.Result[witTypes.Unit, string] { + panic("not implemented") +} diff --git a/sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s b/sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go b/sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go new file mode 100644 index 0000000000..992f6d43c1 --- /dev/null +++ b/sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go @@ -0,0 +1,40 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package export_golem_api_save_snapshot + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_api_host" +) + +func Save() golem_api_host.Snapshot { + panic("not implemented") +} diff --git a/sdks/go/internal/wit/golem_agent_common/empty.s b/sdks/go/internal/wit/golem_agent_common/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_agent_common/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_agent_common/wit_bindings.go b/sdks/go/internal/wit/golem_agent_common/wit_bindings.go new file mode 100644 index 0000000000..9ce6ea87cd --- /dev/null +++ b/sdks/go/internal/wit/golem_agent_common/wit_bindings.go @@ -0,0 +1,621 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_agent_common + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +type SchemaGraph = golem_core_types.SchemaGraph +type TypeNodeIndex = int32 +type TypedSchemaValue = golem_core_types.TypedSchemaValue +type MetadataEnvelope = golem_core_types.MetadataEnvelope +type AgentId = golem_core_types.AgentId +type AccountId = golem_core_types.AccountId +type ComponentId = golem_core_types.ComponentId +type Duration = uint64 + +const ( + AgentModeDurable uint8 = 0 + AgentModeEphemeral uint8 = 1 +) + +type AgentMode = uint8 + +const ( + AutoInjectedKindPrincipal uint8 = 0 +) + +type AutoInjectedKind = uint8 + +const ( + FieldSourceUserSupplied uint8 = 0 + FieldSourceAutoInjected uint8 = 1 +) + +type FieldSource struct { + tag uint8 + value any +} + +func (self FieldSource) Tag() uint8 { + return self.tag +} + +func (self FieldSource) AutoInjected() AutoInjectedKind { + if self.tag != FieldSourceAutoInjected { + panic("tag mismatch") + } + return self.value.(AutoInjectedKind) +} + +func MakeFieldSourceUserSupplied() FieldSource { + return FieldSource{FieldSourceUserSupplied, nil} +} +func MakeFieldSourceAutoInjected(value AutoInjectedKind) FieldSource { + return FieldSource{FieldSourceAutoInjected, value} +} + +type NamedField struct { + Name string + Source FieldSource + // Index into the owning agent-type / dependency `schema` graph. + Schema int32 + Metadata golem_core_types.MetadataEnvelope +} + +const ( + InputSchemaParameters uint8 = 0 +) + +// Ordered, named input parameters with per-field source annotation. +type InputSchema struct { + tag uint8 + value any +} + +func (self InputSchema) Tag() uint8 { + return self.tag +} + +func (self InputSchema) Parameters() []NamedField { + if self.tag != InputSchemaParameters { + panic("tag mismatch") + } + return self.value.([]NamedField) +} + +func MakeInputSchemaParameters(value []NamedField) InputSchema { + return InputSchema{InputSchemaParameters, value} +} + +const ( + OutputSchemaUnit uint8 = 0 + // Index into the owning agent-type / dependency `schema` graph. + OutputSchemaSingle uint8 = 1 +) + +// Output is either unit (no value) or a single value of the given type. +type OutputSchema struct { + tag uint8 + value any +} + +func (self OutputSchema) Tag() uint8 { + return self.tag +} + +func (self OutputSchema) Single() int32 { + if self.tag != OutputSchemaSingle { + panic("tag mismatch") + } + return self.value.(int32) +} + +func MakeOutputSchemaUnit() OutputSchema { + return OutputSchema{OutputSchemaUnit, nil} +} +func MakeOutputSchemaSingle(value int32) OutputSchema { + return OutputSchema{OutputSchemaSingle, value} +} + +const ( + CachePolicyNoCache uint8 = 0 + CachePolicyUntilWrite uint8 = 1 + CachePolicyTtl uint8 = 2 +) + +type CachePolicy struct { + tag uint8 + value any +} + +func (self CachePolicy) Tag() uint8 { + return self.tag +} + +func (self CachePolicy) Ttl() uint64 { + if self.tag != CachePolicyTtl { + panic("tag mismatch") + } + return self.value.(uint64) +} + +func MakeCachePolicyNoCache() CachePolicy { + return CachePolicy{CachePolicyNoCache, nil} +} +func MakeCachePolicyUntilWrite() CachePolicy { + return CachePolicy{CachePolicyUntilWrite, nil} +} +func MakeCachePolicyTtl(value uint64) CachePolicy { + return CachePolicy{CachePolicyTtl, value} +} + +type ReadOnlyConfig struct { + CachePolicy CachePolicy + UsesPrincipal bool +} + +type CorsOptions struct { + AllowedPatterns []string +} + +const ( + HttpMethodGet uint8 = 0 + HttpMethodHead uint8 = 1 + HttpMethodPost uint8 = 2 + HttpMethodPut uint8 = 3 + HttpMethodDelete uint8 = 4 + HttpMethodConnect uint8 = 5 + HttpMethodOptions uint8 = 6 + HttpMethodTrace uint8 = 7 + HttpMethodPatch uint8 = 8 + HttpMethodCustom uint8 = 9 +) + +type HttpMethod struct { + tag uint8 + value any +} + +func (self HttpMethod) Tag() uint8 { + return self.tag +} + +func (self HttpMethod) Custom() string { + if self.tag != HttpMethodCustom { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeHttpMethodGet() HttpMethod { + return HttpMethod{HttpMethodGet, nil} +} +func MakeHttpMethodHead() HttpMethod { + return HttpMethod{HttpMethodHead, nil} +} +func MakeHttpMethodPost() HttpMethod { + return HttpMethod{HttpMethodPost, nil} +} +func MakeHttpMethodPut() HttpMethod { + return HttpMethod{HttpMethodPut, nil} +} +func MakeHttpMethodDelete() HttpMethod { + return HttpMethod{HttpMethodDelete, nil} +} +func MakeHttpMethodConnect() HttpMethod { + return HttpMethod{HttpMethodConnect, nil} +} +func MakeHttpMethodOptions() HttpMethod { + return HttpMethod{HttpMethodOptions, nil} +} +func MakeHttpMethodTrace() HttpMethod { + return HttpMethod{HttpMethodTrace, nil} +} +func MakeHttpMethodPatch() HttpMethod { + return HttpMethod{HttpMethodPatch, nil} +} +func MakeHttpMethodCustom(value string) HttpMethod { + return HttpMethod{HttpMethodCustom, value} +} + +const ( + SystemVariableAgentType uint8 = 0 + SystemVariableAgentVersion uint8 = 1 +) + +type SystemVariable = uint8 + +type PathVariable struct { + VariableName string +} + +const ( + PathSegmentLiteral uint8 = 0 + PathSegmentSystemVariable uint8 = 1 + PathSegmentPathVariable uint8 = 2 + // only allowed as the last segment + PathSegmentRemainingPathVariable uint8 = 3 +) + +type PathSegment struct { + tag uint8 + value any +} + +func (self PathSegment) Tag() uint8 { + return self.tag +} + +func (self PathSegment) Literal() string { + if self.tag != PathSegmentLiteral { + panic("tag mismatch") + } + return self.value.(string) +} +func (self PathSegment) SystemVariable() SystemVariable { + if self.tag != PathSegmentSystemVariable { + panic("tag mismatch") + } + return self.value.(SystemVariable) +} +func (self PathSegment) PathVariable() PathVariable { + if self.tag != PathSegmentPathVariable { + panic("tag mismatch") + } + return self.value.(PathVariable) +} +func (self PathSegment) RemainingPathVariable() PathVariable { + if self.tag != PathSegmentRemainingPathVariable { + panic("tag mismatch") + } + return self.value.(PathVariable) +} + +func MakePathSegmentLiteral(value string) PathSegment { + return PathSegment{PathSegmentLiteral, value} +} +func MakePathSegmentSystemVariable(value SystemVariable) PathSegment { + return PathSegment{PathSegmentSystemVariable, value} +} +func MakePathSegmentPathVariable(value PathVariable) PathSegment { + return PathSegment{PathSegmentPathVariable, value} +} +func MakePathSegmentRemainingPathVariable(value PathVariable) PathSegment { + return PathSegment{PathSegmentRemainingPathVariable, value} +} + +type HeaderVariable struct { + HeaderName string + VariableName string +} + +type QueryVariable struct { + QueryParamName string + VariableName string +} + +type AuthDetails struct { + Required bool +} + +type HttpMountDetails struct { + PathPrefix []PathSegment + AuthDetails witTypes.Option[AuthDetails] + PhantomAgent bool + CorsOptions CorsOptions + WebhookSuffix []PathSegment +} + +type HttpEndpointDetails struct { + HttpMethod HttpMethod + PathSuffix []PathSegment + HeaderVars []HeaderVariable + QueryVars []QueryVariable + AuthDetails witTypes.Option[AuthDetails] + CorsOptions CorsOptions +} + +type AgentMethod struct { + Name string + Description string + HttpEndpoint []HttpEndpointDetails + PromptHint witTypes.Option[string] + InputSchema InputSchema + OutputSchema OutputSchema + ReadOnly witTypes.Option[ReadOnlyConfig] +} + +type OidcPrincipal struct { + Sub string + Issuer string + Email witTypes.Option[string] + Name witTypes.Option[string] + EmailVerified witTypes.Option[bool] + GivenName witTypes.Option[string] + FamilyName witTypes.Option[string] + Picture witTypes.Option[string] + PreferredUsername witTypes.Option[string] + Claims string +} + +type AgentPrincipal struct { + AgentId golem_core_types.AgentId +} + +type GolemUserPrincipal struct { + AccountId golem_core_types.AccountId +} + +const ( + PrincipalOidc uint8 = 0 + PrincipalAgent uint8 = 1 + PrincipalGolemUser uint8 = 2 + PrincipalAnonymous uint8 = 3 +) + +type Principal struct { + tag uint8 + value any +} + +func (self Principal) Tag() uint8 { + return self.tag +} + +func (self Principal) Oidc() OidcPrincipal { + if self.tag != PrincipalOidc { + panic("tag mismatch") + } + return self.value.(OidcPrincipal) +} +func (self Principal) Agent() AgentPrincipal { + if self.tag != PrincipalAgent { + panic("tag mismatch") + } + return self.value.(AgentPrincipal) +} +func (self Principal) GolemUser() GolemUserPrincipal { + if self.tag != PrincipalGolemUser { + panic("tag mismatch") + } + return self.value.(GolemUserPrincipal) +} + +func MakePrincipalOidc(value OidcPrincipal) Principal { + return Principal{PrincipalOidc, value} +} +func MakePrincipalAgent(value AgentPrincipal) Principal { + return Principal{PrincipalAgent, value} +} +func MakePrincipalGolemUser(value GolemUserPrincipal) Principal { + return Principal{PrincipalGolemUser, value} +} +func MakePrincipalAnonymous() Principal { + return Principal{PrincipalAnonymous, nil} +} + +type AgentConstructor struct { + Name witTypes.Option[string] + Description string + PromptHint witTypes.Option[string] + InputSchema InputSchema +} + +// Dependent agent type. All schema roots inside it resolve against its own +// `schema`, not against the parent agent-type's graph. +type AgentDependency struct { + TypeName string + Description witTypes.Option[string] + Schema golem_core_types.SchemaGraph + Constructor AgentConstructor + Methods []AgentMethod +} + +const ( + SnapshottingConfigDefault uint8 = 0 + // current default in the server + SnapshottingConfigPeriodic uint8 = 1 + SnapshottingConfigEveryNInvocation uint8 = 2 +) + +type SnapshottingConfig struct { + tag uint8 + value any +} + +func (self SnapshottingConfig) Tag() uint8 { + return self.tag +} + +func (self SnapshottingConfig) Periodic() uint64 { + if self.tag != SnapshottingConfigPeriodic { + panic("tag mismatch") + } + return self.value.(uint64) +} +func (self SnapshottingConfig) EveryNInvocation() uint16 { + if self.tag != SnapshottingConfigEveryNInvocation { + panic("tag mismatch") + } + return self.value.(uint16) +} + +func MakeSnapshottingConfigDefault() SnapshottingConfig { + return SnapshottingConfig{SnapshottingConfigDefault, nil} +} +func MakeSnapshottingConfigPeriodic(value uint64) SnapshottingConfig { + return SnapshottingConfig{SnapshottingConfigPeriodic, value} +} +func MakeSnapshottingConfigEveryNInvocation(value uint16) SnapshottingConfig { + return SnapshottingConfig{SnapshottingConfigEveryNInvocation, value} +} + +const ( + SnapshottingDisabled uint8 = 0 + SnapshottingEnabled uint8 = 1 +) + +type Snapshotting struct { + tag uint8 + value any +} + +func (self Snapshotting) Tag() uint8 { + return self.tag +} + +func (self Snapshotting) Enabled() SnapshottingConfig { + if self.tag != SnapshottingEnabled { + panic("tag mismatch") + } + return self.value.(SnapshottingConfig) +} + +func MakeSnapshottingDisabled() Snapshotting { + return Snapshotting{SnapshottingDisabled, nil} +} +func MakeSnapshottingEnabled(value SnapshottingConfig) Snapshotting { + return Snapshotting{SnapshottingEnabled, value} +} + +const ( + AgentConfigSourceLocal uint8 = 0 + AgentConfigSourceSecret uint8 = 1 +) + +type AgentConfigSource = uint8 + +type AgentConfigDeclaration struct { + Source AgentConfigSource + Path []string + // Index into the owning agent-type `schema` graph. + ValueType int32 +} + +// Full agent type declaration. +// +// `schema` is the per-agent type-node pool. Constructor / method / config +// schema roots below are `type-node-index` values into `schema`. The +// `schema.root` field is a structurally-required placeholder and is not the +// semantic root of the agent type. +type AgentType struct { + TypeName string + Description string + SourceLanguage string + Schema golem_core_types.SchemaGraph + Constructor AgentConstructor + Methods []AgentMethod + Dependencies []AgentDependency + Mode AgentMode + HttpMount witTypes.Option[HttpMountDetails] + Snapshotting Snapshotting + Config []AgentConfigDeclaration +} + +// Associates an agent type with a component that implements it +type RegisteredAgentType struct { + AgentType AgentType + ImplementedBy golem_core_types.ComponentId +} + +type TypedAgentConfigValue struct { + Path []string + Value golem_core_types.TypedSchemaValue +} + +const ( + AgentErrorInvalidInput uint8 = 0 + AgentErrorInvalidMethod uint8 = 1 + AgentErrorInvalidType uint8 = 2 + AgentErrorInvalidAgentId uint8 = 3 + AgentErrorCustomError uint8 = 4 +) + +// Agent-level failures +type AgentError struct { + tag uint8 + value any +} + +func (self AgentError) Tag() uint8 { + return self.tag +} + +func (self AgentError) InvalidInput() string { + if self.tag != AgentErrorInvalidInput { + panic("tag mismatch") + } + return self.value.(string) +} +func (self AgentError) InvalidMethod() string { + if self.tag != AgentErrorInvalidMethod { + panic("tag mismatch") + } + return self.value.(string) +} +func (self AgentError) InvalidType() string { + if self.tag != AgentErrorInvalidType { + panic("tag mismatch") + } + return self.value.(string) +} +func (self AgentError) InvalidAgentId() string { + if self.tag != AgentErrorInvalidAgentId { + panic("tag mismatch") + } + return self.value.(string) +} +func (self AgentError) CustomError() golem_core_types.TypedSchemaValue { + if self.tag != AgentErrorCustomError { + panic("tag mismatch") + } + return self.value.(golem_core_types.TypedSchemaValue) +} + +func MakeAgentErrorInvalidInput(value string) AgentError { + return AgentError{AgentErrorInvalidInput, value} +} +func MakeAgentErrorInvalidMethod(value string) AgentError { + return AgentError{AgentErrorInvalidMethod, value} +} +func MakeAgentErrorInvalidType(value string) AgentError { + return AgentError{AgentErrorInvalidType, value} +} +func MakeAgentErrorInvalidAgentId(value string) AgentError { + return AgentError{AgentErrorInvalidAgentId, value} +} +func MakeAgentErrorCustomError(value golem_core_types.TypedSchemaValue) AgentError { + return AgentError{AgentErrorCustomError, value} +} diff --git a/sdks/go/internal/wit/golem_agent_guest/empty.s b/sdks/go/internal/wit/golem_agent_guest/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_agent_guest/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go b/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go new file mode 100644 index 0000000000..45849d4651 --- /dev/null +++ b/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go @@ -0,0 +1,42 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_agent_guest + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" +) + +type SchemaValueTree = golem_core_types.SchemaValueTree +type AgentError = golem_agent_common.AgentError +type AgentType = golem_agent_common.AgentType +type Principal = golem_agent_common.Principal diff --git a/sdks/go/internal/wit/golem_agent_host/empty.s b/sdks/go/internal/wit/golem_agent_host/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_agent_host/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_agent_host/wit_bindings.go b/sdks/go/internal/wit/golem_agent_host/wit_bindings.go new file mode 100644 index 0000000000..7acddf5a38 --- /dev/null +++ b/sdks/go/internal/wit/golem_agent_host/wit_bindings.go @@ -0,0 +1,28546 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_agent_host + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + witAsync "go.bytecodealliance.org/pkg/wit/async" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type ComponentId = golem_core_types.ComponentId +type Uuid = golem_core_types.Uuid +type PromiseId = golem_core_types.PromiseId +type SchemaGraph = golem_core_types.SchemaGraph +type SchemaValueTree = golem_core_types.SchemaValueTree +type TypedSchemaValue = golem_core_types.TypedSchemaValue +type Datetime = wasi_clocks_0_3_0_system_clock.Instant +type AgentError = golem_agent_common.AgentError +type AgentType = golem_agent_common.AgentType +type RegisteredAgentType = golem_agent_common.RegisteredAgentType +type TypedAgentConfigValue = golem_agent_common.TypedAgentConfigValue + +const ( + // Protocol level error + RpcErrorProtocolError uint8 = 0 + // Access denied + RpcErrorDenied uint8 = 1 + // Target agent or function not found + RpcErrorNotFound uint8 = 2 + // Internal error on the remote side + RpcErrorRemoteInternalError uint8 = 3 + // The remote endpoint returned an agent-domain error + RpcErrorRemoteAgentError uint8 = 4 +) + +// Possible failures of an RPC call +type RpcError struct { + tag uint8 + value any +} + +func (self RpcError) Tag() uint8 { + return self.tag +} + +func (self RpcError) ProtocolError() string { + if self.tag != RpcErrorProtocolError { + panic("tag mismatch") + } + return self.value.(string) +} +func (self RpcError) Denied() string { + if self.tag != RpcErrorDenied { + panic("tag mismatch") + } + return self.value.(string) +} +func (self RpcError) NotFound() string { + if self.tag != RpcErrorNotFound { + panic("tag mismatch") + } + return self.value.(string) +} +func (self RpcError) RemoteInternalError() string { + if self.tag != RpcErrorRemoteInternalError { + panic("tag mismatch") + } + return self.value.(string) +} +func (self RpcError) RemoteAgentError() golem_agent_common.AgentError { + if self.tag != RpcErrorRemoteAgentError { + panic("tag mismatch") + } + return self.value.(golem_agent_common.AgentError) +} + +func MakeRpcErrorProtocolError(value string) RpcError { + return RpcError{RpcErrorProtocolError, value} +} +func MakeRpcErrorDenied(value string) RpcError { + return RpcError{RpcErrorDenied, value} +} +func MakeRpcErrorNotFound(value string) RpcError { + return RpcError{RpcErrorNotFound, value} +} +func MakeRpcErrorRemoteInternalError(value string) RpcError { + return RpcError{RpcErrorRemoteInternalError, value} +} +func MakeRpcErrorRemoteAgentError(value golem_agent_common.AgentError) RpcError { + return RpcError{RpcErrorRemoteAgentError, value} +} + +// Final identity allocated for one remote invocation. For an ephemeral +// target, `agent-id` contains the generated one-shot phantom ID. +type InvocationMetadata struct { + AgentId string + IdempotencyKey string +} + +// Result of an awaited invocation together with its final identity. +type InvocationResultWithMetadata struct { + Metadata InvocationMetadata + Result witTypes.Option[golem_core_types.SchemaValueTree] +} + +// Receipt returned when an invocation has been scheduled. +type ScheduledInvocationReceipt struct { + Metadata InvocationMetadata +} + +//go:wasmimport golem:agent/host@2.0.0 [resource-drop]wasm-rpc +func resourceDropWasmRpc(handle int32) + +// An RPC client for invoking remote agents +type WasmRpc struct { + handle *witRuntime.Handle +} + +func (self *WasmRpc) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *WasmRpc) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *WasmRpc) Handle() int32 { + return self.handle.Use() +} + +func (self *WasmRpc) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropWasmRpc(handle) + } +} + +func WasmRpcFromOwnHandle(handleValue int32) *WasmRpc { + handle := witRuntime.MakeHandle(handleValue) + value := &WasmRpc{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropWasmRpc(handleValue) + } + }, 0) + return value +} + +func WasmRpcFromBorrowHandle(handleValue int32) *WasmRpc { + handle := witRuntime.MakeHandle(handleValue) + return &WasmRpc{handle} +} + +//go:wasmimport golem:agent/host@2.0.0 [resource-drop]future-invoke-result +func resourceDropFutureInvokeResult(handle int32) + +// Represents an asynchronous invocation result +type FutureInvokeResult struct { + handle *witRuntime.Handle +} + +func (self *FutureInvokeResult) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *FutureInvokeResult) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *FutureInvokeResult) Handle() int32 { + return self.handle.Use() +} + +func (self *FutureInvokeResult) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropFutureInvokeResult(handle) + } +} + +func FutureInvokeResultFromOwnHandle(handleValue int32) *FutureInvokeResult { + handle := witRuntime.MakeHandle(handleValue) + value := &FutureInvokeResult{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropFutureInvokeResult(handleValue) + } + }, 0) + return value +} + +func FutureInvokeResultFromBorrowHandle(handleValue int32) *FutureInvokeResult { + handle := witRuntime.MakeHandle(handleValue) + return &FutureInvokeResult{handle} +} + +// Asynchronous invocation handle together with its final identity. +type AsyncInvocationWithMetadata struct { + Metadata InvocationMetadata + Future *FutureInvokeResult +} + +//go:wasmimport golem:agent/host@2.0.0 [resource-drop]cancellation-token +func resourceDropCancellationToken(handle int32) + +// Cancellation token for scheduled invocations +type CancellationToken struct { + handle *witRuntime.Handle +} + +func (self *CancellationToken) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *CancellationToken) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *CancellationToken) Handle() int32 { + return self.handle.Use() +} + +func (self *CancellationToken) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropCancellationToken(handle) + } +} + +func CancellationTokenFromOwnHandle(handleValue int32) *CancellationToken { + handle := witRuntime.MakeHandle(handleValue) + value := &CancellationToken{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropCancellationToken(handleValue) + } + }, 0) + return value +} + +func CancellationTokenFromBorrowHandle(handleValue int32) *CancellationToken { + handle := witRuntime.MakeHandle(handleValue) + return &CancellationToken{handle} +} + +// Receipt for a scheduled invocation that can still be cancelled. +type CancelableScheduledInvocationReceipt struct { + Metadata InvocationMetadata + CancellationToken *CancellationToken +} + +//go:wasmimport golem:agent/host@2.0.0 get-all-agent-types +func wasm_import_get_all_agent_types(arg0 uintptr) + +func GetAllAgentTypes() []golem_agent_common.RegisteredAgentType { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_get_all_agent_types(returnArea) + result502 := make([]golem_agent_common.RegisteredAgentType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(48+36*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + result174 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(56+22*4)) + var variant162 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant162 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant162 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option6 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option6 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option3 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option3 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option3 = witTypes.Some[golem_core_types.NumericBound](variant2) + default: + panic("unreachable") + } + var option5 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option5 = witTypes.None[string]() + case 1: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option5 = witTypes.Some[string](value4) + default: + panic("unreachable") + } + + option6 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option, option3, option5}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS8Type(option6) + + case 3: + var option13 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option13 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option8 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option8 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant7 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant7 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant7 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant7 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option8 = witTypes.Some[golem_core_types.NumericBound](variant7) + default: + panic("unreachable") + } + var option10 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option10 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant9 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant9 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant9 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant9 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option10 = witTypes.Some[golem_core_types.NumericBound](variant9) + default: + panic("unreachable") + } + var option12 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option12 = witTypes.None[string]() + case 1: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option12 = witTypes.Some[string](value11) + default: + panic("unreachable") + } + + option13 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option8, option10, option12}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS16Type(option13) + + case 4: + var option20 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option20 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option15 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option15 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant14 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant14 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant14 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant14 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option15 = witTypes.Some[golem_core_types.NumericBound](variant14) + default: + panic("unreachable") + } + var option17 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option17 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant16 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant16 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant16 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant16 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option17 = witTypes.Some[golem_core_types.NumericBound](variant16) + default: + panic("unreachable") + } + var option19 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option19 = witTypes.None[string]() + case 1: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option19 = witTypes.Some[string](value18) + default: + panic("unreachable") + } + + option20 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option15, option17, option19}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS32Type(option20) + + case 5: + var option27 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option27 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option22 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option22 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant21 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant21 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant21 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant21 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option22 = witTypes.Some[golem_core_types.NumericBound](variant21) + default: + panic("unreachable") + } + var option24 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option24 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant23 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant23 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant23 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant23 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option24 = witTypes.Some[golem_core_types.NumericBound](variant23) + default: + panic("unreachable") + } + var option26 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option26 = witTypes.None[string]() + case 1: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option26 = witTypes.Some[string](value25) + default: + panic("unreachable") + } + + option27 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option22, option24, option26}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS64Type(option27) + + case 6: + var option34 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option34 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option29 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option29 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant28 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant28 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant28 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant28 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option29 = witTypes.Some[golem_core_types.NumericBound](variant28) + default: + panic("unreachable") + } + var option31 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option31 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant30 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant30 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant30 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant30 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option31 = witTypes.Some[golem_core_types.NumericBound](variant30) + default: + panic("unreachable") + } + var option33 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option33 = witTypes.None[string]() + case 1: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option33 = witTypes.Some[string](value32) + default: + panic("unreachable") + } + + option34 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option29, option31, option33}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU8Type(option34) + + case 7: + var option41 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option36 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option36 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant35 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant35 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant35 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant35 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option36 = witTypes.Some[golem_core_types.NumericBound](variant35) + default: + panic("unreachable") + } + var option38 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option38 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant37 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant37 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant37 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant37 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option38 = witTypes.Some[golem_core_types.NumericBound](variant37) + default: + panic("unreachable") + } + var option40 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option40 = witTypes.None[string]() + case 1: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option40 = witTypes.Some[string](value39) + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option36, option38, option40}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU16Type(option41) + + case 8: + var option48 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option43 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option43 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant42 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant42 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant42 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant42 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option43 = witTypes.Some[golem_core_types.NumericBound](variant42) + default: + panic("unreachable") + } + var option45 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option45 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant44 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant44 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant44 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant44 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option45 = witTypes.Some[golem_core_types.NumericBound](variant44) + default: + panic("unreachable") + } + var option47 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option47 = witTypes.None[string]() + case 1: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option47 = witTypes.Some[string](value46) + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option43, option45, option47}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU32Type(option48) + + case 9: + var option55 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option50 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option50 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant49 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant49 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant49 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant49 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option50 = witTypes.Some[golem_core_types.NumericBound](variant49) + default: + panic("unreachable") + } + var option52 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option52 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant51 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant51 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant51 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant51 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option52 = witTypes.Some[golem_core_types.NumericBound](variant51) + default: + panic("unreachable") + } + var option54 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option54 = witTypes.None[string]() + case 1: + value53 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option54 = witTypes.Some[string](value53) + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option50, option52, option54}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU64Type(option55) + + case 10: + var option62 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option57 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option57 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant56 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant56 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant56 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant56 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option57 = witTypes.Some[golem_core_types.NumericBound](variant56) + default: + panic("unreachable") + } + var option59 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option59 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant58 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant58 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant58 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant58 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option59 = witTypes.Some[golem_core_types.NumericBound](variant58) + default: + panic("unreachable") + } + var option61 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option61 = witTypes.None[string]() + case 1: + value60 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option61 = witTypes.Some[string](value60) + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option57, option59, option61}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyF32Type(option62) + + case 11: + var option69 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option69 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option64 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option64 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant63 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant63 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant63 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant63 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option64 = witTypes.Some[golem_core_types.NumericBound](variant63) + default: + panic("unreachable") + } + var option66 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option66 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant65 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant65 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant65 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant65 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option66 = witTypes.Some[golem_core_types.NumericBound](variant65) + default: + panic("unreachable") + } + var option68 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option68 = witTypes.None[string]() + case 1: + value67 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option68 = witTypes.Some[string](value67) + default: + panic("unreachable") + } + + option69 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option64, option66, option68}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyF64Type(option69) + + case 12: + + variant162 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant162 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result81 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value70 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option72 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option72 = witTypes.None[string]() + case 1: + value71 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option72 = witTypes.Some[string](value71) + default: + panic("unreachable") + } + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value73 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value73) + } + + result75 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value74 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result75 = append(result75, value74) + } + + var option77 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option77 = witTypes.None[string]() + case 1: + value76 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option77 = witTypes.Some[string](value76) + default: + panic("unreachable") + } + var option80 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option80 = witTypes.None[golem_core_types.Role]() + case 1: + var variant79 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant79 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant79 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant79 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value78 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant79 = golem_core_types.MakeRoleOther(value78) + + default: + panic("unreachable") + } + + option80 = witTypes.Some[golem_core_types.Role](variant79) + default: + panic("unreachable") + } + + result81 = append(result81, golem_core_types.NamedFieldType{value70, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option72, result, result75, option77, option80}}) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyRecordType(result81) + + case 15: + result95 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value82 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option83 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option83 = witTypes.None[int32]() + case 1: + + option83 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option85 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option85 = witTypes.None[string]() + case 1: + value84 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option85 = witTypes.Some[string](value84) + default: + panic("unreachable") + } + result87 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value86 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result87 = append(result87, value86) + } + + result89 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value88 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result89 = append(result89, value88) + } + + var option91 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option91 = witTypes.None[string]() + case 1: + value90 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option91 = witTypes.Some[string](value90) + default: + panic("unreachable") + } + var option94 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option94 = witTypes.None[golem_core_types.Role]() + case 1: + var variant93 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant93 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant93 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant93 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value92 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant93 = golem_core_types.MakeRoleOther(value92) + + default: + panic("unreachable") + } + + option94 = witTypes.Some[golem_core_types.Role](variant93) + default: + panic("unreachable") + } + + result95 = append(result95, golem_core_types.VariantCaseType{value82, option83, golem_core_types.MetadataEnvelope{option85, result87, result89, option91, option94}}) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyVariantType(result95) + + case 16: + result97 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value96 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result97 = append(result97, value96) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyEnumType(result97) + + case 17: + result99 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value98 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result99 = append(result99, value98) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyFlagsType(result99) + + case 18: + result100 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result100 = append(result100, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyTupleType(result100) + + case 19: + + variant162 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant162 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant162 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant162 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option101 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option101 = witTypes.None[int32]() + case 1: + + option101 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option102 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option102 = witTypes.None[int32]() + case 1: + + option102 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option101, option102}) + + case 24: + var option105 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option105 = witTypes.None[[]string]() + case 1: + result104 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value103 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result104 = append(result104, value103) + } + + option105 = witTypes.Some[[]string](result104) + default: + panic("unreachable") + } + var option106 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option106 = witTypes.None[uint32]() + case 1: + + option106 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option107 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option107 = witTypes.None[uint32]() + case 1: + + option107 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option109 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option109 = witTypes.None[string]() + case 1: + value108 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option109 = witTypes.Some[string](value108) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option105, option106, option107, option109}) + + case 25: + var option112 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option112 = witTypes.None[[]string]() + case 1: + result111 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value110 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result111 = append(result111, value110) + } + + option112 = witTypes.Some[[]string](result111) + default: + panic("unreachable") + } + var option113 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option113 = witTypes.None[uint32]() + case 1: + + option113 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option114 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option114 = witTypes.None[uint32]() + case 1: + + option114 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option112, option113, option114}) + + case 26: + var option117 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option117 = witTypes.None[[]string]() + case 1: + result116 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value115 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result116 = append(result116, value115) + } + + option117 = witTypes.Some[[]string](result116) + default: + panic("unreachable") + } + var option120 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option120 = witTypes.None[[]string]() + case 1: + result119 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result119 = append(result119, value118) + } + + option120 = witTypes.Some[[]string](result119) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option117, option120}) + + case 27: + var option123 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option123 = witTypes.None[[]string]() + case 1: + result122 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value121 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result122 = append(result122, value121) + } + + option123 = witTypes.Some[[]string](result122) + default: + panic("unreachable") + } + var option126 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option126 = witTypes.None[[]string]() + case 1: + result125 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value124 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result125 = append(result125, value124) + } + + option126 = witTypes.Some[[]string](result125) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option123, option126}) + + case 28: + + variant162 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant162 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value127 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result129 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result129 = append(result129, value128) + } + + var option131 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option131 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option131 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value130}) + default: + panic("unreachable") + } + var option133 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option133 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option133 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value132}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value127, result129, option131, option133}) + + case 31: + result155 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value134 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant143 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRulePrefix(value135) + + case 1: + value136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleSuffix(value136) + + case 2: + value137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleContains(value137) + + case 3: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleRegex(value138) + + case 4: + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option141 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option141 = witTypes.None[string]() + case 1: + value140 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option141 = witTypes.Some[string](value140) + default: + panic("unreachable") + } + + variant143 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value139, option141}) + + case 5: + value142 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value142) + + default: + panic("unreachable") + } + var option145 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option145 = witTypes.None[string]() + case 1: + value144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option145 = witTypes.Some[string](value144) + default: + panic("unreachable") + } + result147 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result147 = append(result147, value146) + } + + result149 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result149 = append(result149, value148) + } + + var option151 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option151 = witTypes.None[string]() + case 1: + value150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option151 = witTypes.Some[string](value150) + default: + panic("unreachable") + } + var option154 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option154 = witTypes.None[golem_core_types.Role]() + case 1: + var variant153 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant153 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant153 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant153 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value152 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant153 = golem_core_types.MakeRoleOther(value152) + + default: + panic("unreachable") + } + + option154 = witTypes.Some[golem_core_types.Role](variant153) + default: + panic("unreachable") + } + + result155 = append(result155, golem_core_types.UnionBranch{value134, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant143, golem_core_types.MetadataEnvelope{option145, result147, result149, option151, option154}}) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result155}) + + case 32: + var option157 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option157 = witTypes.None[string]() + case 1: + value156 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option157 = witTypes.Some[string](value156) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option157}) + + case 33: + var option159 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option159 = witTypes.None[string]() + case 1: + value158 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option159 = witTypes.Some[string](value158) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option159}) + + case 34: + var option160 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option160 = witTypes.None[int32]() + case 1: + + option160 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyFutureType(option160) + + case 35: + var option161 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option161 = witTypes.None[int32]() + case 1: + + option161 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyStreamType(option161) + + default: + panic("unreachable") + } + var option164 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option164 = witTypes.None[string]() + case 1: + value163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option164 = witTypes.Some[string](value163) + default: + panic("unreachable") + } + result166 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value165 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result166 = append(result166, value165) + } + + result168 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result168 = append(result168, value167) + } + + var option170 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option170 = witTypes.None[string]() + case 1: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option170 = witTypes.Some[string](value169) + default: + panic("unreachable") + } + var option173 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option173 = witTypes.None[golem_core_types.Role]() + case 1: + var variant172 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant172 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant172 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant172 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant172 = golem_core_types.MakeRoleOther(value171) + + default: + panic("unreachable") + } + + option173 = witTypes.Some[golem_core_types.Role](variant172) + default: + panic("unreachable") + } + + result174 = append(result174, golem_core_types.SchemaTypeNode{variant162, golem_core_types.MetadataEnvelope{option164, result166, result168, option170, option173}}) + } + + result178 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(6*4)) + value175 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option177 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option177 = witTypes.None[string]() + case 1: + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option177 = witTypes.Some[string](value176) + default: + panic("unreachable") + } + + result178 = append(result178, golem_core_types.SchemaTypeDef{value175, option177, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + var option180 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) { + case 0: + + option180 = witTypes.None[string]() + case 1: + value179 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + + option180 = witTypes.Some[string](value179) + default: + panic("unreachable") + } + value181 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + var option183 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option183 = witTypes.None[string]() + case 1: + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option183 = witTypes.Some[string](value182) + default: + panic("unreachable") + } + var variant198 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + result197 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4))))), index*(8+16*4)) + value184 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant185 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant185 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant185 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option187 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option187 = witTypes.None[string]() + case 1: + value186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option187 = witTypes.Some[string](value186) + default: + panic("unreachable") + } + result189 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value188 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result189 = append(result189, value188) + } + + result191 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result191 = append(result191, value190) + } + + var option193 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option193 = witTypes.None[string]() + case 1: + value192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option193 = witTypes.Some[string](value192) + default: + panic("unreachable") + } + var option196 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option196 = witTypes.None[golem_core_types.Role]() + case 1: + var variant195 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant195 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant195 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant195 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant195 = golem_core_types.MakeRoleOther(value194) + + default: + panic("unreachable") + } + + option196 = witTypes.Some[golem_core_types.Role](variant195) + default: + panic("unreachable") + } + + result197 = append(result197, golem_agent_common.NamedField{value184, variant185, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option187, result189, result191, option193, option196}}) + } + + variant198 = golem_agent_common.MakeInputSchemaParameters(result197) + + default: + panic("unreachable") + } + result238 := make([]golem_agent_common.AgentMethod, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (23 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (23 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))))), index*(40+12*4)) + value199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value200 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + result217 := make([]golem_agent_common.HttpEndpointDetails, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))))), index*(12*4)) + var variant202 golem_agent_common.HttpMethod + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant202 = golem_agent_common.MakeHttpMethodGet() + + case 1: + + variant202 = golem_agent_common.MakeHttpMethodHead() + + case 2: + + variant202 = golem_agent_common.MakeHttpMethodPost() + + case 3: + + variant202 = golem_agent_common.MakeHttpMethodPut() + + case 4: + + variant202 = golem_agent_common.MakeHttpMethodDelete() + + case 5: + + variant202 = golem_agent_common.MakeHttpMethodConnect() + + case 6: + + variant202 = golem_agent_common.MakeHttpMethodOptions() + + case 7: + + variant202 = golem_agent_common.MakeHttpMethodTrace() + + case 8: + + variant202 = golem_agent_common.MakeHttpMethodPatch() + + case 9: + value201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant202 = golem_agent_common.MakeHttpMethodCustom(value201) + + default: + panic("unreachable") + } + result207 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))))), index*(3*4)) + var variant206 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant206 = golem_agent_common.MakePathSegmentLiteral(value203) + + case 1: + + variant206 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value204 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant206 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value204}) + + case 3: + value205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant206 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value205}) + + default: + panic("unreachable") + } + + result207 = append(result207, variant206) + } + + result210 := make([]golem_agent_common.HeaderVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))))), index*(4*4)) + value208 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result210 = append(result210, golem_agent_common.HeaderVariable{value208, value209}) + } + + result213 := make([]golem_agent_common.QueryVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(4*4)) + value211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value212 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result213 = append(result213, golem_agent_common.QueryVariable{value211, value212}) + } + + var option214 witTypes.Option[golem_agent_common.AuthDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option214 = witTypes.None[golem_agent_common.AuthDetails]() + case 1: + + option214 = witTypes.Some[golem_agent_common.AuthDetails](golem_agent_common.AuthDetails{(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4)))) != 0)}) + default: + panic("unreachable") + } + result216 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(2*4)) + value215 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result216 = append(result216, value215) + } + + result217 = append(result217, golem_agent_common.HttpEndpointDetails{variant202, result207, result210, result213, option214, golem_agent_common.CorsOptions{result216}}) + } + + var option219 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option219 = witTypes.None[string]() + case 1: + value218 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option219 = witTypes.Some[string](value218) + default: + panic("unreachable") + } + var variant234 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + result233 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(8+16*4)) + value220 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant221 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant221 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant221 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option223 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option223 = witTypes.None[string]() + case 1: + value222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option223 = witTypes.Some[string](value222) + default: + panic("unreachable") + } + result225 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result225 = append(result225, value224) + } + + result227 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result227 = append(result227, value226) + } + + var option229 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option229 = witTypes.None[string]() + case 1: + value228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option229 = witTypes.Some[string](value228) + default: + panic("unreachable") + } + var option232 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option232 = witTypes.None[golem_core_types.Role]() + case 1: + var variant231 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant231 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant231 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant231 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value230 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant231 = golem_core_types.MakeRoleOther(value230) + + default: + panic("unreachable") + } + + option232 = witTypes.Some[golem_core_types.Role](variant231) + default: + panic("unreachable") + } + + result233 = append(result233, golem_agent_common.NamedField{value220, variant221, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option223, result225, result227, option229, option232}}) + } + + variant234 = golem_agent_common.MakeInputSchemaParameters(result233) + + default: + panic("unreachable") + } + var variant235 golem_agent_common.OutputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) { + case 0: + + variant235 = golem_agent_common.MakeOutputSchemaUnit() + + case 1: + + variant235 = golem_agent_common.MakeOutputSchemaSingle(*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4)))) + + default: + panic("unreachable") + } + var option237 witTypes.Option[golem_agent_common.ReadOnlyConfig] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option237 = witTypes.None[golem_agent_common.ReadOnlyConfig]() + case 1: + var variant236 golem_agent_common.CachePolicy + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4)))) { + case 0: + + variant236 = golem_agent_common.MakeCachePolicyNoCache() + + case 1: + + variant236 = golem_agent_common.MakeCachePolicyUntilWrite() + + case 2: + + variant236 = golem_agent_common.MakeCachePolicyTtl(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))))) + + default: + panic("unreachable") + } + + option237 = witTypes.Some[golem_agent_common.ReadOnlyConfig](golem_agent_common.ReadOnlyConfig{variant236, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))) != 0)}) + default: + panic("unreachable") + } + + result238 = append(result238, golem_agent_common.AgentMethod{value199, value200, result217, option219, variant234, variant235, option237}) + } + + result482 := make([]golem_agent_common.AgentDependency, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (25 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (25 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 * 4))))), index*(23*4)) + value239 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option241 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option241 = witTypes.None[string]() + case 1: + value240 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option241 = witTypes.Some[string](value240) + default: + panic("unreachable") + } + result417 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))))), index*(56+22*4)) + var variant405 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant405 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant405 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option248 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option248 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option243 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option243 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant242 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant242 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant242 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant242 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option243 = witTypes.Some[golem_core_types.NumericBound](variant242) + default: + panic("unreachable") + } + var option245 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option245 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant244 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant244 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant244 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant244 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option245 = witTypes.Some[golem_core_types.NumericBound](variant244) + default: + panic("unreachable") + } + var option247 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option247 = witTypes.None[string]() + case 1: + value246 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option247 = witTypes.Some[string](value246) + default: + panic("unreachable") + } + + option248 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option243, option245, option247}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS8Type(option248) + + case 3: + var option255 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option255 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option250 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option250 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant249 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant249 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant249 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant249 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option250 = witTypes.Some[golem_core_types.NumericBound](variant249) + default: + panic("unreachable") + } + var option252 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option252 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant251 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant251 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant251 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant251 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option252 = witTypes.Some[golem_core_types.NumericBound](variant251) + default: + panic("unreachable") + } + var option254 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option254 = witTypes.None[string]() + case 1: + value253 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option254 = witTypes.Some[string](value253) + default: + panic("unreachable") + } + + option255 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option250, option252, option254}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS16Type(option255) + + case 4: + var option262 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option262 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option257 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option257 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant256 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant256 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant256 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant256 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option257 = witTypes.Some[golem_core_types.NumericBound](variant256) + default: + panic("unreachable") + } + var option259 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option259 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant258 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant258 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant258 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant258 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option259 = witTypes.Some[golem_core_types.NumericBound](variant258) + default: + panic("unreachable") + } + var option261 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option261 = witTypes.None[string]() + case 1: + value260 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option261 = witTypes.Some[string](value260) + default: + panic("unreachable") + } + + option262 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option257, option259, option261}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS32Type(option262) + + case 5: + var option269 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option269 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option264 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option264 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant263 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant263 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant263 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant263 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option264 = witTypes.Some[golem_core_types.NumericBound](variant263) + default: + panic("unreachable") + } + var option266 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option266 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant265 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant265 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant265 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant265 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option266 = witTypes.Some[golem_core_types.NumericBound](variant265) + default: + panic("unreachable") + } + var option268 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option268 = witTypes.None[string]() + case 1: + value267 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option268 = witTypes.Some[string](value267) + default: + panic("unreachable") + } + + option269 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option264, option266, option268}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS64Type(option269) + + case 6: + var option276 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option276 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option271 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option271 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant270 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant270 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant270 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant270 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option271 = witTypes.Some[golem_core_types.NumericBound](variant270) + default: + panic("unreachable") + } + var option273 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option273 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant272 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant272 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant272 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant272 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option273 = witTypes.Some[golem_core_types.NumericBound](variant272) + default: + panic("unreachable") + } + var option275 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option275 = witTypes.None[string]() + case 1: + value274 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option275 = witTypes.Some[string](value274) + default: + panic("unreachable") + } + + option276 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option271, option273, option275}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU8Type(option276) + + case 7: + var option283 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option283 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option278 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option278 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant277 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant277 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant277 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant277 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option278 = witTypes.Some[golem_core_types.NumericBound](variant277) + default: + panic("unreachable") + } + var option280 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option280 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant279 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant279 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant279 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant279 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option280 = witTypes.Some[golem_core_types.NumericBound](variant279) + default: + panic("unreachable") + } + var option282 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option282 = witTypes.None[string]() + case 1: + value281 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option282 = witTypes.Some[string](value281) + default: + panic("unreachable") + } + + option283 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option278, option280, option282}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU16Type(option283) + + case 8: + var option290 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option290 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option285 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option285 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant284 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant284 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant284 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant284 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option285 = witTypes.Some[golem_core_types.NumericBound](variant284) + default: + panic("unreachable") + } + var option287 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option287 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant286 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant286 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant286 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant286 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option287 = witTypes.Some[golem_core_types.NumericBound](variant286) + default: + panic("unreachable") + } + var option289 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option289 = witTypes.None[string]() + case 1: + value288 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option289 = witTypes.Some[string](value288) + default: + panic("unreachable") + } + + option290 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option285, option287, option289}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU32Type(option290) + + case 9: + var option297 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option297 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option292 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option292 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant291 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant291 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant291 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant291 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option292 = witTypes.Some[golem_core_types.NumericBound](variant291) + default: + panic("unreachable") + } + var option294 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option294 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant293 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant293 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant293 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant293 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option294 = witTypes.Some[golem_core_types.NumericBound](variant293) + default: + panic("unreachable") + } + var option296 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option296 = witTypes.None[string]() + case 1: + value295 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option296 = witTypes.Some[string](value295) + default: + panic("unreachable") + } + + option297 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option292, option294, option296}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU64Type(option297) + + case 10: + var option304 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option304 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option299 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option299 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant298 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant298 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant298 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant298 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option299 = witTypes.Some[golem_core_types.NumericBound](variant298) + default: + panic("unreachable") + } + var option301 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option301 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant300 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant300 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant300 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant300 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option301 = witTypes.Some[golem_core_types.NumericBound](variant300) + default: + panic("unreachable") + } + var option303 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option303 = witTypes.None[string]() + case 1: + value302 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option303 = witTypes.Some[string](value302) + default: + panic("unreachable") + } + + option304 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option299, option301, option303}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyF32Type(option304) + + case 11: + var option311 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option311 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option306 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option306 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant305 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant305 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant305 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant305 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option306 = witTypes.Some[golem_core_types.NumericBound](variant305) + default: + panic("unreachable") + } + var option308 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option308 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant307 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant307 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant307 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant307 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option308 = witTypes.Some[golem_core_types.NumericBound](variant307) + default: + panic("unreachable") + } + var option310 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option310 = witTypes.None[string]() + case 1: + value309 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option310 = witTypes.Some[string](value309) + default: + panic("unreachable") + } + + option311 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option306, option308, option310}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyF64Type(option311) + + case 12: + + variant405 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant405 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result324 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value312 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option314 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option314 = witTypes.None[string]() + case 1: + value313 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option314 = witTypes.Some[string](value313) + default: + panic("unreachable") + } + result316 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value315 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result316 = append(result316, value315) + } + + result318 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value317 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result318 = append(result318, value317) + } + + var option320 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option320 = witTypes.None[string]() + case 1: + value319 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option320 = witTypes.Some[string](value319) + default: + panic("unreachable") + } + var option323 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option323 = witTypes.None[golem_core_types.Role]() + case 1: + var variant322 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant322 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant322 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant322 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value321 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant322 = golem_core_types.MakeRoleOther(value321) + + default: + panic("unreachable") + } + + option323 = witTypes.Some[golem_core_types.Role](variant322) + default: + panic("unreachable") + } + + result324 = append(result324, golem_core_types.NamedFieldType{value312, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option314, result316, result318, option320, option323}}) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyRecordType(result324) + + case 15: + result338 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value325 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option326 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option326 = witTypes.None[int32]() + case 1: + + option326 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option328 = witTypes.None[string]() + case 1: + value327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option328 = witTypes.Some[string](value327) + default: + panic("unreachable") + } + result330 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value329 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result330 = append(result330, value329) + } + + result332 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value331 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result332 = append(result332, value331) + } + + var option334 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option334 = witTypes.None[string]() + case 1: + value333 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option334 = witTypes.Some[string](value333) + default: + panic("unreachable") + } + var option337 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option337 = witTypes.None[golem_core_types.Role]() + case 1: + var variant336 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant336 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant336 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant336 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value335 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant336 = golem_core_types.MakeRoleOther(value335) + + default: + panic("unreachable") + } + + option337 = witTypes.Some[golem_core_types.Role](variant336) + default: + panic("unreachable") + } + + result338 = append(result338, golem_core_types.VariantCaseType{value325, option326, golem_core_types.MetadataEnvelope{option328, result330, result332, option334, option337}}) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyVariantType(result338) + + case 16: + result340 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value339 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result340 = append(result340, value339) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyEnumType(result340) + + case 17: + result342 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value341 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result342 = append(result342, value341) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyFlagsType(result342) + + case 18: + result343 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result343 = append(result343, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyTupleType(result343) + + case 19: + + variant405 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant405 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant405 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant405 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option344 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option344 = witTypes.None[int32]() + case 1: + + option344 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option345 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option345 = witTypes.None[int32]() + case 1: + + option345 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option344, option345}) + + case 24: + var option348 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option348 = witTypes.None[[]string]() + case 1: + result347 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result347 = append(result347, value346) + } + + option348 = witTypes.Some[[]string](result347) + default: + panic("unreachable") + } + var option349 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option349 = witTypes.None[uint32]() + case 1: + + option349 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option350 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option350 = witTypes.None[uint32]() + case 1: + + option350 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option352 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option352 = witTypes.None[string]() + case 1: + value351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option352 = witTypes.Some[string](value351) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option348, option349, option350, option352}) + + case 25: + var option355 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option355 = witTypes.None[[]string]() + case 1: + result354 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value353 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result354 = append(result354, value353) + } + + option355 = witTypes.Some[[]string](result354) + default: + panic("unreachable") + } + var option356 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option356 = witTypes.None[uint32]() + case 1: + + option356 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option357 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option357 = witTypes.None[uint32]() + case 1: + + option357 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option355, option356, option357}) + + case 26: + var option360 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option360 = witTypes.None[[]string]() + case 1: + result359 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result359 = append(result359, value358) + } + + option360 = witTypes.Some[[]string](result359) + default: + panic("unreachable") + } + var option363 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option363 = witTypes.None[[]string]() + case 1: + result362 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value361 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result362 = append(result362, value361) + } + + option363 = witTypes.Some[[]string](result362) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option360, option363}) + + case 27: + var option366 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option366 = witTypes.None[[]string]() + case 1: + result365 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value364 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result365 = append(result365, value364) + } + + option366 = witTypes.Some[[]string](result365) + default: + panic("unreachable") + } + var option369 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option369 = witTypes.None[[]string]() + case 1: + result368 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value367 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result368 = append(result368, value367) + } + + option369 = witTypes.Some[[]string](result368) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option366, option369}) + + case 28: + + variant405 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant405 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value370 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result372 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result372 = append(result372, value371) + } + + var option374 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option374 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value373 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option374 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value373}) + default: + panic("unreachable") + } + var option376 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option376 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value375 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option376 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value375}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value370, result372, option374, option376}) + + case 31: + result398 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value377 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant386 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRulePrefix(value378) + + case 1: + value379 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleSuffix(value379) + + case 2: + value380 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleContains(value380) + + case 3: + value381 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleRegex(value381) + + case 4: + value382 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option384 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option384 = witTypes.None[string]() + case 1: + value383 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option384 = witTypes.Some[string](value383) + default: + panic("unreachable") + } + + variant386 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value382, option384}) + + case 5: + value385 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value385) + + default: + panic("unreachable") + } + var option388 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option388 = witTypes.None[string]() + case 1: + value387 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option388 = witTypes.Some[string](value387) + default: + panic("unreachable") + } + result390 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value389 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result390 = append(result390, value389) + } + + result392 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value391 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result392 = append(result392, value391) + } + + var option394 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option394 = witTypes.None[string]() + case 1: + value393 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option394 = witTypes.Some[string](value393) + default: + panic("unreachable") + } + var option397 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option397 = witTypes.None[golem_core_types.Role]() + case 1: + var variant396 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant396 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant396 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant396 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value395 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant396 = golem_core_types.MakeRoleOther(value395) + + default: + panic("unreachable") + } + + option397 = witTypes.Some[golem_core_types.Role](variant396) + default: + panic("unreachable") + } + + result398 = append(result398, golem_core_types.UnionBranch{value377, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant386, golem_core_types.MetadataEnvelope{option388, result390, result392, option394, option397}}) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result398}) + + case 32: + var option400 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option400 = witTypes.None[string]() + case 1: + value399 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option400 = witTypes.Some[string](value399) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option400}) + + case 33: + var option402 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option402 = witTypes.None[string]() + case 1: + value401 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option402 = witTypes.Some[string](value401) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option402}) + + case 34: + var option403 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option403 = witTypes.None[int32]() + case 1: + + option403 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyFutureType(option403) + + case 35: + var option404 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option404 = witTypes.None[int32]() + case 1: + + option404 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyStreamType(option404) + + default: + panic("unreachable") + } + var option407 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option407 = witTypes.None[string]() + case 1: + value406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option407 = witTypes.Some[string](value406) + default: + panic("unreachable") + } + result409 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value408 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result409 = append(result409, value408) + } + + result411 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result411 = append(result411, value410) + } + + var option413 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option413 = witTypes.None[string]() + case 1: + value412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option413 = witTypes.Some[string](value412) + default: + panic("unreachable") + } + var option416 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option416 = witTypes.None[golem_core_types.Role]() + case 1: + var variant415 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant415 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant415 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant415 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant415 = golem_core_types.MakeRoleOther(value414) + + default: + panic("unreachable") + } + + option416 = witTypes.Some[golem_core_types.Role](variant415) + default: + panic("unreachable") + } + + result417 = append(result417, golem_core_types.SchemaTypeNode{variant405, golem_core_types.MetadataEnvelope{option407, result409, result411, option413, option416}}) + } + + result421 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(6*4)) + value418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option420 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option420 = witTypes.None[string]() + case 1: + value419 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option420 = witTypes.Some[string](value419) + default: + panic("unreachable") + } + + result421 = append(result421, golem_core_types.SchemaTypeDef{value418, option420, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + var option423 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option423 = witTypes.None[string]() + case 1: + value422 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option423 = witTypes.Some[string](value422) + default: + panic("unreachable") + } + value424 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) + var option426 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) { + case 0: + + option426 = witTypes.None[string]() + case 1: + value425 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))) + + option426 = witTypes.Some[string](value425) + default: + panic("unreachable") + } + var variant441 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) { + case 0: + result440 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4))))), index*(8+16*4)) + value427 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant428 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant428 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant428 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option430 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option430 = witTypes.None[string]() + case 1: + value429 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option430 = witTypes.Some[string](value429) + default: + panic("unreachable") + } + result432 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value431 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result432 = append(result432, value431) + } + + result434 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value433 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result434 = append(result434, value433) + } + + var option436 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option436 = witTypes.None[string]() + case 1: + value435 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option436 = witTypes.Some[string](value435) + default: + panic("unreachable") + } + var option439 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option439 = witTypes.None[golem_core_types.Role]() + case 1: + var variant438 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant438 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant438 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant438 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant438 = golem_core_types.MakeRoleOther(value437) + + default: + panic("unreachable") + } + + option439 = witTypes.Some[golem_core_types.Role](variant438) + default: + panic("unreachable") + } + + result440 = append(result440, golem_agent_common.NamedField{value427, variant428, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option430, result432, result434, option436, option439}}) + } + + variant441 = golem_agent_common.MakeInputSchemaParameters(result440) + + default: + panic("unreachable") + } + result481 := make([]golem_agent_common.AgentMethod, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))))), index*(40+12*4)) + value442 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value443 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + result460 := make([]golem_agent_common.HttpEndpointDetails, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))))), index*(12*4)) + var variant445 golem_agent_common.HttpMethod + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant445 = golem_agent_common.MakeHttpMethodGet() + + case 1: + + variant445 = golem_agent_common.MakeHttpMethodHead() + + case 2: + + variant445 = golem_agent_common.MakeHttpMethodPost() + + case 3: + + variant445 = golem_agent_common.MakeHttpMethodPut() + + case 4: + + variant445 = golem_agent_common.MakeHttpMethodDelete() + + case 5: + + variant445 = golem_agent_common.MakeHttpMethodConnect() + + case 6: + + variant445 = golem_agent_common.MakeHttpMethodOptions() + + case 7: + + variant445 = golem_agent_common.MakeHttpMethodTrace() + + case 8: + + variant445 = golem_agent_common.MakeHttpMethodPatch() + + case 9: + value444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant445 = golem_agent_common.MakeHttpMethodCustom(value444) + + default: + panic("unreachable") + } + result450 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))))), index*(3*4)) + var variant449 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value446 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant449 = golem_agent_common.MakePathSegmentLiteral(value446) + + case 1: + + variant449 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value447 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant449 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value447}) + + case 3: + value448 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant449 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value448}) + + default: + panic("unreachable") + } + + result450 = append(result450, variant449) + } + + result453 := make([]golem_agent_common.HeaderVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))))), index*(4*4)) + value451 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value452 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result453 = append(result453, golem_agent_common.HeaderVariable{value451, value452}) + } + + result456 := make([]golem_agent_common.QueryVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(4*4)) + value454 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value455 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result456 = append(result456, golem_agent_common.QueryVariable{value454, value455}) + } + + var option457 witTypes.Option[golem_agent_common.AuthDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option457 = witTypes.None[golem_agent_common.AuthDetails]() + case 1: + + option457 = witTypes.Some[golem_agent_common.AuthDetails](golem_agent_common.AuthDetails{(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4)))) != 0)}) + default: + panic("unreachable") + } + result459 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(2*4)) + value458 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result459 = append(result459, value458) + } + + result460 = append(result460, golem_agent_common.HttpEndpointDetails{variant445, result450, result453, result456, option457, golem_agent_common.CorsOptions{result459}}) + } + + var option462 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option462 = witTypes.None[string]() + case 1: + value461 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option462 = witTypes.Some[string](value461) + default: + panic("unreachable") + } + var variant477 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + result476 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(8+16*4)) + value463 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant464 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant464 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant464 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option466 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option466 = witTypes.None[string]() + case 1: + value465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option466 = witTypes.Some[string](value465) + default: + panic("unreachable") + } + result468 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value467 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result468 = append(result468, value467) + } + + result470 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value469 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result470 = append(result470, value469) + } + + var option472 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option472 = witTypes.None[string]() + case 1: + value471 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option472 = witTypes.Some[string](value471) + default: + panic("unreachable") + } + var option475 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option475 = witTypes.None[golem_core_types.Role]() + case 1: + var variant474 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant474 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant474 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant474 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value473 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant474 = golem_core_types.MakeRoleOther(value473) + + default: + panic("unreachable") + } + + option475 = witTypes.Some[golem_core_types.Role](variant474) + default: + panic("unreachable") + } + + result476 = append(result476, golem_agent_common.NamedField{value463, variant464, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option466, result468, result470, option472, option475}}) + } + + variant477 = golem_agent_common.MakeInputSchemaParameters(result476) + + default: + panic("unreachable") + } + var variant478 golem_agent_common.OutputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) { + case 0: + + variant478 = golem_agent_common.MakeOutputSchemaUnit() + + case 1: + + variant478 = golem_agent_common.MakeOutputSchemaSingle(*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4)))) + + default: + panic("unreachable") + } + var option480 witTypes.Option[golem_agent_common.ReadOnlyConfig] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option480 = witTypes.None[golem_agent_common.ReadOnlyConfig]() + case 1: + var variant479 golem_agent_common.CachePolicy + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4)))) { + case 0: + + variant479 = golem_agent_common.MakeCachePolicyNoCache() + + case 1: + + variant479 = golem_agent_common.MakeCachePolicyUntilWrite() + + case 2: + + variant479 = golem_agent_common.MakeCachePolicyTtl(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))))) + + default: + panic("unreachable") + } + + option480 = witTypes.Some[golem_agent_common.ReadOnlyConfig](golem_agent_common.ReadOnlyConfig{variant479, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))) != 0)}) + default: + panic("unreachable") + } + + result481 = append(result481, golem_agent_common.AgentMethod{value442, value443, result460, option462, variant477, variant478, option480}) + } + + result482 = append(result482, golem_agent_common.AgentDependency{value239, option241, golem_core_types.SchemaGraph{result417, result421, *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))}, golem_agent_common.AgentConstructor{option423, value424, option426, variant441}, result481}) + } + + var option496 witTypes.Option[golem_agent_common.HttpMountDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (27 * 4)))) { + case 0: + + option496 = witTypes.None[golem_agent_common.HttpMountDetails]() + case 1: + result487 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (29 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (29 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (28 * 4))))), index*(3*4)) + var variant486 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value483 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant486 = golem_agent_common.MakePathSegmentLiteral(value483) + + case 1: + + variant486 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value484 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant486 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value484}) + + case 3: + value485 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant486 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value485}) + + default: + panic("unreachable") + } + + result487 = append(result487, variant486) + } + + var option488 witTypes.Option[golem_agent_common.AuthDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (30 * 4)))) { + case 0: + + option488 = witTypes.None[golem_agent_common.AuthDetails]() + case 1: + + option488 = witTypes.Some[golem_agent_common.AuthDetails](golem_agent_common.AuthDetails{(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 30*4)))) != 0)}) + default: + panic("unreachable") + } + result490 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (31 * 4))))), index*(2*4)) + value489 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result490 = append(result490, value489) + } + + result495 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (34 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (34 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (33 * 4))))), index*(3*4)) + var variant494 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value491 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant494 = golem_agent_common.MakePathSegmentLiteral(value491) + + case 1: + + variant494 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value492 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant494 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value492}) + + case 3: + value493 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant494 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value493}) + + default: + panic("unreachable") + } + + result495 = append(result495, variant494) + } + + option496 = witTypes.Some[golem_agent_common.HttpMountDetails](golem_agent_common.HttpMountDetails{result487, option488, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 + 30*4)))) != 0), golem_agent_common.CorsOptions{result490}, result495}) + default: + panic("unreachable") + } + var variant498 golem_agent_common.Snapshotting + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 34*4)))) { + case 0: + + variant498 = golem_agent_common.MakeSnapshottingDisabled() + + case 1: + var variant497 golem_agent_common.SnapshottingConfig + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 34*4)))) { + case 0: + + variant497 = golem_agent_common.MakeSnapshottingConfigDefault() + + case 1: + + variant497 = golem_agent_common.MakeSnapshottingConfigPeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 34*4))))) + + case 2: + + variant497 = golem_agent_common.MakeSnapshottingConfigEveryNInvocation(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 34*4)))))) + + default: + panic("unreachable") + } + + variant498 = golem_agent_common.MakeSnapshottingEnabled(variant497) + + default: + panic("unreachable") + } + result501 := make([]golem_agent_common.AgentConfigDeclaration, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 35*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 35*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 34*4))))), index*(4*4)) + result500 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)))), index*(2*4)) + value499 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result500 = append(result500, value499) + } + + result501 = append(result501, golem_agent_common.AgentConfigDeclaration{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), result500, *(*int32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))}) + } + + result502 = append(result502, golem_agent_common.RegisteredAgentType{golem_agent_common.AgentType{value, value0, value1, golem_core_types.SchemaGraph{result174, result178, *(*int32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))}, golem_agent_common.AgentConstructor{option180, value181, option183, variant198}, result238, result482, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (26 * 4))))), option496, variant498, result501}, golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (32 + 36*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 36*4))))}}}) + } + + result503 := result502 + return result503 + +} + +//go:wasmimport golem:agent/host@2.0.0 get-agent-type +func wasm_import_get_agent_type(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func GetAgentType(agentTypeName string) witTypes.Option[golem_agent_common.RegisteredAgentType] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (56 + 36*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(agentTypeName)) + pinner.Pin(utf8) + wasm_import_get_agent_type(uintptr(utf8), uint32(len(agentTypeName)), returnArea) + var option502 witTypes.Option[golem_agent_common.RegisteredAgentType] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option502 = witTypes.None[golem_agent_common.RegisteredAgentType]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4)))) + result174 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 6*4))))), index*(56+22*4)) + var variant162 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant162 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant162 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option6 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option6 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option3 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option3 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option3 = witTypes.Some[golem_core_types.NumericBound](variant2) + default: + panic("unreachable") + } + var option5 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option5 = witTypes.None[string]() + case 1: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option5 = witTypes.Some[string](value4) + default: + panic("unreachable") + } + + option6 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option, option3, option5}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS8Type(option6) + + case 3: + var option13 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option13 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option8 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option8 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant7 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant7 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant7 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant7 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option8 = witTypes.Some[golem_core_types.NumericBound](variant7) + default: + panic("unreachable") + } + var option10 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option10 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant9 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant9 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant9 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant9 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option10 = witTypes.Some[golem_core_types.NumericBound](variant9) + default: + panic("unreachable") + } + var option12 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option12 = witTypes.None[string]() + case 1: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option12 = witTypes.Some[string](value11) + default: + panic("unreachable") + } + + option13 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option8, option10, option12}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS16Type(option13) + + case 4: + var option20 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option20 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option15 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option15 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant14 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant14 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant14 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant14 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option15 = witTypes.Some[golem_core_types.NumericBound](variant14) + default: + panic("unreachable") + } + var option17 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option17 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant16 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant16 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant16 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant16 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option17 = witTypes.Some[golem_core_types.NumericBound](variant16) + default: + panic("unreachable") + } + var option19 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option19 = witTypes.None[string]() + case 1: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option19 = witTypes.Some[string](value18) + default: + panic("unreachable") + } + + option20 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option15, option17, option19}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS32Type(option20) + + case 5: + var option27 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option27 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option22 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option22 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant21 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant21 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant21 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant21 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option22 = witTypes.Some[golem_core_types.NumericBound](variant21) + default: + panic("unreachable") + } + var option24 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option24 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant23 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant23 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant23 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant23 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option24 = witTypes.Some[golem_core_types.NumericBound](variant23) + default: + panic("unreachable") + } + var option26 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option26 = witTypes.None[string]() + case 1: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option26 = witTypes.Some[string](value25) + default: + panic("unreachable") + } + + option27 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option22, option24, option26}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyS64Type(option27) + + case 6: + var option34 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option34 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option29 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option29 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant28 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant28 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant28 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant28 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option29 = witTypes.Some[golem_core_types.NumericBound](variant28) + default: + panic("unreachable") + } + var option31 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option31 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant30 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant30 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant30 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant30 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option31 = witTypes.Some[golem_core_types.NumericBound](variant30) + default: + panic("unreachable") + } + var option33 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option33 = witTypes.None[string]() + case 1: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option33 = witTypes.Some[string](value32) + default: + panic("unreachable") + } + + option34 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option29, option31, option33}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU8Type(option34) + + case 7: + var option41 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option36 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option36 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant35 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant35 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant35 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant35 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option36 = witTypes.Some[golem_core_types.NumericBound](variant35) + default: + panic("unreachable") + } + var option38 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option38 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant37 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant37 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant37 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant37 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option38 = witTypes.Some[golem_core_types.NumericBound](variant37) + default: + panic("unreachable") + } + var option40 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option40 = witTypes.None[string]() + case 1: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option40 = witTypes.Some[string](value39) + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option36, option38, option40}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU16Type(option41) + + case 8: + var option48 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option43 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option43 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant42 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant42 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant42 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant42 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option43 = witTypes.Some[golem_core_types.NumericBound](variant42) + default: + panic("unreachable") + } + var option45 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option45 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant44 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant44 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant44 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant44 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option45 = witTypes.Some[golem_core_types.NumericBound](variant44) + default: + panic("unreachable") + } + var option47 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option47 = witTypes.None[string]() + case 1: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option47 = witTypes.Some[string](value46) + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option43, option45, option47}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU32Type(option48) + + case 9: + var option55 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option50 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option50 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant49 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant49 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant49 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant49 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option50 = witTypes.Some[golem_core_types.NumericBound](variant49) + default: + panic("unreachable") + } + var option52 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option52 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant51 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant51 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant51 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant51 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option52 = witTypes.Some[golem_core_types.NumericBound](variant51) + default: + panic("unreachable") + } + var option54 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option54 = witTypes.None[string]() + case 1: + value53 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option54 = witTypes.Some[string](value53) + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option50, option52, option54}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyU64Type(option55) + + case 10: + var option62 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option57 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option57 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant56 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant56 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant56 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant56 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option57 = witTypes.Some[golem_core_types.NumericBound](variant56) + default: + panic("unreachable") + } + var option59 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option59 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant58 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant58 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant58 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant58 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option59 = witTypes.Some[golem_core_types.NumericBound](variant58) + default: + panic("unreachable") + } + var option61 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option61 = witTypes.None[string]() + case 1: + value60 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option61 = witTypes.Some[string](value60) + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option57, option59, option61}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyF32Type(option62) + + case 11: + var option69 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option69 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option64 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option64 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant63 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant63 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant63 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant63 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option64 = witTypes.Some[golem_core_types.NumericBound](variant63) + default: + panic("unreachable") + } + var option66 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option66 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant65 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant65 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant65 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant65 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option66 = witTypes.Some[golem_core_types.NumericBound](variant65) + default: + panic("unreachable") + } + var option68 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option68 = witTypes.None[string]() + case 1: + value67 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option68 = witTypes.Some[string](value67) + default: + panic("unreachable") + } + + option69 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option64, option66, option68}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyF64Type(option69) + + case 12: + + variant162 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant162 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result81 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value70 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option72 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option72 = witTypes.None[string]() + case 1: + value71 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option72 = witTypes.Some[string](value71) + default: + panic("unreachable") + } + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value73 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value73) + } + + result75 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value74 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result75 = append(result75, value74) + } + + var option77 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option77 = witTypes.None[string]() + case 1: + value76 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option77 = witTypes.Some[string](value76) + default: + panic("unreachable") + } + var option80 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option80 = witTypes.None[golem_core_types.Role]() + case 1: + var variant79 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant79 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant79 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant79 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value78 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant79 = golem_core_types.MakeRoleOther(value78) + + default: + panic("unreachable") + } + + option80 = witTypes.Some[golem_core_types.Role](variant79) + default: + panic("unreachable") + } + + result81 = append(result81, golem_core_types.NamedFieldType{value70, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option72, result, result75, option77, option80}}) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyRecordType(result81) + + case 15: + result95 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value82 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option83 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option83 = witTypes.None[int32]() + case 1: + + option83 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option85 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option85 = witTypes.None[string]() + case 1: + value84 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option85 = witTypes.Some[string](value84) + default: + panic("unreachable") + } + result87 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value86 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result87 = append(result87, value86) + } + + result89 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value88 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result89 = append(result89, value88) + } + + var option91 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option91 = witTypes.None[string]() + case 1: + value90 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option91 = witTypes.Some[string](value90) + default: + panic("unreachable") + } + var option94 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option94 = witTypes.None[golem_core_types.Role]() + case 1: + var variant93 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant93 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant93 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant93 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value92 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant93 = golem_core_types.MakeRoleOther(value92) + + default: + panic("unreachable") + } + + option94 = witTypes.Some[golem_core_types.Role](variant93) + default: + panic("unreachable") + } + + result95 = append(result95, golem_core_types.VariantCaseType{value82, option83, golem_core_types.MetadataEnvelope{option85, result87, result89, option91, option94}}) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyVariantType(result95) + + case 16: + result97 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value96 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result97 = append(result97, value96) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyEnumType(result97) + + case 17: + result99 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value98 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result99 = append(result99, value98) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyFlagsType(result99) + + case 18: + result100 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result100 = append(result100, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyTupleType(result100) + + case 19: + + variant162 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant162 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant162 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant162 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option101 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option101 = witTypes.None[int32]() + case 1: + + option101 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option102 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option102 = witTypes.None[int32]() + case 1: + + option102 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option101, option102}) + + case 24: + var option105 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option105 = witTypes.None[[]string]() + case 1: + result104 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value103 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result104 = append(result104, value103) + } + + option105 = witTypes.Some[[]string](result104) + default: + panic("unreachable") + } + var option106 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option106 = witTypes.None[uint32]() + case 1: + + option106 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option107 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option107 = witTypes.None[uint32]() + case 1: + + option107 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option109 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option109 = witTypes.None[string]() + case 1: + value108 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option109 = witTypes.Some[string](value108) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option105, option106, option107, option109}) + + case 25: + var option112 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option112 = witTypes.None[[]string]() + case 1: + result111 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value110 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result111 = append(result111, value110) + } + + option112 = witTypes.Some[[]string](result111) + default: + panic("unreachable") + } + var option113 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option113 = witTypes.None[uint32]() + case 1: + + option113 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option114 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option114 = witTypes.None[uint32]() + case 1: + + option114 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option112, option113, option114}) + + case 26: + var option117 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option117 = witTypes.None[[]string]() + case 1: + result116 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value115 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result116 = append(result116, value115) + } + + option117 = witTypes.Some[[]string](result116) + default: + panic("unreachable") + } + var option120 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option120 = witTypes.None[[]string]() + case 1: + result119 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result119 = append(result119, value118) + } + + option120 = witTypes.Some[[]string](result119) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option117, option120}) + + case 27: + var option123 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option123 = witTypes.None[[]string]() + case 1: + result122 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value121 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result122 = append(result122, value121) + } + + option123 = witTypes.Some[[]string](result122) + default: + panic("unreachable") + } + var option126 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option126 = witTypes.None[[]string]() + case 1: + result125 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value124 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result125 = append(result125, value124) + } + + option126 = witTypes.Some[[]string](result125) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option123, option126}) + + case 28: + + variant162 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant162 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value127 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result129 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result129 = append(result129, value128) + } + + var option131 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option131 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option131 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value130}) + default: + panic("unreachable") + } + var option133 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option133 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option133 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value132}) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value127, result129, option131, option133}) + + case 31: + result155 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value134 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant143 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRulePrefix(value135) + + case 1: + value136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleSuffix(value136) + + case 2: + value137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleContains(value137) + + case 3: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleRegex(value138) + + case 4: + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option141 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option141 = witTypes.None[string]() + case 1: + value140 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option141 = witTypes.Some[string](value140) + default: + panic("unreachable") + } + + variant143 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value139, option141}) + + case 5: + value142 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant143 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value142) + + default: + panic("unreachable") + } + var option145 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option145 = witTypes.None[string]() + case 1: + value144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option145 = witTypes.Some[string](value144) + default: + panic("unreachable") + } + result147 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result147 = append(result147, value146) + } + + result149 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result149 = append(result149, value148) + } + + var option151 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option151 = witTypes.None[string]() + case 1: + value150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option151 = witTypes.Some[string](value150) + default: + panic("unreachable") + } + var option154 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option154 = witTypes.None[golem_core_types.Role]() + case 1: + var variant153 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant153 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant153 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant153 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value152 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant153 = golem_core_types.MakeRoleOther(value152) + + default: + panic("unreachable") + } + + option154 = witTypes.Some[golem_core_types.Role](variant153) + default: + panic("unreachable") + } + + result155 = append(result155, golem_core_types.UnionBranch{value134, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant143, golem_core_types.MetadataEnvelope{option145, result147, result149, option151, option154}}) + } + + variant162 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result155}) + + case 32: + var option157 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option157 = witTypes.None[string]() + case 1: + value156 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option157 = witTypes.Some[string](value156) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option157}) + + case 33: + var option159 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option159 = witTypes.None[string]() + case 1: + value158 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option159 = witTypes.Some[string](value158) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option159}) + + case 34: + var option160 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option160 = witTypes.None[int32]() + case 1: + + option160 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyFutureType(option160) + + case 35: + var option161 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option161 = witTypes.None[int32]() + case 1: + + option161 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant162 = golem_core_types.MakeSchemaTypeBodyStreamType(option161) + + default: + panic("unreachable") + } + var option164 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option164 = witTypes.None[string]() + case 1: + value163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option164 = witTypes.Some[string](value163) + default: + panic("unreachable") + } + result166 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value165 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result166 = append(result166, value165) + } + + result168 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result168 = append(result168, value167) + } + + var option170 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option170 = witTypes.None[string]() + case 1: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option170 = witTypes.Some[string](value169) + default: + panic("unreachable") + } + var option173 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option173 = witTypes.None[golem_core_types.Role]() + case 1: + var variant172 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant172 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant172 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant172 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant172 = golem_core_types.MakeRoleOther(value171) + + default: + panic("unreachable") + } + + option173 = witTypes.Some[golem_core_types.Role](variant172) + default: + panic("unreachable") + } + + result174 = append(result174, golem_core_types.SchemaTypeNode{variant162, golem_core_types.MetadataEnvelope{option164, result166, result168, option170, option173}}) + } + + result178 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 8*4))))), index*(6*4)) + value175 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option177 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option177 = witTypes.None[string]() + case 1: + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option177 = witTypes.Some[string](value176) + default: + panic("unreachable") + } + + result178 = append(result178, golem_core_types.SchemaTypeDef{value175, option177, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + var option180 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 11*4)))) { + case 0: + + option180 = witTypes.None[string]() + case 1: + value179 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 13*4)))) + + option180 = witTypes.Some[string](value179) + default: + panic("unreachable") + } + value181 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 15*4)))) + var option183 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 16*4)))) { + case 0: + + option183 = witTypes.None[string]() + case 1: + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 17*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 18*4)))) + + option183 = witTypes.Some[string](value182) + default: + panic("unreachable") + } + var variant198 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 19*4)))) { + case 0: + result197 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 21*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 21*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 20*4))))), index*(8+16*4)) + value184 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant185 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant185 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant185 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option187 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option187 = witTypes.None[string]() + case 1: + value186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option187 = witTypes.Some[string](value186) + default: + panic("unreachable") + } + result189 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value188 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result189 = append(result189, value188) + } + + result191 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result191 = append(result191, value190) + } + + var option193 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option193 = witTypes.None[string]() + case 1: + value192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option193 = witTypes.Some[string](value192) + default: + panic("unreachable") + } + var option196 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option196 = witTypes.None[golem_core_types.Role]() + case 1: + var variant195 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant195 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant195 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant195 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant195 = golem_core_types.MakeRoleOther(value194) + + default: + panic("unreachable") + } + + option196 = witTypes.Some[golem_core_types.Role](variant195) + default: + panic("unreachable") + } + + result197 = append(result197, golem_agent_common.NamedField{value184, variant185, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option187, result189, result191, option193, option196}}) + } + + variant198 = golem_agent_common.MakeInputSchemaParameters(result197) + + default: + panic("unreachable") + } + result238 := make([]golem_agent_common.AgentMethod, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 23*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 23*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 22*4))))), index*(40+12*4)) + value199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value200 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + result217 := make([]golem_agent_common.HttpEndpointDetails, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))))), index*(12*4)) + var variant202 golem_agent_common.HttpMethod + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant202 = golem_agent_common.MakeHttpMethodGet() + + case 1: + + variant202 = golem_agent_common.MakeHttpMethodHead() + + case 2: + + variant202 = golem_agent_common.MakeHttpMethodPost() + + case 3: + + variant202 = golem_agent_common.MakeHttpMethodPut() + + case 4: + + variant202 = golem_agent_common.MakeHttpMethodDelete() + + case 5: + + variant202 = golem_agent_common.MakeHttpMethodConnect() + + case 6: + + variant202 = golem_agent_common.MakeHttpMethodOptions() + + case 7: + + variant202 = golem_agent_common.MakeHttpMethodTrace() + + case 8: + + variant202 = golem_agent_common.MakeHttpMethodPatch() + + case 9: + value201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant202 = golem_agent_common.MakeHttpMethodCustom(value201) + + default: + panic("unreachable") + } + result207 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))))), index*(3*4)) + var variant206 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant206 = golem_agent_common.MakePathSegmentLiteral(value203) + + case 1: + + variant206 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value204 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant206 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value204}) + + case 3: + value205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant206 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value205}) + + default: + panic("unreachable") + } + + result207 = append(result207, variant206) + } + + result210 := make([]golem_agent_common.HeaderVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))))), index*(4*4)) + value208 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result210 = append(result210, golem_agent_common.HeaderVariable{value208, value209}) + } + + result213 := make([]golem_agent_common.QueryVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(4*4)) + value211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value212 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result213 = append(result213, golem_agent_common.QueryVariable{value211, value212}) + } + + var option214 witTypes.Option[golem_agent_common.AuthDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option214 = witTypes.None[golem_agent_common.AuthDetails]() + case 1: + + option214 = witTypes.Some[golem_agent_common.AuthDetails](golem_agent_common.AuthDetails{(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4)))) != 0)}) + default: + panic("unreachable") + } + result216 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(2*4)) + value215 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result216 = append(result216, value215) + } + + result217 = append(result217, golem_agent_common.HttpEndpointDetails{variant202, result207, result210, result213, option214, golem_agent_common.CorsOptions{result216}}) + } + + var option219 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option219 = witTypes.None[string]() + case 1: + value218 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option219 = witTypes.Some[string](value218) + default: + panic("unreachable") + } + var variant234 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + result233 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(8+16*4)) + value220 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant221 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant221 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant221 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option223 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option223 = witTypes.None[string]() + case 1: + value222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option223 = witTypes.Some[string](value222) + default: + panic("unreachable") + } + result225 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result225 = append(result225, value224) + } + + result227 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result227 = append(result227, value226) + } + + var option229 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option229 = witTypes.None[string]() + case 1: + value228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option229 = witTypes.Some[string](value228) + default: + panic("unreachable") + } + var option232 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option232 = witTypes.None[golem_core_types.Role]() + case 1: + var variant231 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant231 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant231 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant231 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value230 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant231 = golem_core_types.MakeRoleOther(value230) + + default: + panic("unreachable") + } + + option232 = witTypes.Some[golem_core_types.Role](variant231) + default: + panic("unreachable") + } + + result233 = append(result233, golem_agent_common.NamedField{value220, variant221, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option223, result225, result227, option229, option232}}) + } + + variant234 = golem_agent_common.MakeInputSchemaParameters(result233) + + default: + panic("unreachable") + } + var variant235 golem_agent_common.OutputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) { + case 0: + + variant235 = golem_agent_common.MakeOutputSchemaUnit() + + case 1: + + variant235 = golem_agent_common.MakeOutputSchemaSingle(*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4)))) + + default: + panic("unreachable") + } + var option237 witTypes.Option[golem_agent_common.ReadOnlyConfig] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option237 = witTypes.None[golem_agent_common.ReadOnlyConfig]() + case 1: + var variant236 golem_agent_common.CachePolicy + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4)))) { + case 0: + + variant236 = golem_agent_common.MakeCachePolicyNoCache() + + case 1: + + variant236 = golem_agent_common.MakeCachePolicyUntilWrite() + + case 2: + + variant236 = golem_agent_common.MakeCachePolicyTtl(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))))) + + default: + panic("unreachable") + } + + option237 = witTypes.Some[golem_agent_common.ReadOnlyConfig](golem_agent_common.ReadOnlyConfig{variant236, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))) != 0)}) + default: + panic("unreachable") + } + + result238 = append(result238, golem_agent_common.AgentMethod{value199, value200, result217, option219, variant234, variant235, option237}) + } + + result482 := make([]golem_agent_common.AgentDependency, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 25*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 25*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 24*4))))), index*(23*4)) + value239 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option241 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option241 = witTypes.None[string]() + case 1: + value240 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option241 = witTypes.Some[string](value240) + default: + panic("unreachable") + } + result417 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))))), index*(56+22*4)) + var variant405 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant405 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant405 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option248 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option248 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option243 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option243 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant242 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant242 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant242 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant242 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option243 = witTypes.Some[golem_core_types.NumericBound](variant242) + default: + panic("unreachable") + } + var option245 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option245 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant244 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant244 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant244 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant244 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option245 = witTypes.Some[golem_core_types.NumericBound](variant244) + default: + panic("unreachable") + } + var option247 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option247 = witTypes.None[string]() + case 1: + value246 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option247 = witTypes.Some[string](value246) + default: + panic("unreachable") + } + + option248 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option243, option245, option247}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS8Type(option248) + + case 3: + var option255 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option255 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option250 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option250 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant249 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant249 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant249 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant249 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option250 = witTypes.Some[golem_core_types.NumericBound](variant249) + default: + panic("unreachable") + } + var option252 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option252 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant251 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant251 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant251 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant251 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option252 = witTypes.Some[golem_core_types.NumericBound](variant251) + default: + panic("unreachable") + } + var option254 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option254 = witTypes.None[string]() + case 1: + value253 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option254 = witTypes.Some[string](value253) + default: + panic("unreachable") + } + + option255 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option250, option252, option254}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS16Type(option255) + + case 4: + var option262 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option262 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option257 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option257 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant256 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant256 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant256 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant256 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option257 = witTypes.Some[golem_core_types.NumericBound](variant256) + default: + panic("unreachable") + } + var option259 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option259 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant258 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant258 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant258 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant258 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option259 = witTypes.Some[golem_core_types.NumericBound](variant258) + default: + panic("unreachable") + } + var option261 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option261 = witTypes.None[string]() + case 1: + value260 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option261 = witTypes.Some[string](value260) + default: + panic("unreachable") + } + + option262 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option257, option259, option261}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS32Type(option262) + + case 5: + var option269 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option269 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option264 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option264 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant263 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant263 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant263 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant263 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option264 = witTypes.Some[golem_core_types.NumericBound](variant263) + default: + panic("unreachable") + } + var option266 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option266 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant265 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant265 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant265 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant265 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option266 = witTypes.Some[golem_core_types.NumericBound](variant265) + default: + panic("unreachable") + } + var option268 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option268 = witTypes.None[string]() + case 1: + value267 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option268 = witTypes.Some[string](value267) + default: + panic("unreachable") + } + + option269 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option264, option266, option268}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyS64Type(option269) + + case 6: + var option276 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option276 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option271 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option271 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant270 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant270 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant270 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant270 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option271 = witTypes.Some[golem_core_types.NumericBound](variant270) + default: + panic("unreachable") + } + var option273 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option273 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant272 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant272 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant272 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant272 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option273 = witTypes.Some[golem_core_types.NumericBound](variant272) + default: + panic("unreachable") + } + var option275 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option275 = witTypes.None[string]() + case 1: + value274 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option275 = witTypes.Some[string](value274) + default: + panic("unreachable") + } + + option276 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option271, option273, option275}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU8Type(option276) + + case 7: + var option283 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option283 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option278 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option278 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant277 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant277 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant277 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant277 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option278 = witTypes.Some[golem_core_types.NumericBound](variant277) + default: + panic("unreachable") + } + var option280 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option280 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant279 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant279 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant279 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant279 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option280 = witTypes.Some[golem_core_types.NumericBound](variant279) + default: + panic("unreachable") + } + var option282 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option282 = witTypes.None[string]() + case 1: + value281 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option282 = witTypes.Some[string](value281) + default: + panic("unreachable") + } + + option283 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option278, option280, option282}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU16Type(option283) + + case 8: + var option290 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option290 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option285 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option285 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant284 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant284 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant284 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant284 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option285 = witTypes.Some[golem_core_types.NumericBound](variant284) + default: + panic("unreachable") + } + var option287 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option287 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant286 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant286 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant286 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant286 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option287 = witTypes.Some[golem_core_types.NumericBound](variant286) + default: + panic("unreachable") + } + var option289 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option289 = witTypes.None[string]() + case 1: + value288 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option289 = witTypes.Some[string](value288) + default: + panic("unreachable") + } + + option290 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option285, option287, option289}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU32Type(option290) + + case 9: + var option297 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option297 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option292 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option292 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant291 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant291 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant291 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant291 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option292 = witTypes.Some[golem_core_types.NumericBound](variant291) + default: + panic("unreachable") + } + var option294 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option294 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant293 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant293 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant293 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant293 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option294 = witTypes.Some[golem_core_types.NumericBound](variant293) + default: + panic("unreachable") + } + var option296 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option296 = witTypes.None[string]() + case 1: + value295 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option296 = witTypes.Some[string](value295) + default: + panic("unreachable") + } + + option297 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option292, option294, option296}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyU64Type(option297) + + case 10: + var option304 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option304 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option299 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option299 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant298 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant298 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant298 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant298 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option299 = witTypes.Some[golem_core_types.NumericBound](variant298) + default: + panic("unreachable") + } + var option301 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option301 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant300 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant300 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant300 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant300 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option301 = witTypes.Some[golem_core_types.NumericBound](variant300) + default: + panic("unreachable") + } + var option303 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option303 = witTypes.None[string]() + case 1: + value302 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option303 = witTypes.Some[string](value302) + default: + panic("unreachable") + } + + option304 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option299, option301, option303}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyF32Type(option304) + + case 11: + var option311 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option311 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option306 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option306 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant305 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant305 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant305 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant305 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option306 = witTypes.Some[golem_core_types.NumericBound](variant305) + default: + panic("unreachable") + } + var option308 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option308 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant307 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant307 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant307 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant307 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option308 = witTypes.Some[golem_core_types.NumericBound](variant307) + default: + panic("unreachable") + } + var option310 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option310 = witTypes.None[string]() + case 1: + value309 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option310 = witTypes.Some[string](value309) + default: + panic("unreachable") + } + + option311 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option306, option308, option310}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyF64Type(option311) + + case 12: + + variant405 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant405 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result324 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value312 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option314 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option314 = witTypes.None[string]() + case 1: + value313 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option314 = witTypes.Some[string](value313) + default: + panic("unreachable") + } + result316 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value315 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result316 = append(result316, value315) + } + + result318 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value317 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result318 = append(result318, value317) + } + + var option320 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option320 = witTypes.None[string]() + case 1: + value319 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option320 = witTypes.Some[string](value319) + default: + panic("unreachable") + } + var option323 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option323 = witTypes.None[golem_core_types.Role]() + case 1: + var variant322 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant322 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant322 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant322 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value321 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant322 = golem_core_types.MakeRoleOther(value321) + + default: + panic("unreachable") + } + + option323 = witTypes.Some[golem_core_types.Role](variant322) + default: + panic("unreachable") + } + + result324 = append(result324, golem_core_types.NamedFieldType{value312, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option314, result316, result318, option320, option323}}) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyRecordType(result324) + + case 15: + result338 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value325 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option326 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option326 = witTypes.None[int32]() + case 1: + + option326 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option328 = witTypes.None[string]() + case 1: + value327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option328 = witTypes.Some[string](value327) + default: + panic("unreachable") + } + result330 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value329 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result330 = append(result330, value329) + } + + result332 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value331 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result332 = append(result332, value331) + } + + var option334 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option334 = witTypes.None[string]() + case 1: + value333 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option334 = witTypes.Some[string](value333) + default: + panic("unreachable") + } + var option337 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option337 = witTypes.None[golem_core_types.Role]() + case 1: + var variant336 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant336 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant336 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant336 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value335 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant336 = golem_core_types.MakeRoleOther(value335) + + default: + panic("unreachable") + } + + option337 = witTypes.Some[golem_core_types.Role](variant336) + default: + panic("unreachable") + } + + result338 = append(result338, golem_core_types.VariantCaseType{value325, option326, golem_core_types.MetadataEnvelope{option328, result330, result332, option334, option337}}) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyVariantType(result338) + + case 16: + result340 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value339 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result340 = append(result340, value339) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyEnumType(result340) + + case 17: + result342 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value341 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result342 = append(result342, value341) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyFlagsType(result342) + + case 18: + result343 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result343 = append(result343, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyTupleType(result343) + + case 19: + + variant405 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant405 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant405 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant405 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option344 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option344 = witTypes.None[int32]() + case 1: + + option344 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option345 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option345 = witTypes.None[int32]() + case 1: + + option345 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option344, option345}) + + case 24: + var option348 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option348 = witTypes.None[[]string]() + case 1: + result347 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result347 = append(result347, value346) + } + + option348 = witTypes.Some[[]string](result347) + default: + panic("unreachable") + } + var option349 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option349 = witTypes.None[uint32]() + case 1: + + option349 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option350 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option350 = witTypes.None[uint32]() + case 1: + + option350 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option352 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option352 = witTypes.None[string]() + case 1: + value351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option352 = witTypes.Some[string](value351) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option348, option349, option350, option352}) + + case 25: + var option355 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option355 = witTypes.None[[]string]() + case 1: + result354 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value353 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result354 = append(result354, value353) + } + + option355 = witTypes.Some[[]string](result354) + default: + panic("unreachable") + } + var option356 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option356 = witTypes.None[uint32]() + case 1: + + option356 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option357 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option357 = witTypes.None[uint32]() + case 1: + + option357 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option355, option356, option357}) + + case 26: + var option360 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option360 = witTypes.None[[]string]() + case 1: + result359 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result359 = append(result359, value358) + } + + option360 = witTypes.Some[[]string](result359) + default: + panic("unreachable") + } + var option363 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option363 = witTypes.None[[]string]() + case 1: + result362 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value361 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result362 = append(result362, value361) + } + + option363 = witTypes.Some[[]string](result362) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option360, option363}) + + case 27: + var option366 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option366 = witTypes.None[[]string]() + case 1: + result365 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value364 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result365 = append(result365, value364) + } + + option366 = witTypes.Some[[]string](result365) + default: + panic("unreachable") + } + var option369 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option369 = witTypes.None[[]string]() + case 1: + result368 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value367 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result368 = append(result368, value367) + } + + option369 = witTypes.Some[[]string](result368) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option366, option369}) + + case 28: + + variant405 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant405 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value370 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result372 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result372 = append(result372, value371) + } + + var option374 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option374 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value373 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option374 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value373}) + default: + panic("unreachable") + } + var option376 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option376 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value375 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option376 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value375}) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value370, result372, option374, option376}) + + case 31: + result398 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value377 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant386 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRulePrefix(value378) + + case 1: + value379 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleSuffix(value379) + + case 2: + value380 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleContains(value380) + + case 3: + value381 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleRegex(value381) + + case 4: + value382 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option384 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option384 = witTypes.None[string]() + case 1: + value383 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option384 = witTypes.Some[string](value383) + default: + panic("unreachable") + } + + variant386 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value382, option384}) + + case 5: + value385 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant386 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value385) + + default: + panic("unreachable") + } + var option388 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option388 = witTypes.None[string]() + case 1: + value387 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option388 = witTypes.Some[string](value387) + default: + panic("unreachable") + } + result390 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value389 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result390 = append(result390, value389) + } + + result392 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value391 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result392 = append(result392, value391) + } + + var option394 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option394 = witTypes.None[string]() + case 1: + value393 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option394 = witTypes.Some[string](value393) + default: + panic("unreachable") + } + var option397 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option397 = witTypes.None[golem_core_types.Role]() + case 1: + var variant396 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant396 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant396 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant396 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value395 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant396 = golem_core_types.MakeRoleOther(value395) + + default: + panic("unreachable") + } + + option397 = witTypes.Some[golem_core_types.Role](variant396) + default: + panic("unreachable") + } + + result398 = append(result398, golem_core_types.UnionBranch{value377, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant386, golem_core_types.MetadataEnvelope{option388, result390, result392, option394, option397}}) + } + + variant405 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result398}) + + case 32: + var option400 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option400 = witTypes.None[string]() + case 1: + value399 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option400 = witTypes.Some[string](value399) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option400}) + + case 33: + var option402 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option402 = witTypes.None[string]() + case 1: + value401 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option402 = witTypes.Some[string](value401) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option402}) + + case 34: + var option403 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option403 = witTypes.None[int32]() + case 1: + + option403 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyFutureType(option403) + + case 35: + var option404 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option404 = witTypes.None[int32]() + case 1: + + option404 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant405 = golem_core_types.MakeSchemaTypeBodyStreamType(option404) + + default: + panic("unreachable") + } + var option407 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option407 = witTypes.None[string]() + case 1: + value406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option407 = witTypes.Some[string](value406) + default: + panic("unreachable") + } + result409 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value408 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result409 = append(result409, value408) + } + + result411 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result411 = append(result411, value410) + } + + var option413 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option413 = witTypes.None[string]() + case 1: + value412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option413 = witTypes.Some[string](value412) + default: + panic("unreachable") + } + var option416 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option416 = witTypes.None[golem_core_types.Role]() + case 1: + var variant415 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant415 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant415 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant415 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant415 = golem_core_types.MakeRoleOther(value414) + + default: + panic("unreachable") + } + + option416 = witTypes.Some[golem_core_types.Role](variant415) + default: + panic("unreachable") + } + + result417 = append(result417, golem_core_types.SchemaTypeNode{variant405, golem_core_types.MetadataEnvelope{option407, result409, result411, option413, option416}}) + } + + result421 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(6*4)) + value418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option420 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option420 = witTypes.None[string]() + case 1: + value419 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option420 = witTypes.Some[string](value419) + default: + panic("unreachable") + } + + result421 = append(result421, golem_core_types.SchemaTypeDef{value418, option420, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + var option423 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option423 = witTypes.None[string]() + case 1: + value422 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option423 = witTypes.Some[string](value422) + default: + panic("unreachable") + } + value424 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) + var option426 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) { + case 0: + + option426 = witTypes.None[string]() + case 1: + value425 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))) + + option426 = witTypes.Some[string](value425) + default: + panic("unreachable") + } + var variant441 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) { + case 0: + result440 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4))))), index*(8+16*4)) + value427 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant428 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant428 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant428 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option430 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option430 = witTypes.None[string]() + case 1: + value429 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option430 = witTypes.Some[string](value429) + default: + panic("unreachable") + } + result432 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value431 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result432 = append(result432, value431) + } + + result434 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value433 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result434 = append(result434, value433) + } + + var option436 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option436 = witTypes.None[string]() + case 1: + value435 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option436 = witTypes.Some[string](value435) + default: + panic("unreachable") + } + var option439 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option439 = witTypes.None[golem_core_types.Role]() + case 1: + var variant438 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant438 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant438 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant438 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant438 = golem_core_types.MakeRoleOther(value437) + + default: + panic("unreachable") + } + + option439 = witTypes.Some[golem_core_types.Role](variant438) + default: + panic("unreachable") + } + + result440 = append(result440, golem_agent_common.NamedField{value427, variant428, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option430, result432, result434, option436, option439}}) + } + + variant441 = golem_agent_common.MakeInputSchemaParameters(result440) + + default: + panic("unreachable") + } + result481 := make([]golem_agent_common.AgentMethod, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))))), index*(40+12*4)) + value442 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value443 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + result460 := make([]golem_agent_common.HttpEndpointDetails, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))))), index*(12*4)) + var variant445 golem_agent_common.HttpMethod + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant445 = golem_agent_common.MakeHttpMethodGet() + + case 1: + + variant445 = golem_agent_common.MakeHttpMethodHead() + + case 2: + + variant445 = golem_agent_common.MakeHttpMethodPost() + + case 3: + + variant445 = golem_agent_common.MakeHttpMethodPut() + + case 4: + + variant445 = golem_agent_common.MakeHttpMethodDelete() + + case 5: + + variant445 = golem_agent_common.MakeHttpMethodConnect() + + case 6: + + variant445 = golem_agent_common.MakeHttpMethodOptions() + + case 7: + + variant445 = golem_agent_common.MakeHttpMethodTrace() + + case 8: + + variant445 = golem_agent_common.MakeHttpMethodPatch() + + case 9: + value444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant445 = golem_agent_common.MakeHttpMethodCustom(value444) + + default: + panic("unreachable") + } + result450 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))))), index*(3*4)) + var variant449 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value446 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant449 = golem_agent_common.MakePathSegmentLiteral(value446) + + case 1: + + variant449 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value447 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant449 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value447}) + + case 3: + value448 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant449 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value448}) + + default: + panic("unreachable") + } + + result450 = append(result450, variant449) + } + + result453 := make([]golem_agent_common.HeaderVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))))), index*(4*4)) + value451 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value452 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result453 = append(result453, golem_agent_common.HeaderVariable{value451, value452}) + } + + result456 := make([]golem_agent_common.QueryVariable, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(4*4)) + value454 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value455 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result456 = append(result456, golem_agent_common.QueryVariable{value454, value455}) + } + + var option457 witTypes.Option[golem_agent_common.AuthDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option457 = witTypes.None[golem_agent_common.AuthDetails]() + case 1: + + option457 = witTypes.Some[golem_agent_common.AuthDetails](golem_agent_common.AuthDetails{(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4)))) != 0)}) + default: + panic("unreachable") + } + result459 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(2*4)) + value458 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result459 = append(result459, value458) + } + + result460 = append(result460, golem_agent_common.HttpEndpointDetails{variant445, result450, result453, result456, option457, golem_agent_common.CorsOptions{result459}}) + } + + var option462 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option462 = witTypes.None[string]() + case 1: + value461 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option462 = witTypes.Some[string](value461) + default: + panic("unreachable") + } + var variant477 golem_agent_common.InputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + result476 := make([]golem_agent_common.NamedField, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))))), index*(8+16*4)) + value463 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant464 golem_agent_common.FieldSource + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + variant464 = golem_agent_common.MakeFieldSourceUserSupplied() + + case 1: + + variant464 = golem_agent_common.MakeFieldSourceAutoInjected(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4)))))) + + default: + panic("unreachable") + } + var option466 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option466 = witTypes.None[string]() + case 1: + value465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option466 = witTypes.Some[string](value465) + default: + panic("unreachable") + } + result468 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value467 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result468 = append(result468, value467) + } + + result470 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value469 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result470 = append(result470, value469) + } + + var option472 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option472 = witTypes.None[string]() + case 1: + value471 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option472 = witTypes.Some[string](value471) + default: + panic("unreachable") + } + var option475 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option475 = witTypes.None[golem_core_types.Role]() + case 1: + var variant474 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant474 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant474 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant474 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value473 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant474 = golem_core_types.MakeRoleOther(value473) + + default: + panic("unreachable") + } + + option475 = witTypes.Some[golem_core_types.Role](variant474) + default: + panic("unreachable") + } + + result476 = append(result476, golem_agent_common.NamedField{value463, variant464, *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))), golem_core_types.MetadataEnvelope{option466, result468, result470, option472, option475}}) + } + + variant477 = golem_agent_common.MakeInputSchemaParameters(result476) + + default: + panic("unreachable") + } + var variant478 golem_agent_common.OutputSchema + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) { + case 0: + + variant478 = golem_agent_common.MakeOutputSchemaUnit() + + case 1: + + variant478 = golem_agent_common.MakeOutputSchemaSingle(*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4)))) + + default: + panic("unreachable") + } + var option480 witTypes.Option[golem_agent_common.ReadOnlyConfig] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option480 = witTypes.None[golem_agent_common.ReadOnlyConfig]() + case 1: + var variant479 golem_agent_common.CachePolicy + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4)))) { + case 0: + + variant479 = golem_agent_common.MakeCachePolicyNoCache() + + case 1: + + variant479 = golem_agent_common.MakeCachePolicyUntilWrite() + + case 2: + + variant479 = golem_agent_common.MakeCachePolicyTtl(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))))) + + default: + panic("unreachable") + } + + option480 = witTypes.Some[golem_agent_common.ReadOnlyConfig](golem_agent_common.ReadOnlyConfig{variant479, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))) != 0)}) + default: + panic("unreachable") + } + + result481 = append(result481, golem_agent_common.AgentMethod{value442, value443, result460, option462, variant477, variant478, option480}) + } + + result482 = append(result482, golem_agent_common.AgentDependency{value239, option241, golem_core_types.SchemaGraph{result417, result421, *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))}, golem_agent_common.AgentConstructor{option423, value424, option426, variant441}, result481}) + } + + var option496 witTypes.Option[golem_agent_common.HttpMountDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 27*4)))) { + case 0: + + option496 = witTypes.None[golem_agent_common.HttpMountDetails]() + case 1: + result487 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 29*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 29*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 28*4))))), index*(3*4)) + var variant486 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value483 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant486 = golem_agent_common.MakePathSegmentLiteral(value483) + + case 1: + + variant486 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value484 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant486 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value484}) + + case 3: + value485 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant486 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value485}) + + default: + panic("unreachable") + } + + result487 = append(result487, variant486) + } + + var option488 witTypes.Option[golem_agent_common.AuthDetails] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 30*4)))) { + case 0: + + option488 = witTypes.None[golem_agent_common.AuthDetails]() + case 1: + + option488 = witTypes.Some[golem_agent_common.AuthDetails](golem_agent_common.AuthDetails{(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (9 + 30*4)))) != 0)}) + default: + panic("unreachable") + } + result490 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 32*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 32*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 31*4))))), index*(2*4)) + value489 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result490 = append(result490, value489) + } + + result495 := make([]golem_agent_common.PathSegment, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 34*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 34*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 33*4))))), index*(3*4)) + var variant494 golem_agent_common.PathSegment + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value491 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant494 = golem_agent_common.MakePathSegmentLiteral(value491) + + case 1: + + variant494 = golem_agent_common.MakePathSegmentSystemVariable(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))) + + case 2: + value492 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant494 = golem_agent_common.MakePathSegmentPathVariable(golem_agent_common.PathVariable{value492}) + + case 3: + value493 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant494 = golem_agent_common.MakePathSegmentRemainingPathVariable(golem_agent_common.PathVariable{value493}) + + default: + panic("unreachable") + } + + result495 = append(result495, variant494) + } + + option496 = witTypes.Some[golem_agent_common.HttpMountDetails](golem_agent_common.HttpMountDetails{result487, option488, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (10 + 30*4)))) != 0), golem_agent_common.CorsOptions{result490}, result495}) + default: + panic("unreachable") + } + var variant498 golem_agent_common.Snapshotting + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 34*4)))) { + case 0: + + variant498 = golem_agent_common.MakeSnapshottingDisabled() + + case 1: + var variant497 golem_agent_common.SnapshottingConfig + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 34*4)))) { + case 0: + + variant497 = golem_agent_common.MakeSnapshottingConfigDefault() + + case 1: + + variant497 = golem_agent_common.MakeSnapshottingConfigPeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (32 + 34*4))))) + + case 2: + + variant497 = golem_agent_common.MakeSnapshottingConfigEveryNInvocation(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (32 + 34*4)))))) + + default: + panic("unreachable") + } + + variant498 = golem_agent_common.MakeSnapshottingEnabled(variant497) + + default: + panic("unreachable") + } + result501 := make([]golem_agent_common.AgentConfigDeclaration, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (40 + 35*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (40 + 35*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (40 + 34*4))))), index*(4*4)) + result500 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)))), index*(2*4)) + value499 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result500 = append(result500, value499) + } + + result501 = append(result501, golem_agent_common.AgentConfigDeclaration{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), result500, *(*int32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))}) + } + + option502 = witTypes.Some[golem_agent_common.RegisteredAgentType](golem_agent_common.RegisteredAgentType{golem_agent_common.AgentType{value, value0, value1, golem_core_types.SchemaGraph{result174, result178, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 10*4)))}, golem_agent_common.AgentConstructor{option180, value181, option183, variant198}, result238, result482, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 26*4))))), option496, variant498, result501}, golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (40 + 36*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (48 + 36*4))))}}}) + default: + panic("unreachable") + } + result503 := option502 + return result503 + +} + +//go:wasmimport golem:agent/host@2.0.0 make-agent-id +func wasm_import_make_agent_id(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 int32, arg5 int32, arg6 int64, arg7 int64, arg8 uintptr) + +func MakeAgentId(agentTypeName string, input golem_core_types.SchemaValueTree, phantomId witTypes.Option[golem_core_types.Uuid]) witTypes.Result[string, golem_agent_common.AgentError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (10 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(agentTypeName)) + pinner.Pin(utf8) + slice25 := (input).ValueNodes + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(16+4*4)), 8) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result1 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result1, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result1))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice3 := payload + length5 := uint32(len(slice3)) + result4 := witRuntime.Allocate(pinner, uintptr(length5*1), 1) + for index, element := range slice3 { + base := unsafe.Add(result4, index*1) + var result2 int32 + if element { + result2 = 1 + } else { + result2 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result2) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length5) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result4))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice6 := payload + length8 := uint32(len(slice6)) + result7 := witRuntime.Allocate(pinner, uintptr(length8*4), 4) + for index, element := range slice6 { + base := unsafe.Add(result7, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result7))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice9 := payload + length11 := uint32(len(slice9)) + result10 := witRuntime.Allocate(pinner, uintptr(length11*4), 4) + for index, element := range slice9 { + base := unsafe.Add(result10, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result10))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice12 := payload + length14 := uint32(len(slice12)) + result13 := witRuntime.Allocate(pinner, uintptr(length14*4), 4) + for index, element := range slice12 { + base := unsafe.Add(result13, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length14) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result13))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice15 := payload + length17 := uint32(len(slice15)) + result16 := witRuntime.Allocate(pinner, uintptr(length17*8), 4) + for index, element := range slice15 { + base := unsafe.Add(result16, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length17) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result16))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf819))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf821))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf823 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf823))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + var option int32 + var option28 int64 + var option29 int64 + switch phantomId.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option28 = 0 + option29 = 0 + case witTypes.OptionSome: + payload := phantomId.Some() + + option = int32(1) + option28 = int64((payload).HighBits) + option29 = int64((payload).LowBits) + default: + panic("unreachable") + } + wasm_import_make_agent_id(uintptr(utf8), uint32(len(agentTypeName)), uintptr(result26), length27, (input).Root, option, option28, option29, returnArea) + var result238 witTypes.Result[string, golem_agent_common.AgentError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result238 = witTypes.Ok[string, golem_agent_common.AgentError](value) + case 1: + var variant237 golem_agent_common.AgentError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant237 = golem_agent_common.MakeAgentErrorInvalidInput(value30) + + case 1: + value31 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant237 = golem_agent_common.MakeAgentErrorInvalidMethod(value31) + + case 2: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant237 = golem_agent_common.MakeAgentErrorInvalidType(value32) + + case 3: + value33 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant237 = golem_agent_common.MakeAgentErrorInvalidAgentId(value33) + + case 4: + result208 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4))))), index*(56+22*4)) + var variant196 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant196 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant196 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option39 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option39 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option34 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option34 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option34 = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option36 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option36 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant35 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant35 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant35 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant35 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option36 = witTypes.Some[golem_core_types.NumericBound](variant35) + default: + panic("unreachable") + } + var option38 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option38 = witTypes.None[string]() + case 1: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option38 = witTypes.Some[string](value37) + default: + panic("unreachable") + } + + option39 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option34, option36, option38}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyS8Type(option39) + + case 3: + var option46 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option46 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option41 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant40 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant40 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant40 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant40 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericBound](variant40) + default: + panic("unreachable") + } + var option43 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option43 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant42 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant42 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant42 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant42 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option43 = witTypes.Some[golem_core_types.NumericBound](variant42) + default: + panic("unreachable") + } + var option45 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option45 = witTypes.None[string]() + case 1: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option45 = witTypes.Some[string](value44) + default: + panic("unreachable") + } + + option46 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option41, option43, option45}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyS16Type(option46) + + case 4: + var option53 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option53 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option48 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant47 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant47 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant47 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant47 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericBound](variant47) + default: + panic("unreachable") + } + var option50 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option50 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant49 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant49 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant49 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant49 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option50 = witTypes.Some[golem_core_types.NumericBound](variant49) + default: + panic("unreachable") + } + var option52 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option52 = witTypes.None[string]() + case 1: + value51 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option52 = witTypes.Some[string](value51) + default: + panic("unreachable") + } + + option53 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option48, option50, option52}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyS32Type(option53) + + case 5: + var option60 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option60 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option55 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant54 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant54 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant54 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant54 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericBound](variant54) + default: + panic("unreachable") + } + var option57 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option57 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant56 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant56 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant56 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant56 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option57 = witTypes.Some[golem_core_types.NumericBound](variant56) + default: + panic("unreachable") + } + var option59 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option59 = witTypes.None[string]() + case 1: + value58 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option59 = witTypes.Some[string](value58) + default: + panic("unreachable") + } + + option60 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option55, option57, option59}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyS64Type(option60) + + case 6: + var option67 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option67 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option62 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant61 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant61 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant61 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant61 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericBound](variant61) + default: + panic("unreachable") + } + var option64 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option64 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant63 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant63 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant63 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant63 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option64 = witTypes.Some[golem_core_types.NumericBound](variant63) + default: + panic("unreachable") + } + var option66 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option66 = witTypes.None[string]() + case 1: + value65 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option66 = witTypes.Some[string](value65) + default: + panic("unreachable") + } + + option67 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option62, option64, option66}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyU8Type(option67) + + case 7: + var option74 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option74 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option69 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option69 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant68 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant68 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant68 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant68 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option69 = witTypes.Some[golem_core_types.NumericBound](variant68) + default: + panic("unreachable") + } + var option71 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option71 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant70 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant70 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant70 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant70 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option71 = witTypes.Some[golem_core_types.NumericBound](variant70) + default: + panic("unreachable") + } + var option73 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option73 = witTypes.None[string]() + case 1: + value72 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option73 = witTypes.Some[string](value72) + default: + panic("unreachable") + } + + option74 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option69, option71, option73}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyU16Type(option74) + + case 8: + var option81 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option81 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option76 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option76 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant75 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant75 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant75 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant75 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option76 = witTypes.Some[golem_core_types.NumericBound](variant75) + default: + panic("unreachable") + } + var option78 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option78 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant77 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant77 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant77 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant77 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option78 = witTypes.Some[golem_core_types.NumericBound](variant77) + default: + panic("unreachable") + } + var option80 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option80 = witTypes.None[string]() + case 1: + value79 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option80 = witTypes.Some[string](value79) + default: + panic("unreachable") + } + + option81 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option76, option78, option80}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyU32Type(option81) + + case 9: + var option88 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option88 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option83 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option83 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant82 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant82 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant82 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant82 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option83 = witTypes.Some[golem_core_types.NumericBound](variant82) + default: + panic("unreachable") + } + var option85 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option85 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant84 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant84 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant84 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant84 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option85 = witTypes.Some[golem_core_types.NumericBound](variant84) + default: + panic("unreachable") + } + var option87 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option87 = witTypes.None[string]() + case 1: + value86 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option87 = witTypes.Some[string](value86) + default: + panic("unreachable") + } + + option88 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option83, option85, option87}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyU64Type(option88) + + case 10: + var option95 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option95 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option90 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option90 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant89 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant89 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant89 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant89 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option90 = witTypes.Some[golem_core_types.NumericBound](variant89) + default: + panic("unreachable") + } + var option92 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option92 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant91 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant91 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant91 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant91 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option92 = witTypes.Some[golem_core_types.NumericBound](variant91) + default: + panic("unreachable") + } + var option94 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option94 = witTypes.None[string]() + case 1: + value93 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option94 = witTypes.Some[string](value93) + default: + panic("unreachable") + } + + option95 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option90, option92, option94}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyF32Type(option95) + + case 11: + var option102 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option102 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option97 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option97 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant96 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant96 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant96 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant96 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option97 = witTypes.Some[golem_core_types.NumericBound](variant96) + default: + panic("unreachable") + } + var option99 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option99 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant98 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant98 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant98 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant98 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option99 = witTypes.Some[golem_core_types.NumericBound](variant98) + default: + panic("unreachable") + } + var option101 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option101 = witTypes.None[string]() + case 1: + value100 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option101 = witTypes.Some[string](value100) + default: + panic("unreachable") + } + + option102 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option97, option99, option101}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyF64Type(option102) + + case 12: + + variant196 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant196 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result115 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value103 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option105 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option105 = witTypes.None[string]() + case 1: + value104 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option105 = witTypes.Some[string](value104) + default: + panic("unreachable") + } + result107 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value106 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result107 = append(result107, value106) + } + + result109 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value108 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result109 = append(result109, value108) + } + + var option111 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option111 = witTypes.None[string]() + case 1: + value110 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option111 = witTypes.Some[string](value110) + default: + panic("unreachable") + } + var option114 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option114 = witTypes.None[golem_core_types.Role]() + case 1: + var variant113 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant113 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant113 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant113 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value112 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant113 = golem_core_types.MakeRoleOther(value112) + + default: + panic("unreachable") + } + + option114 = witTypes.Some[golem_core_types.Role](variant113) + default: + panic("unreachable") + } + + result115 = append(result115, golem_core_types.NamedFieldType{value103, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option105, result107, result109, option111, option114}}) + } + + variant196 = golem_core_types.MakeSchemaTypeBodyRecordType(result115) + + case 15: + result129 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value116 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option117 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option117 = witTypes.None[int32]() + case 1: + + option117 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option119 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option119 = witTypes.None[string]() + case 1: + value118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option119 = witTypes.Some[string](value118) + default: + panic("unreachable") + } + result121 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value120 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result121 = append(result121, value120) + } + + result123 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value122 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result123 = append(result123, value122) + } + + var option125 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option125 = witTypes.None[string]() + case 1: + value124 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option125 = witTypes.Some[string](value124) + default: + panic("unreachable") + } + var option128 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option128 = witTypes.None[golem_core_types.Role]() + case 1: + var variant127 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant127 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant127 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant127 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant127 = golem_core_types.MakeRoleOther(value126) + + default: + panic("unreachable") + } + + option128 = witTypes.Some[golem_core_types.Role](variant127) + default: + panic("unreachable") + } + + result129 = append(result129, golem_core_types.VariantCaseType{value116, option117, golem_core_types.MetadataEnvelope{option119, result121, result123, option125, option128}}) + } + + variant196 = golem_core_types.MakeSchemaTypeBodyVariantType(result129) + + case 16: + result131 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result131 = append(result131, value130) + } + + variant196 = golem_core_types.MakeSchemaTypeBodyEnumType(result131) + + case 17: + result133 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result133 = append(result133, value132) + } + + variant196 = golem_core_types.MakeSchemaTypeBodyFlagsType(result133) + + case 18: + result134 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result134 = append(result134, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant196 = golem_core_types.MakeSchemaTypeBodyTupleType(result134) + + case 19: + + variant196 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant196 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant196 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant196 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option135 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option135 = witTypes.None[int32]() + case 1: + + option135 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option136 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option136 = witTypes.None[int32]() + case 1: + + option136 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option135, option136}) + + case 24: + var option139 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option139 = witTypes.None[[]string]() + case 1: + result138 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result138 = append(result138, value137) + } + + option139 = witTypes.Some[[]string](result138) + default: + panic("unreachable") + } + var option140 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option140 = witTypes.None[uint32]() + case 1: + + option140 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option141 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option141 = witTypes.None[uint32]() + case 1: + + option141 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option143 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option143 = witTypes.None[string]() + case 1: + value142 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option143 = witTypes.Some[string](value142) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option139, option140, option141, option143}) + + case 25: + var option146 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option146 = witTypes.None[[]string]() + case 1: + result145 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result145 = append(result145, value144) + } + + option146 = witTypes.Some[[]string](result145) + default: + panic("unreachable") + } + var option147 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option147 = witTypes.None[uint32]() + case 1: + + option147 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option148 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option148 = witTypes.None[uint32]() + case 1: + + option148 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option146, option147, option148}) + + case 26: + var option151 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option151 = witTypes.None[[]string]() + case 1: + result150 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value149 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result150 = append(result150, value149) + } + + option151 = witTypes.Some[[]string](result150) + default: + panic("unreachable") + } + var option154 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option154 = witTypes.None[[]string]() + case 1: + result153 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value152 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result153 = append(result153, value152) + } + + option154 = witTypes.Some[[]string](result153) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option151, option154}) + + case 27: + var option157 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option157 = witTypes.None[[]string]() + case 1: + result156 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value155 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result156 = append(result156, value155) + } + + option157 = witTypes.Some[[]string](result156) + default: + panic("unreachable") + } + var option160 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option160 = witTypes.None[[]string]() + case 1: + result159 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value158 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result159 = append(result159, value158) + } + + option160 = witTypes.Some[[]string](result159) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option157, option160}) + + case 28: + + variant196 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant196 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value161 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result163 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value162 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result163 = append(result163, value162) + } + + var option165 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option165 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value164 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option165 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value164}) + default: + panic("unreachable") + } + var option167 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option167 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value166 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option167 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value166}) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value161, result163, option165, option167}) + + case 31: + result189 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value168 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant177 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant177 = golem_core_types.MakeDiscriminatorRulePrefix(value169) + + case 1: + value170 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant177 = golem_core_types.MakeDiscriminatorRuleSuffix(value170) + + case 2: + value171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant177 = golem_core_types.MakeDiscriminatorRuleContains(value171) + + case 3: + value172 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant177 = golem_core_types.MakeDiscriminatorRuleRegex(value172) + + case 4: + value173 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option175 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option175 = witTypes.None[string]() + case 1: + value174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option175 = witTypes.Some[string](value174) + default: + panic("unreachable") + } + + variant177 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value173, option175}) + + case 5: + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant177 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value176) + + default: + panic("unreachable") + } + var option179 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option179 = witTypes.None[string]() + case 1: + value178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option179 = witTypes.Some[string](value178) + default: + panic("unreachable") + } + result181 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result181 = append(result181, value180) + } + + result183 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result183 = append(result183, value182) + } + + var option185 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option185 = witTypes.None[string]() + case 1: + value184 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option185 = witTypes.Some[string](value184) + default: + panic("unreachable") + } + var option188 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option188 = witTypes.None[golem_core_types.Role]() + case 1: + var variant187 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant187 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant187 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant187 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant187 = golem_core_types.MakeRoleOther(value186) + + default: + panic("unreachable") + } + + option188 = witTypes.Some[golem_core_types.Role](variant187) + default: + panic("unreachable") + } + + result189 = append(result189, golem_core_types.UnionBranch{value168, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant177, golem_core_types.MetadataEnvelope{option179, result181, result183, option185, option188}}) + } + + variant196 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result189}) + + case 32: + var option191 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option191 = witTypes.None[string]() + case 1: + value190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option191 = witTypes.Some[string](value190) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option191}) + + case 33: + var option193 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option193 = witTypes.None[string]() + case 1: + value192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option193 = witTypes.Some[string](value192) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option193}) + + case 34: + var option194 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option194 = witTypes.None[int32]() + case 1: + + option194 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyFutureType(option194) + + case 35: + var option195 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option195 = witTypes.None[int32]() + case 1: + + option195 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant196 = golem_core_types.MakeSchemaTypeBodyStreamType(option195) + + default: + panic("unreachable") + } + var option198 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option198 = witTypes.None[string]() + case 1: + value197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option198 = witTypes.Some[string](value197) + default: + panic("unreachable") + } + result200 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result200 = append(result200, value199) + } + + result202 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result202 = append(result202, value201) + } + + var option204 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option204 = witTypes.None[string]() + case 1: + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option204 = witTypes.Some[string](value203) + default: + panic("unreachable") + } + var option207 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option207 = witTypes.None[golem_core_types.Role]() + case 1: + var variant206 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant206 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant206 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant206 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant206 = golem_core_types.MakeRoleOther(value205) + + default: + panic("unreachable") + } + + option207 = witTypes.Some[golem_core_types.Role](variant206) + default: + panic("unreachable") + } + + result208 = append(result208, golem_core_types.SchemaTypeNode{variant196, golem_core_types.MetadataEnvelope{option198, result200, result202, option204, option207}}) + } + + result212 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4))))), index*(6*4)) + value209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option211 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option211 = witTypes.None[string]() + case 1: + value210 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option211 = witTypes.Some[string](value210) + default: + panic("unreachable") + } + + result212 = append(result212, golem_core_types.SchemaTypeDef{value209, option211, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result236 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4))))), index*(16+4*4)) + var variant235 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant235 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant235 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant235 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant235 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant235 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant235 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant235 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant235 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant235 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant235 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant235 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant235 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value213 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant235 = golem_core_types.MakeSchemaValueNodeStringValue(value213) + + case 13: + result214 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result214 = append(result214, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant235 = golem_core_types.MakeSchemaValueNodeRecordValue(result214) + + case 14: + var option215 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option215 = witTypes.None[int32]() + case 1: + + option215 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant235 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option215}) + + case 15: + + variant235 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result216 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result216 = append(result216, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant235 = golem_core_types.MakeSchemaValueNodeFlagsValue(result216) + + case 17: + result217 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result217 = append(result217, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant235 = golem_core_types.MakeSchemaValueNodeTupleValue(result217) + + case 18: + result218 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result218 = append(result218, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant235 = golem_core_types.MakeSchemaValueNodeListValue(result218) + + case 19: + result219 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result219 = append(result219, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant235 = golem_core_types.MakeSchemaValueNodeFixedListValue(result219) + + case 20: + result220 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result220 = append(result220, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant235 = golem_core_types.MakeSchemaValueNodeMapValue(result220) + + case 21: + var option221 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option221 = witTypes.None[int32]() + case 1: + + option221 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant235 = golem_core_types.MakeSchemaValueNodeOptionValue(option221) + + case 22: + var variant224 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option222 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option222 = witTypes.None[int32]() + case 1: + + option222 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant224 = golem_core_types.MakeResultValuePayloadOkValue(option222) + + case 1: + var option223 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option223 = witTypes.None[int32]() + case 1: + + option223 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant224 = golem_core_types.MakeResultValuePayloadErrValue(option223) + + default: + panic("unreachable") + } + + variant235 = golem_core_types.MakeSchemaValueNodeResultValue(variant224) + + case 23: + value225 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option227 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option227 = witTypes.None[string]() + case 1: + value226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option227 = witTypes.Some[string](value226) + default: + panic("unreachable") + } + + variant235 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value225, option227}) + + case 24: + value228 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option230 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option230 = witTypes.None[string]() + case 1: + value229 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option230 = witTypes.Some[string](value229) + default: + panic("unreachable") + } + + variant235 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value228, option230}) + + case 25: + value231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant235 = golem_core_types.MakeSchemaValueNodePathValue(value231) + + case 26: + value232 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant235 = golem_core_types.MakeSchemaValueNodeUrlValue(value232) + + case 27: + + variant235 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant235 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value233 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant235 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value233}) + + case 30: + value234 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant235 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value234, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant235 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant235 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result236 = append(result236, variant235) + } + + variant237 = golem_agent_common.MakeAgentErrorCustomError(golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result208, result212, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4)))}, golem_core_types.SchemaValueTree{result236, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4)))}}) + + default: + panic("unreachable") + } + + result238 = witTypes.Err[string, golem_agent_common.AgentError](variant237) + default: + panic("unreachable") + } + result239 := result238 + return result239 + +} + +//go:wasmimport golem:agent/host@2.0.0 parse-agent-id +func wasm_import_parse_agent_id(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func ParseAgentId(agentId string) witTypes.Result[witTypes.Tuple3[string, golem_core_types.TypedSchemaValue, witTypes.Option[golem_core_types.Uuid]], golem_agent_common.AgentError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (32 + 10*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(agentId)) + pinner.Pin(utf8) + wasm_import_parse_agent_id(uintptr(utf8), uint32(len(agentId)), returnArea) + var result411 witTypes.Result[witTypes.Tuple3[string, golem_core_types.TypedSchemaValue, witTypes.Option[golem_core_types.Uuid]], golem_agent_common.AgentError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + result172 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))))), index*(56+22*4)) + var variant160 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant160 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant160 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option4 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option4 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option1 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant0 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant0 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant0 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant0 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1 = witTypes.Some[golem_core_types.NumericBound](variant0) + default: + panic("unreachable") + } + var option3 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option3 = witTypes.None[string]() + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option3 = witTypes.Some[string](value2) + default: + panic("unreachable") + } + + option4 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option, option1, option3}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS8Type(option4) + + case 3: + var option11 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option11 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option6 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option6 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant5 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant5 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant5 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant5 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option6 = witTypes.Some[golem_core_types.NumericBound](variant5) + default: + panic("unreachable") + } + var option8 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option8 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant7 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant7 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant7 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant7 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option8 = witTypes.Some[golem_core_types.NumericBound](variant7) + default: + panic("unreachable") + } + var option10 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option10 = witTypes.None[string]() + case 1: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option10 = witTypes.Some[string](value9) + default: + panic("unreachable") + } + + option11 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option6, option8, option10}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS16Type(option11) + + case 4: + var option18 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option18 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option13 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option13 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant12 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant12 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant12 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant12 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option13 = witTypes.Some[golem_core_types.NumericBound](variant12) + default: + panic("unreachable") + } + var option15 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option15 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant14 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant14 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant14 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant14 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option15 = witTypes.Some[golem_core_types.NumericBound](variant14) + default: + panic("unreachable") + } + var option17 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option17 = witTypes.None[string]() + case 1: + value16 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option17 = witTypes.Some[string](value16) + default: + panic("unreachable") + } + + option18 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option13, option15, option17}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS32Type(option18) + + case 5: + var option25 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option25 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option20 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option20 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant19 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant19 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant19 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant19 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option20 = witTypes.Some[golem_core_types.NumericBound](variant19) + default: + panic("unreachable") + } + var option22 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option22 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant21 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant21 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant21 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant21 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option22 = witTypes.Some[golem_core_types.NumericBound](variant21) + default: + panic("unreachable") + } + var option24 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option24 = witTypes.None[string]() + case 1: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option24 = witTypes.Some[string](value23) + default: + panic("unreachable") + } + + option25 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option20, option22, option24}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS64Type(option25) + + case 6: + var option32 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option32 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option27 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option27 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant26 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant26 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant26 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant26 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option27 = witTypes.Some[golem_core_types.NumericBound](variant26) + default: + panic("unreachable") + } + var option29 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option29 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant28 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant28 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant28 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant28 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option29 = witTypes.Some[golem_core_types.NumericBound](variant28) + default: + panic("unreachable") + } + var option31 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option31 = witTypes.None[string]() + case 1: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option31 = witTypes.Some[string](value30) + default: + panic("unreachable") + } + + option32 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option27, option29, option31}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU8Type(option32) + + case 7: + var option39 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option39 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option34 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option34 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant33 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant33 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant33 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant33 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option34 = witTypes.Some[golem_core_types.NumericBound](variant33) + default: + panic("unreachable") + } + var option36 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option36 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant35 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant35 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant35 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant35 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option36 = witTypes.Some[golem_core_types.NumericBound](variant35) + default: + panic("unreachable") + } + var option38 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option38 = witTypes.None[string]() + case 1: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option38 = witTypes.Some[string](value37) + default: + panic("unreachable") + } + + option39 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option34, option36, option38}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU16Type(option39) + + case 8: + var option46 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option46 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option41 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant40 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant40 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant40 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant40 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericBound](variant40) + default: + panic("unreachable") + } + var option43 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option43 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant42 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant42 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant42 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant42 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option43 = witTypes.Some[golem_core_types.NumericBound](variant42) + default: + panic("unreachable") + } + var option45 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option45 = witTypes.None[string]() + case 1: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option45 = witTypes.Some[string](value44) + default: + panic("unreachable") + } + + option46 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option41, option43, option45}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU32Type(option46) + + case 9: + var option53 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option53 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option48 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant47 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant47 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant47 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant47 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericBound](variant47) + default: + panic("unreachable") + } + var option50 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option50 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant49 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant49 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant49 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant49 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option50 = witTypes.Some[golem_core_types.NumericBound](variant49) + default: + panic("unreachable") + } + var option52 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option52 = witTypes.None[string]() + case 1: + value51 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option52 = witTypes.Some[string](value51) + default: + panic("unreachable") + } + + option53 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option48, option50, option52}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU64Type(option53) + + case 10: + var option60 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option60 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option55 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant54 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant54 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant54 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant54 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericBound](variant54) + default: + panic("unreachable") + } + var option57 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option57 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant56 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant56 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant56 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant56 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option57 = witTypes.Some[golem_core_types.NumericBound](variant56) + default: + panic("unreachable") + } + var option59 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option59 = witTypes.None[string]() + case 1: + value58 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option59 = witTypes.Some[string](value58) + default: + panic("unreachable") + } + + option60 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option55, option57, option59}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyF32Type(option60) + + case 11: + var option67 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option67 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option62 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant61 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant61 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant61 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant61 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericBound](variant61) + default: + panic("unreachable") + } + var option64 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option64 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant63 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant63 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant63 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant63 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option64 = witTypes.Some[golem_core_types.NumericBound](variant63) + default: + panic("unreachable") + } + var option66 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option66 = witTypes.None[string]() + case 1: + value65 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option66 = witTypes.Some[string](value65) + default: + panic("unreachable") + } + + option67 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option62, option64, option66}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyF64Type(option67) + + case 12: + + variant160 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant160 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result79 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value68 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option70 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option70 = witTypes.None[string]() + case 1: + value69 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option70 = witTypes.Some[string](value69) + default: + panic("unreachable") + } + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value71 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value71) + } + + result73 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value72 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result73 = append(result73, value72) + } + + var option75 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option75 = witTypes.None[string]() + case 1: + value74 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option75 = witTypes.Some[string](value74) + default: + panic("unreachable") + } + var option78 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option78 = witTypes.None[golem_core_types.Role]() + case 1: + var variant77 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant77 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant77 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant77 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value76 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant77 = golem_core_types.MakeRoleOther(value76) + + default: + panic("unreachable") + } + + option78 = witTypes.Some[golem_core_types.Role](variant77) + default: + panic("unreachable") + } + + result79 = append(result79, golem_core_types.NamedFieldType{value68, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option70, result, result73, option75, option78}}) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyRecordType(result79) + + case 15: + result93 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value80 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option81 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option81 = witTypes.None[int32]() + case 1: + + option81 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option83 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option83 = witTypes.None[string]() + case 1: + value82 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option83 = witTypes.Some[string](value82) + default: + panic("unreachable") + } + result85 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value84 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result85 = append(result85, value84) + } + + result87 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value86 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result87 = append(result87, value86) + } + + var option89 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option89 = witTypes.None[string]() + case 1: + value88 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option89 = witTypes.Some[string](value88) + default: + panic("unreachable") + } + var option92 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option92 = witTypes.None[golem_core_types.Role]() + case 1: + var variant91 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant91 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant91 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant91 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value90 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant91 = golem_core_types.MakeRoleOther(value90) + + default: + panic("unreachable") + } + + option92 = witTypes.Some[golem_core_types.Role](variant91) + default: + panic("unreachable") + } + + result93 = append(result93, golem_core_types.VariantCaseType{value80, option81, golem_core_types.MetadataEnvelope{option83, result85, result87, option89, option92}}) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyVariantType(result93) + + case 16: + result95 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value94 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result95 = append(result95, value94) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyEnumType(result95) + + case 17: + result97 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value96 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result97 = append(result97, value96) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyFlagsType(result97) + + case 18: + result98 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result98 = append(result98, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyTupleType(result98) + + case 19: + + variant160 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant160 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant160 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant160 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option99 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option99 = witTypes.None[int32]() + case 1: + + option99 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option100 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option100 = witTypes.None[int32]() + case 1: + + option100 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option99, option100}) + + case 24: + var option103 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option103 = witTypes.None[[]string]() + case 1: + result102 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value101 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result102 = append(result102, value101) + } + + option103 = witTypes.Some[[]string](result102) + default: + panic("unreachable") + } + var option104 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option104 = witTypes.None[uint32]() + case 1: + + option104 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option105 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option105 = witTypes.None[uint32]() + case 1: + + option105 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option107 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option107 = witTypes.None[string]() + case 1: + value106 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option107 = witTypes.Some[string](value106) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option103, option104, option105, option107}) + + case 25: + var option110 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option110 = witTypes.None[[]string]() + case 1: + result109 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value108 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result109 = append(result109, value108) + } + + option110 = witTypes.Some[[]string](result109) + default: + panic("unreachable") + } + var option111 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option111 = witTypes.None[uint32]() + case 1: + + option111 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option112 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option112 = witTypes.None[uint32]() + case 1: + + option112 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option110, option111, option112}) + + case 26: + var option115 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option115 = witTypes.None[[]string]() + case 1: + result114 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value113 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result114 = append(result114, value113) + } + + option115 = witTypes.Some[[]string](result114) + default: + panic("unreachable") + } + var option118 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option118 = witTypes.None[[]string]() + case 1: + result117 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value116 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result117 = append(result117, value116) + } + + option118 = witTypes.Some[[]string](result117) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option115, option118}) + + case 27: + var option121 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option121 = witTypes.None[[]string]() + case 1: + result120 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value119 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result120 = append(result120, value119) + } + + option121 = witTypes.Some[[]string](result120) + default: + panic("unreachable") + } + var option124 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option124 = witTypes.None[[]string]() + case 1: + result123 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value122 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result123 = append(result123, value122) + } + + option124 = witTypes.Some[[]string](result123) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option121, option124}) + + case 28: + + variant160 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant160 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value125 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result127 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result127 = append(result127, value126) + } + + var option129 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option129 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option129 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value128}) + default: + panic("unreachable") + } + var option131 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option131 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option131 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value130}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value125, result127, option129, option131}) + + case 31: + result153 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant141 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value133 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRulePrefix(value133) + + case 1: + value134 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleSuffix(value134) + + case 2: + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleContains(value135) + + case 3: + value136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleRegex(value136) + + case 4: + value137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option139 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option139 = witTypes.None[string]() + case 1: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option139 = witTypes.Some[string](value138) + default: + panic("unreachable") + } + + variant141 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value137, option139}) + + case 5: + value140 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value140) + + default: + panic("unreachable") + } + var option143 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option143 = witTypes.None[string]() + case 1: + value142 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option143 = witTypes.Some[string](value142) + default: + panic("unreachable") + } + result145 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result145 = append(result145, value144) + } + + result147 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result147 = append(result147, value146) + } + + var option149 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option149 = witTypes.None[string]() + case 1: + value148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option149 = witTypes.Some[string](value148) + default: + panic("unreachable") + } + var option152 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option152 = witTypes.None[golem_core_types.Role]() + case 1: + var variant151 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant151 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant151 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant151 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant151 = golem_core_types.MakeRoleOther(value150) + + default: + panic("unreachable") + } + + option152 = witTypes.Some[golem_core_types.Role](variant151) + default: + panic("unreachable") + } + + result153 = append(result153, golem_core_types.UnionBranch{value132, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant141, golem_core_types.MetadataEnvelope{option143, result145, result147, option149, option152}}) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result153}) + + case 32: + var option155 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option155 = witTypes.None[string]() + case 1: + value154 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option155 = witTypes.Some[string](value154) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option155}) + + case 33: + var option157 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option157 = witTypes.None[string]() + case 1: + value156 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option157 = witTypes.Some[string](value156) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option157}) + + case 34: + var option158 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option158 = witTypes.None[int32]() + case 1: + + option158 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyFutureType(option158) + + case 35: + var option159 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option159 = witTypes.None[int32]() + case 1: + + option159 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyStreamType(option159) + + default: + panic("unreachable") + } + var option162 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option162 = witTypes.None[string]() + case 1: + value161 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option162 = witTypes.Some[string](value161) + default: + panic("unreachable") + } + result164 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result164 = append(result164, value163) + } + + result166 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value165 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result166 = append(result166, value165) + } + + var option168 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option168 = witTypes.None[string]() + case 1: + value167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option168 = witTypes.Some[string](value167) + default: + panic("unreachable") + } + var option171 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option171 = witTypes.None[golem_core_types.Role]() + case 1: + var variant170 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant170 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant170 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant170 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant170 = golem_core_types.MakeRoleOther(value169) + + default: + panic("unreachable") + } + + option171 = witTypes.Some[golem_core_types.Role](variant170) + default: + panic("unreachable") + } + + result172 = append(result172, golem_core_types.SchemaTypeNode{variant160, golem_core_types.MetadataEnvelope{option162, result164, result166, option168, option171}}) + } + + result176 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4))))), index*(6*4)) + value173 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option175 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option175 = witTypes.None[string]() + case 1: + value174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option175 = witTypes.Some[string](value174) + default: + panic("unreachable") + } + + result176 = append(result176, golem_core_types.SchemaTypeDef{value173, option175, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result200 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 7*4))))), index*(16+4*4)) + var variant199 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant199 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant199 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant199 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant199 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant199 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant199 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant199 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant199 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant199 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant199 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant199 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant199 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value177 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeStringValue(value177) + + case 13: + result178 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result178 = append(result178, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeRecordValue(result178) + + case 14: + var option179 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option179 = witTypes.None[int32]() + case 1: + + option179 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option179}) + + case 15: + + variant199 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result180 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result180 = append(result180, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant199 = golem_core_types.MakeSchemaValueNodeFlagsValue(result180) + + case 17: + result181 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result181 = append(result181, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeTupleValue(result181) + + case 18: + result182 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result182 = append(result182, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeListValue(result182) + + case 19: + result183 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result183 = append(result183, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeFixedListValue(result183) + + case 20: + result184 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result184 = append(result184, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant199 = golem_core_types.MakeSchemaValueNodeMapValue(result184) + + case 21: + var option185 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option185 = witTypes.None[int32]() + case 1: + + option185 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeOptionValue(option185) + + case 22: + var variant188 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option186 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option186 = witTypes.None[int32]() + case 1: + + option186 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant188 = golem_core_types.MakeResultValuePayloadOkValue(option186) + + case 1: + var option187 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option187 = witTypes.None[int32]() + case 1: + + option187 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant188 = golem_core_types.MakeResultValuePayloadErrValue(option187) + + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeResultValue(variant188) + + case 23: + value189 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option191 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option191 = witTypes.None[string]() + case 1: + value190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option191 = witTypes.Some[string](value190) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value189, option191}) + + case 24: + value192 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option194 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option194 = witTypes.None[string]() + case 1: + value193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option194 = witTypes.Some[string](value193) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value192, option194}) + + case 25: + value195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodePathValue(value195) + + case 26: + value196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeUrlValue(value196) + + case 27: + + variant199 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant199 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value197}) + + case 30: + value198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value198, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant199 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant199 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result200 = append(result200, variant199) + } + + var option201 witTypes.Option[golem_core_types.Uuid] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 10*4)))) { + case 0: + + option201 = witTypes.None[golem_core_types.Uuid]() + case 1: + + option201 = witTypes.Some[golem_core_types.Uuid](golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 10*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 10*4))))}) + default: + panic("unreachable") + } + + result411 = witTypes.Ok[witTypes.Tuple3[string, golem_core_types.TypedSchemaValue, witTypes.Option[golem_core_types.Uuid]], golem_agent_common.AgentError](witTypes.Tuple3[string, golem_core_types.TypedSchemaValue, witTypes.Option[golem_core_types.Uuid]]{value, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result172, result176, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 6*4)))}, golem_core_types.SchemaValueTree{result200, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 9*4)))}}, option201}) + case 1: + var variant410 golem_agent_common.AgentError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value202 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant410 = golem_agent_common.MakeAgentErrorInvalidInput(value202) + + case 1: + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant410 = golem_agent_common.MakeAgentErrorInvalidMethod(value203) + + case 2: + value204 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant410 = golem_agent_common.MakeAgentErrorInvalidType(value204) + + case 3: + value205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant410 = golem_agent_common.MakeAgentErrorInvalidAgentId(value205) + + case 4: + result381 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))))), index*(56+22*4)) + var variant369 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant369 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant369 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option212 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option212 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option207 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option207 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant206 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant206 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant206 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant206 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option207 = witTypes.Some[golem_core_types.NumericBound](variant206) + default: + panic("unreachable") + } + var option209 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option209 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant208 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant208 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant208 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant208 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option209 = witTypes.Some[golem_core_types.NumericBound](variant208) + default: + panic("unreachable") + } + var option211 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option211 = witTypes.None[string]() + case 1: + value210 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option211 = witTypes.Some[string](value210) + default: + panic("unreachable") + } + + option212 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option207, option209, option211}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyS8Type(option212) + + case 3: + var option219 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option219 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option214 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option214 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant213 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant213 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant213 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant213 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option214 = witTypes.Some[golem_core_types.NumericBound](variant213) + default: + panic("unreachable") + } + var option216 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option216 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant215 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant215 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant215 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant215 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option216 = witTypes.Some[golem_core_types.NumericBound](variant215) + default: + panic("unreachable") + } + var option218 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option218 = witTypes.None[string]() + case 1: + value217 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option218 = witTypes.Some[string](value217) + default: + panic("unreachable") + } + + option219 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option214, option216, option218}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyS16Type(option219) + + case 4: + var option226 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option226 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option221 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option221 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant220 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant220 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant220 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant220 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option221 = witTypes.Some[golem_core_types.NumericBound](variant220) + default: + panic("unreachable") + } + var option223 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option223 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant222 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant222 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant222 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant222 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option223 = witTypes.Some[golem_core_types.NumericBound](variant222) + default: + panic("unreachable") + } + var option225 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option225 = witTypes.None[string]() + case 1: + value224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option225 = witTypes.Some[string](value224) + default: + panic("unreachable") + } + + option226 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option221, option223, option225}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyS32Type(option226) + + case 5: + var option233 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option233 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option228 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option228 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant227 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant227 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant227 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant227 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option228 = witTypes.Some[golem_core_types.NumericBound](variant227) + default: + panic("unreachable") + } + var option230 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option230 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant229 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant229 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant229 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant229 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option230 = witTypes.Some[golem_core_types.NumericBound](variant229) + default: + panic("unreachable") + } + var option232 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option232 = witTypes.None[string]() + case 1: + value231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option232 = witTypes.Some[string](value231) + default: + panic("unreachable") + } + + option233 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option228, option230, option232}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyS64Type(option233) + + case 6: + var option240 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option240 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option235 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option235 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant234 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant234 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant234 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant234 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option235 = witTypes.Some[golem_core_types.NumericBound](variant234) + default: + panic("unreachable") + } + var option237 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option237 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant236 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant236 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant236 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant236 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option237 = witTypes.Some[golem_core_types.NumericBound](variant236) + default: + panic("unreachable") + } + var option239 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option239 = witTypes.None[string]() + case 1: + value238 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option239 = witTypes.Some[string](value238) + default: + panic("unreachable") + } + + option240 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option235, option237, option239}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyU8Type(option240) + + case 7: + var option247 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option247 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option242 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option242 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant241 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant241 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant241 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant241 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option242 = witTypes.Some[golem_core_types.NumericBound](variant241) + default: + panic("unreachable") + } + var option244 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option244 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant243 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant243 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant243 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant243 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option244 = witTypes.Some[golem_core_types.NumericBound](variant243) + default: + panic("unreachable") + } + var option246 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option246 = witTypes.None[string]() + case 1: + value245 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option246 = witTypes.Some[string](value245) + default: + panic("unreachable") + } + + option247 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option242, option244, option246}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyU16Type(option247) + + case 8: + var option254 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option254 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option249 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option249 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant248 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant248 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant248 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant248 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option249 = witTypes.Some[golem_core_types.NumericBound](variant248) + default: + panic("unreachable") + } + var option251 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option251 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant250 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant250 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant250 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant250 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option251 = witTypes.Some[golem_core_types.NumericBound](variant250) + default: + panic("unreachable") + } + var option253 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option253 = witTypes.None[string]() + case 1: + value252 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option253 = witTypes.Some[string](value252) + default: + panic("unreachable") + } + + option254 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option249, option251, option253}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyU32Type(option254) + + case 9: + var option261 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option261 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option256 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option256 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant255 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant255 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant255 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant255 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option256 = witTypes.Some[golem_core_types.NumericBound](variant255) + default: + panic("unreachable") + } + var option258 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option258 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant257 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant257 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant257 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant257 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option258 = witTypes.Some[golem_core_types.NumericBound](variant257) + default: + panic("unreachable") + } + var option260 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option260 = witTypes.None[string]() + case 1: + value259 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option260 = witTypes.Some[string](value259) + default: + panic("unreachable") + } + + option261 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option256, option258, option260}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyU64Type(option261) + + case 10: + var option268 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option268 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option263 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option263 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant262 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant262 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant262 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant262 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option263 = witTypes.Some[golem_core_types.NumericBound](variant262) + default: + panic("unreachable") + } + var option265 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option265 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant264 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant264 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant264 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant264 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option265 = witTypes.Some[golem_core_types.NumericBound](variant264) + default: + panic("unreachable") + } + var option267 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option267 = witTypes.None[string]() + case 1: + value266 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option267 = witTypes.Some[string](value266) + default: + panic("unreachable") + } + + option268 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option263, option265, option267}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyF32Type(option268) + + case 11: + var option275 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option275 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option270 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option270 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant269 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant269 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant269 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant269 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option270 = witTypes.Some[golem_core_types.NumericBound](variant269) + default: + panic("unreachable") + } + var option272 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option272 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant271 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant271 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant271 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant271 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option272 = witTypes.Some[golem_core_types.NumericBound](variant271) + default: + panic("unreachable") + } + var option274 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option274 = witTypes.None[string]() + case 1: + value273 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option274 = witTypes.Some[string](value273) + default: + panic("unreachable") + } + + option275 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option270, option272, option274}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyF64Type(option275) + + case 12: + + variant369 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant369 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result288 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value276 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option278 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option278 = witTypes.None[string]() + case 1: + value277 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option278 = witTypes.Some[string](value277) + default: + panic("unreachable") + } + result280 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value279 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result280 = append(result280, value279) + } + + result282 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value281 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result282 = append(result282, value281) + } + + var option284 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option284 = witTypes.None[string]() + case 1: + value283 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option284 = witTypes.Some[string](value283) + default: + panic("unreachable") + } + var option287 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option287 = witTypes.None[golem_core_types.Role]() + case 1: + var variant286 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant286 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant286 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant286 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant286 = golem_core_types.MakeRoleOther(value285) + + default: + panic("unreachable") + } + + option287 = witTypes.Some[golem_core_types.Role](variant286) + default: + panic("unreachable") + } + + result288 = append(result288, golem_core_types.NamedFieldType{value276, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option278, result280, result282, option284, option287}}) + } + + variant369 = golem_core_types.MakeSchemaTypeBodyRecordType(result288) + + case 15: + result302 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value289 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option290 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option290 = witTypes.None[int32]() + case 1: + + option290 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option292 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option292 = witTypes.None[string]() + case 1: + value291 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option292 = witTypes.Some[string](value291) + default: + panic("unreachable") + } + result294 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value293 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result294 = append(result294, value293) + } + + result296 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value295 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result296 = append(result296, value295) + } + + var option298 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option298 = witTypes.None[string]() + case 1: + value297 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option298 = witTypes.Some[string](value297) + default: + panic("unreachable") + } + var option301 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option301 = witTypes.None[golem_core_types.Role]() + case 1: + var variant300 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant300 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant300 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant300 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value299 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant300 = golem_core_types.MakeRoleOther(value299) + + default: + panic("unreachable") + } + + option301 = witTypes.Some[golem_core_types.Role](variant300) + default: + panic("unreachable") + } + + result302 = append(result302, golem_core_types.VariantCaseType{value289, option290, golem_core_types.MetadataEnvelope{option292, result294, result296, option298, option301}}) + } + + variant369 = golem_core_types.MakeSchemaTypeBodyVariantType(result302) + + case 16: + result304 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value303 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result304 = append(result304, value303) + } + + variant369 = golem_core_types.MakeSchemaTypeBodyEnumType(result304) + + case 17: + result306 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value305 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result306 = append(result306, value305) + } + + variant369 = golem_core_types.MakeSchemaTypeBodyFlagsType(result306) + + case 18: + result307 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result307 = append(result307, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant369 = golem_core_types.MakeSchemaTypeBodyTupleType(result307) + + case 19: + + variant369 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant369 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant369 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant369 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option308 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option308 = witTypes.None[int32]() + case 1: + + option308 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option309 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option309 = witTypes.None[int32]() + case 1: + + option309 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option308, option309}) + + case 24: + var option312 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option312 = witTypes.None[[]string]() + case 1: + result311 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value310 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result311 = append(result311, value310) + } + + option312 = witTypes.Some[[]string](result311) + default: + panic("unreachable") + } + var option313 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option313 = witTypes.None[uint32]() + case 1: + + option313 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option314 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option314 = witTypes.None[uint32]() + case 1: + + option314 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option316 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option316 = witTypes.None[string]() + case 1: + value315 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option316 = witTypes.Some[string](value315) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option312, option313, option314, option316}) + + case 25: + var option319 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option319 = witTypes.None[[]string]() + case 1: + result318 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value317 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result318 = append(result318, value317) + } + + option319 = witTypes.Some[[]string](result318) + default: + panic("unreachable") + } + var option320 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option320 = witTypes.None[uint32]() + case 1: + + option320 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option321 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option321 = witTypes.None[uint32]() + case 1: + + option321 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option319, option320, option321}) + + case 26: + var option324 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option324 = witTypes.None[[]string]() + case 1: + result323 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value322 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result323 = append(result323, value322) + } + + option324 = witTypes.Some[[]string](result323) + default: + panic("unreachable") + } + var option327 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option327 = witTypes.None[[]string]() + case 1: + result326 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value325 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result326 = append(result326, value325) + } + + option327 = witTypes.Some[[]string](result326) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option324, option327}) + + case 27: + var option330 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option330 = witTypes.None[[]string]() + case 1: + result329 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value328 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result329 = append(result329, value328) + } + + option330 = witTypes.Some[[]string](result329) + default: + panic("unreachable") + } + var option333 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option333 = witTypes.None[[]string]() + case 1: + result332 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value331 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result332 = append(result332, value331) + } + + option333 = witTypes.Some[[]string](result332) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option330, option333}) + + case 28: + + variant369 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant369 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value334 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result336 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value335 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result336 = append(result336, value335) + } + + var option338 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option338 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value337 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option338 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value337}) + default: + panic("unreachable") + } + var option340 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option340 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value339 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option340 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value339}) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value334, result336, option338, option340}) + + case 31: + result362 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value341 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant350 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value342 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant350 = golem_core_types.MakeDiscriminatorRulePrefix(value342) + + case 1: + value343 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant350 = golem_core_types.MakeDiscriminatorRuleSuffix(value343) + + case 2: + value344 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant350 = golem_core_types.MakeDiscriminatorRuleContains(value344) + + case 3: + value345 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant350 = golem_core_types.MakeDiscriminatorRuleRegex(value345) + + case 4: + value346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option348 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option348 = witTypes.None[string]() + case 1: + value347 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option348 = witTypes.Some[string](value347) + default: + panic("unreachable") + } + + variant350 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value346, option348}) + + case 5: + value349 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant350 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value349) + + default: + panic("unreachable") + } + var option352 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option352 = witTypes.None[string]() + case 1: + value351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option352 = witTypes.Some[string](value351) + default: + panic("unreachable") + } + result354 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value353 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result354 = append(result354, value353) + } + + result356 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value355 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result356 = append(result356, value355) + } + + var option358 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option358 = witTypes.None[string]() + case 1: + value357 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option358 = witTypes.Some[string](value357) + default: + panic("unreachable") + } + var option361 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option361 = witTypes.None[golem_core_types.Role]() + case 1: + var variant360 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant360 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant360 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant360 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value359 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant360 = golem_core_types.MakeRoleOther(value359) + + default: + panic("unreachable") + } + + option361 = witTypes.Some[golem_core_types.Role](variant360) + default: + panic("unreachable") + } + + result362 = append(result362, golem_core_types.UnionBranch{value341, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant350, golem_core_types.MetadataEnvelope{option352, result354, result356, option358, option361}}) + } + + variant369 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result362}) + + case 32: + var option364 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option364 = witTypes.None[string]() + case 1: + value363 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option364 = witTypes.Some[string](value363) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option364}) + + case 33: + var option366 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option366 = witTypes.None[string]() + case 1: + value365 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option366 = witTypes.Some[string](value365) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option366}) + + case 34: + var option367 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option367 = witTypes.None[int32]() + case 1: + + option367 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyFutureType(option367) + + case 35: + var option368 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option368 = witTypes.None[int32]() + case 1: + + option368 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant369 = golem_core_types.MakeSchemaTypeBodyStreamType(option368) + + default: + panic("unreachable") + } + var option371 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option371 = witTypes.None[string]() + case 1: + value370 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option371 = witTypes.Some[string](value370) + default: + panic("unreachable") + } + result373 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value372 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result373 = append(result373, value372) + } + + result375 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value374 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result375 = append(result375, value374) + } + + var option377 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option377 = witTypes.None[string]() + case 1: + value376 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option377 = witTypes.Some[string](value376) + default: + panic("unreachable") + } + var option380 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option380 = witTypes.None[golem_core_types.Role]() + case 1: + var variant379 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant379 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant379 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant379 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant379 = golem_core_types.MakeRoleOther(value378) + + default: + panic("unreachable") + } + + option380 = witTypes.Some[golem_core_types.Role](variant379) + default: + panic("unreachable") + } + + result381 = append(result381, golem_core_types.SchemaTypeNode{variant369, golem_core_types.MetadataEnvelope{option371, result373, result375, option377, option380}}) + } + + result385 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4))))), index*(6*4)) + value382 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option384 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option384 = witTypes.None[string]() + case 1: + value383 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option384 = witTypes.Some[string](value383) + default: + panic("unreachable") + } + + result385 = append(result385, golem_core_types.SchemaTypeDef{value382, option384, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result409 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 6*4))))), index*(16+4*4)) + var variant408 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant408 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant408 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant408 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant408 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant408 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant408 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant408 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant408 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant408 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant408 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant408 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant408 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value386 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant408 = golem_core_types.MakeSchemaValueNodeStringValue(value386) + + case 13: + result387 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result387 = append(result387, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant408 = golem_core_types.MakeSchemaValueNodeRecordValue(result387) + + case 14: + var option388 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option388 = witTypes.None[int32]() + case 1: + + option388 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant408 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option388}) + + case 15: + + variant408 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result389 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result389 = append(result389, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant408 = golem_core_types.MakeSchemaValueNodeFlagsValue(result389) + + case 17: + result390 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result390 = append(result390, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant408 = golem_core_types.MakeSchemaValueNodeTupleValue(result390) + + case 18: + result391 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result391 = append(result391, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant408 = golem_core_types.MakeSchemaValueNodeListValue(result391) + + case 19: + result392 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result392 = append(result392, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant408 = golem_core_types.MakeSchemaValueNodeFixedListValue(result392) + + case 20: + result393 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result393 = append(result393, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant408 = golem_core_types.MakeSchemaValueNodeMapValue(result393) + + case 21: + var option394 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option394 = witTypes.None[int32]() + case 1: + + option394 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant408 = golem_core_types.MakeSchemaValueNodeOptionValue(option394) + + case 22: + var variant397 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option395 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option395 = witTypes.None[int32]() + case 1: + + option395 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant397 = golem_core_types.MakeResultValuePayloadOkValue(option395) + + case 1: + var option396 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option396 = witTypes.None[int32]() + case 1: + + option396 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant397 = golem_core_types.MakeResultValuePayloadErrValue(option396) + + default: + panic("unreachable") + } + + variant408 = golem_core_types.MakeSchemaValueNodeResultValue(variant397) + + case 23: + value398 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option400 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option400 = witTypes.None[string]() + case 1: + value399 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option400 = witTypes.Some[string](value399) + default: + panic("unreachable") + } + + variant408 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value398, option400}) + + case 24: + value401 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option403 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option403 = witTypes.None[string]() + case 1: + value402 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option403 = witTypes.Some[string](value402) + default: + panic("unreachable") + } + + variant408 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value401, option403}) + + case 25: + value404 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant408 = golem_core_types.MakeSchemaValueNodePathValue(value404) + + case 26: + value405 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant408 = golem_core_types.MakeSchemaValueNodeUrlValue(value405) + + case 27: + + variant408 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant408 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant408 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value406}) + + case 30: + value407 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant408 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value407, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant408 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant408 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result409 = append(result409, variant408) + } + + variant410 = golem_agent_common.MakeAgentErrorCustomError(golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result381, result385, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4)))}, golem_core_types.SchemaValueTree{result409, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 8*4)))}}) + + default: + panic("unreachable") + } + + result411 = witTypes.Err[witTypes.Tuple3[string, golem_core_types.TypedSchemaValue, witTypes.Option[golem_core_types.Uuid]], golem_agent_common.AgentError](variant410) + default: + panic("unreachable") + } + result412 := result411 + return result412 + +} + +//go:wasmimport golem:agent/host@2.0.0 create-webhook +func wasm_import_create_webhook(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 int64, arg5 uintptr) + +func CreateWebhook(promiseId golem_core_types.PromiseId) string { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(((promiseId).AgentId).AgentId)) + pinner.Pin(utf8) + wasm_import_create_webhook(int64(((((promiseId).AgentId).ComponentId).Uuid).HighBits), int64(((((promiseId).AgentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len(((promiseId).AgentId).AgentId)), int64((promiseId).OplogIdx), returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + result := value + return result + +} + +//go:wasmimport golem:agent/host@2.0.0 [constructor]wasm-rpc +func wasm_import_constructor_wasm_rpc(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 int32, arg5 int32, arg6 int64, arg7 int64, arg8 uintptr, arg9 uint32) int32 + +func MakeWasmRpc(agentTypeName string, constructor golem_core_types.SchemaValueTree, phantomId witTypes.Option[golem_core_types.Uuid], agentConfig []golem_agent_common.TypedAgentConfigValue) *WasmRpc { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(agentTypeName)) + pinner.Pin(utf8) + slice25 := (constructor).ValueNodes + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(16+4*4)), 8) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result1 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result1, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result1))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice3 := payload + length5 := uint32(len(slice3)) + result4 := witRuntime.Allocate(pinner, uintptr(length5*1), 1) + for index, element := range slice3 { + base := unsafe.Add(result4, index*1) + var result2 int32 + if element { + result2 = 1 + } else { + result2 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result2) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length5) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result4))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice6 := payload + length8 := uint32(len(slice6)) + result7 := witRuntime.Allocate(pinner, uintptr(length8*4), 4) + for index, element := range slice6 { + base := unsafe.Add(result7, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result7))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice9 := payload + length11 := uint32(len(slice9)) + result10 := witRuntime.Allocate(pinner, uintptr(length11*4), 4) + for index, element := range slice9 { + base := unsafe.Add(result10, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result10))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice12 := payload + length14 := uint32(len(slice12)) + result13 := witRuntime.Allocate(pinner, uintptr(length14*4), 4) + for index, element := range slice12 { + base := unsafe.Add(result13, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length14) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result13))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice15 := payload + length17 := uint32(len(slice15)) + result16 := witRuntime.Allocate(pinner, uintptr(length17*8), 4) + for index, element := range slice15 { + base := unsafe.Add(result16, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length17) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result16))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf819))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf821))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf823 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf823))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + var option int32 + var option28 int64 + var option29 int64 + switch phantomId.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option28 = 0 + option29 = 0 + case witTypes.OptionSome: + payload := phantomId.Some() + + option = int32(1) + option28 = int64((payload).HighBits) + option29 = int64((payload).LowBits) + default: + panic("unreachable") + } + slice192 := agentConfig + length194 := uint32(len(slice192)) + result193 := witRuntime.Allocate(pinner, uintptr(length194*(10*4)), 4) + for index, element := range slice192 { + base := unsafe.Add(result193, index*(10*4)) + slice31 := (element).Path + length33 := uint32(len(slice31)) + result32 := witRuntime.Allocate(pinner, uintptr(length33*(2*4)), 4) + for index, element := range slice31 { + base := unsafe.Add(result32, index*(2*4)) + utf830 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf830) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf830))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(length33) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(result32))) + slice152 := (((element).Value).Graph).TypeNodes + length154 := uint32(len(slice152)) + result153 := witRuntime.Allocate(pinner, uintptr(length154*(56+22*4)), 8) + for index, element := range slice152 { + base := unsafe.Add(result153, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf834 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf834) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf834))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf835))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf836 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf836))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf837 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf837) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf837))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf838 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf838) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf838))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf839 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf839) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf839))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf840 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf840) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf840))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf841 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf841) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf841))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf842 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf842) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf842))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf843 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf843) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf843))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice56 := payload + length58 := uint32(len(slice56)) + result57 := witRuntime.Allocate(pinner, uintptr(length58*(17*4)), 4) + for index, element := range slice56 { + base := unsafe.Add(result57, index*(17*4)) + utf844 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf844) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf844))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf845 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf845) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf845))) + + default: + panic("unreachable") + } + slice47 := ((element).Metadata).Aliases + length49 := uint32(len(slice47)) + result48 := witRuntime.Allocate(pinner, uintptr(length49*(2*4)), 4) + for index, element := range slice47 { + base := unsafe.Add(result48, index*(2*4)) + utf846 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf846) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf846))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length49) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result48))) + slice51 := ((element).Metadata).Examples + length53 := uint32(len(slice51)) + result52 := witRuntime.Allocate(pinner, uintptr(length53*(2*4)), 4) + for index, element := range slice51 { + base := unsafe.Add(result52, index*(2*4)) + utf850 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf850) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf850))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length53) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result52))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf854 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf854) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf854))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf855 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf855) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf855))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length58) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result57))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice71 := payload + length73 := uint32(len(slice71)) + result72 := witRuntime.Allocate(pinner, uintptr(length73*(8+16*4)), 4) + for index, element := range slice71 { + base := unsafe.Add(result72, index*(8+16*4)) + utf859 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf859) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf859))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf860 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf860) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf860))) + + default: + panic("unreachable") + } + slice62 := ((element).Metadata).Aliases + length64 := uint32(len(slice62)) + result63 := witRuntime.Allocate(pinner, uintptr(length64*(2*4)), 4) + for index, element := range slice62 { + base := unsafe.Add(result63, index*(2*4)) + utf861 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf861) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf861))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length64) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result63))) + slice66 := ((element).Metadata).Examples + length68 := uint32(len(slice66)) + result67 := witRuntime.Allocate(pinner, uintptr(length68*(2*4)), 4) + for index, element := range slice66 { + base := unsafe.Add(result67, index*(2*4)) + utf865 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf865) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf865))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length68) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result67))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf869 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf869) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf869))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf870 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf870) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf870))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length73) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result72))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice75 := payload + length77 := uint32(len(slice75)) + result76 := witRuntime.Allocate(pinner, uintptr(length77*(2*4)), 4) + for index, element := range slice75 { + base := unsafe.Add(result76, index*(2*4)) + utf874 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf874) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf874))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length77) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result76))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice79 := payload + length81 := uint32(len(slice79)) + result80 := witRuntime.Allocate(pinner, uintptr(length81*(2*4)), 4) + for index, element := range slice79 { + base := unsafe.Add(result80, index*(2*4)) + utf878 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf878) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf878))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result80))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice82 := payload + length84 := uint32(len(slice82)) + result83 := witRuntime.Allocate(pinner, uintptr(length84*4), 4) + for index, element := range slice82 { + base := unsafe.Add(result83, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result83))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice86 := payload + length88 := uint32(len(slice86)) + result87 := witRuntime.Allocate(pinner, uintptr(length88*(2*4)), 4) + for index, element := range slice86 { + base := unsafe.Add(result87, index*(2*4)) + utf885 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf885))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result87))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf889 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf889) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf889))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice91 := payload + length93 := uint32(len(slice91)) + result92 := witRuntime.Allocate(pinner, uintptr(length93*(2*4)), 4) + for index, element := range slice91 { + base := unsafe.Add(result92, index*(2*4)) + utf890 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf890) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf890))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length93) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result92))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice95 := payload + length97 := uint32(len(slice95)) + result96 := witRuntime.Allocate(pinner, uintptr(length97*(2*4)), 4) + for index, element := range slice95 { + base := unsafe.Add(result96, index*(2*4)) + utf894 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf894) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf894))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length97) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result96))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice99 := payload + length101 := uint32(len(slice99)) + result100 := witRuntime.Allocate(pinner, uintptr(length101*(2*4)), 4) + for index, element := range slice99 { + base := unsafe.Add(result100, index*(2*4)) + utf898 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf898) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf898))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result100))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice103 := payload + length105 := uint32(len(slice103)) + result104 := witRuntime.Allocate(pinner, uintptr(length105*(2*4)), 4) + for index, element := range slice103 { + base := unsafe.Add(result104, index*(2*4)) + utf8102 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8102) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8102))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length105) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result104))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice107 := payload + length109 := uint32(len(slice107)) + result108 := witRuntime.Allocate(pinner, uintptr(length109*(2*4)), 4) + for index, element := range slice107 { + base := unsafe.Add(result108, index*(2*4)) + utf8106 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8106) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8106))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length109) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result108))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8110 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf8110) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8110))) + slice112 := (payload).AllowedSuffixes + length114 := uint32(len(slice112)) + result113 := witRuntime.Allocate(pinner, uintptr(length114*(2*4)), 4) + for index, element := range slice112 { + base := unsafe.Add(result113, index*(2*4)) + utf8111 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8111) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8111))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length114) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result113))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf8115 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8115) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf8115))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf8116 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8116) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf8116))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice136 := (payload).Branches + length138 := uint32(len(slice136)) + result137 := witRuntime.Allocate(pinner, uintptr(length138*(23*4)), 4) + for index, element := range slice136 { + base := unsafe.Add(result137, index*(23*4)) + utf8117 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf8117) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8117))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf8118 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8118) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8118))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8119 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8119) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8119))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf8120 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8120) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8120))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf8121 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8121) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8121))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf8122 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf8122) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8122))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8123 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8123) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8123))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf8124 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8124) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8124))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf8125 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8125) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf8125))) + + default: + panic("unreachable") + } + slice127 := ((element).Metadata).Aliases + length129 := uint32(len(slice127)) + result128 := witRuntime.Allocate(pinner, uintptr(length129*(2*4)), 4) + for index, element := range slice127 { + base := unsafe.Add(result128, index*(2*4)) + utf8126 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8126) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8126))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length129) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result128))) + slice131 := ((element).Metadata).Examples + length133 := uint32(len(slice131)) + result132 := witRuntime.Allocate(pinner, uintptr(length133*(2*4)), 4) + for index, element := range slice131 { + base := unsafe.Add(result132, index*(2*4)) + utf8130 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8130) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8130))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length133) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result132))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8134 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8134) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8134))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8135 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8135) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8135))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length138) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result137))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8139 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8139) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8139))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8140 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8140) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8140))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8141 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8141) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8141))) + + default: + panic("unreachable") + } + slice143 := ((element).Metadata).Aliases + length145 := uint32(len(slice143)) + result144 := witRuntime.Allocate(pinner, uintptr(length145*(2*4)), 4) + for index, element := range slice143 { + base := unsafe.Add(result144, index*(2*4)) + utf8142 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8142) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8142))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length145) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result144))) + slice147 := ((element).Metadata).Examples + length149 := uint32(len(slice147)) + result148 := witRuntime.Allocate(pinner, uintptr(length149*(2*4)), 4) + for index, element := range slice147 { + base := unsafe.Add(result148, index*(2*4)) + utf8146 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8146) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8146))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length149) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result148))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8150 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8150) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8150))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8151 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8151) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8151))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(length154) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(result153))) + slice157 := (((element).Value).Graph).Defs + length159 := uint32(len(slice157)) + result158 := witRuntime.Allocate(pinner, uintptr(length159*(6*4)), 4) + for index, element := range slice157 { + base := unsafe.Add(result158, index*(6*4)) + utf8155 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8155) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8155))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8156 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8156) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8156))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(length159) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(result158))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = (((element).Value).Graph).Root + slice189 := (((element).Value).Value).ValueNodes + length191 := uint32(len(slice189)) + result190 := witRuntime.Allocate(pinner, uintptr(length191*(16+4*4)), 8) + for index, element := range slice189 { + base := unsafe.Add(result190, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result160 int32 + if payload { + result160 = 1 + } else { + result160 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result160) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf8161 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8161) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8161))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice162 := payload + length164 := uint32(len(slice162)) + result163 := witRuntime.Allocate(pinner, uintptr(length164*4), 4) + for index, element := range slice162 { + base := unsafe.Add(result163, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length164) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result163))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice166 := payload + length168 := uint32(len(slice166)) + result167 := witRuntime.Allocate(pinner, uintptr(length168*1), 1) + for index, element := range slice166 { + base := unsafe.Add(result167, index*1) + var result165 int32 + if element { + result165 = 1 + } else { + result165 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result165) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length168) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result167))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice169 := payload + length171 := uint32(len(slice169)) + result170 := witRuntime.Allocate(pinner, uintptr(length171*4), 4) + for index, element := range slice169 { + base := unsafe.Add(result170, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length171) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result170))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice172 := payload + length174 := uint32(len(slice172)) + result173 := witRuntime.Allocate(pinner, uintptr(length174*4), 4) + for index, element := range slice172 { + base := unsafe.Add(result173, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length174) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result173))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice175 := payload + length177 := uint32(len(slice175)) + result176 := witRuntime.Allocate(pinner, uintptr(length177*4), 4) + for index, element := range slice175 { + base := unsafe.Add(result176, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length177) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result176))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice178 := payload + length180 := uint32(len(slice178)) + result179 := witRuntime.Allocate(pinner, uintptr(length180*8), 4) + for index, element := range slice178 { + base := unsafe.Add(result179, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length180) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result179))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf8181 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf8181) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8181))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8182 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8182) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8182))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data183 := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data183) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data183))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8184 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8184) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8184))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf8185 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8185) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8185))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf8186 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8186) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8186))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf8187 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8187) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf8187))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8188 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf8188) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8188))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(length191) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(result190))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = (((element).Value).Value).Root + + } + + result195 := wasm_import_constructor_wasm_rpc(uintptr(utf8), uint32(len(agentTypeName)), uintptr(result26), length27, (constructor).Root, option, option28, option29, uintptr(result193), length194) + return WasmRpcFromOwnHandle(int32(uintptr(result195))) + +} + +//go:wasmimport golem:agent/host@2.0.0 [method]wasm-rpc.invoke-and-await +func wasm_import_method_wasm_rpc_invoke_and_await(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 int32, arg6 uintptr) + +func (self *WasmRpc) InvokeAndAwait(methodName string, input golem_core_types.SchemaValueTree) witTypes.Result[InvocationResultWithMetadata, RpcError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (11 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(methodName)) + pinner.Pin(utf8) + slice25 := (input).ValueNodes + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(16+4*4)), 8) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result1 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result1, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result1))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice3 := payload + length5 := uint32(len(slice3)) + result4 := witRuntime.Allocate(pinner, uintptr(length5*1), 1) + for index, element := range slice3 { + base := unsafe.Add(result4, index*1) + var result2 int32 + if element { + result2 = 1 + } else { + result2 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result2) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length5) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result4))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice6 := payload + length8 := uint32(len(slice6)) + result7 := witRuntime.Allocate(pinner, uintptr(length8*4), 4) + for index, element := range slice6 { + base := unsafe.Add(result7, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result7))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice9 := payload + length11 := uint32(len(slice9)) + result10 := witRuntime.Allocate(pinner, uintptr(length11*4), 4) + for index, element := range slice9 { + base := unsafe.Add(result10, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result10))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice12 := payload + length14 := uint32(len(slice12)) + result13 := witRuntime.Allocate(pinner, uintptr(length14*4), 4) + for index, element := range slice12 { + base := unsafe.Add(result13, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length14) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result13))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice15 := payload + length17 := uint32(len(slice15)) + result16 := witRuntime.Allocate(pinner, uintptr(length17*8), 4) + for index, element := range slice15 { + base := unsafe.Add(result16, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length17) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result16))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf819))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf821))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf823 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf823))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + wasm_import_method_wasm_rpc_invoke_and_await((self).Handle(), uintptr(utf8), uint32(len(methodName)), uintptr(result26), length27, (input).Root, returnArea) + var result266 witTypes.Result[InvocationResultWithMetadata, RpcError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + var option51 witTypes.Option[golem_core_types.SchemaValueTree] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) { + case 0: + + option51 = witTypes.None[golem_core_types.SchemaValueTree]() + case 1: + result50 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4))))), index*(16+4*4)) + var variant49 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant49 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant49 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant49 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant49 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant49 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant49 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant49 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant49 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant49 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant49 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant49 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant49 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value29 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant49 = golem_core_types.MakeSchemaValueNodeStringValue(value29) + + case 13: + result30 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result30 = append(result30, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant49 = golem_core_types.MakeSchemaValueNodeRecordValue(result30) + + case 14: + var option witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option = witTypes.None[int32]() + case 1: + + option = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant49 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option}) + + case 15: + + variant49 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result31 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result31 = append(result31, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant49 = golem_core_types.MakeSchemaValueNodeFlagsValue(result31) + + case 17: + result32 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result32 = append(result32, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant49 = golem_core_types.MakeSchemaValueNodeTupleValue(result32) + + case 18: + result33 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result33 = append(result33, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant49 = golem_core_types.MakeSchemaValueNodeListValue(result33) + + case 19: + result34 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result34 = append(result34, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant49 = golem_core_types.MakeSchemaValueNodeFixedListValue(result34) + + case 20: + result35 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result35 = append(result35, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant49 = golem_core_types.MakeSchemaValueNodeMapValue(result35) + + case 21: + var option36 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option36 = witTypes.None[int32]() + case 1: + + option36 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant49 = golem_core_types.MakeSchemaValueNodeOptionValue(option36) + + case 22: + var variant golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option37 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option37 = witTypes.None[int32]() + case 1: + + option37 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadOkValue(option37) + + case 1: + var option38 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option38 = witTypes.None[int32]() + case 1: + + option38 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadErrValue(option38) + + default: + panic("unreachable") + } + + variant49 = golem_core_types.MakeSchemaValueNodeResultValue(variant) + + case 23: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option41 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option41 = witTypes.None[string]() + case 1: + value40 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option41 = witTypes.Some[string](value40) + default: + panic("unreachable") + } + + variant49 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value39, option41}) + + case 24: + value42 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option44 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option44 = witTypes.None[string]() + case 1: + value43 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option44 = witTypes.Some[string](value43) + default: + panic("unreachable") + } + + variant49 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value42, option44}) + + case 25: + value45 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant49 = golem_core_types.MakeSchemaValueNodePathValue(value45) + + case 26: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant49 = golem_core_types.MakeSchemaValueNodeUrlValue(value46) + + case 27: + + variant49 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant49 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value47 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant49 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value47}) + + case 30: + value48 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant49 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value48, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant49 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant49 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result50 = append(result50, variant49) + } + + option51 = witTypes.Some[golem_core_types.SchemaValueTree](golem_core_types.SchemaValueTree{result50, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 * 4)))}) + default: + panic("unreachable") + } + + result266 = witTypes.Ok[InvocationResultWithMetadata, RpcError](InvocationResultWithMetadata{InvocationMetadata{value, value28}, option51}) + case 1: + var variant265 RpcError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value52 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant265 = MakeRpcErrorProtocolError(value52) + + case 1: + value53 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant265 = MakeRpcErrorDenied(value53) + + case 2: + value54 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant265 = MakeRpcErrorNotFound(value54) + + case 3: + value55 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant265 = MakeRpcErrorRemoteInternalError(value55) + + case 4: + var variant264 golem_agent_common.AgentError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + value56 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant264 = golem_agent_common.MakeAgentErrorInvalidInput(value56) + + case 1: + value57 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant264 = golem_agent_common.MakeAgentErrorInvalidMethod(value57) + + case 2: + value58 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant264 = golem_agent_common.MakeAgentErrorInvalidType(value58) + + case 3: + value59 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant264 = golem_agent_common.MakeAgentErrorInvalidAgentId(value59) + + case 4: + result235 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(56+22*4)) + var variant223 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant223 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant223 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option66 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option66 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option61 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option61 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant60 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant60 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant60 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant60 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option61 = witTypes.Some[golem_core_types.NumericBound](variant60) + default: + panic("unreachable") + } + var option63 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option63 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant62 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant62 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant62 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant62 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option63 = witTypes.Some[golem_core_types.NumericBound](variant62) + default: + panic("unreachable") + } + var option65 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option65 = witTypes.None[string]() + case 1: + value64 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option65 = witTypes.Some[string](value64) + default: + panic("unreachable") + } + + option66 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option61, option63, option65}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyS8Type(option66) + + case 3: + var option73 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option73 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option68 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option68 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant67 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant67 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant67 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant67 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option68 = witTypes.Some[golem_core_types.NumericBound](variant67) + default: + panic("unreachable") + } + var option70 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option70 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant69 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant69 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant69 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant69 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option70 = witTypes.Some[golem_core_types.NumericBound](variant69) + default: + panic("unreachable") + } + var option72 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option72 = witTypes.None[string]() + case 1: + value71 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option72 = witTypes.Some[string](value71) + default: + panic("unreachable") + } + + option73 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option68, option70, option72}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyS16Type(option73) + + case 4: + var option80 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option80 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option75 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option75 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant74 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant74 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant74 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant74 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option75 = witTypes.Some[golem_core_types.NumericBound](variant74) + default: + panic("unreachable") + } + var option77 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option77 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant76 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant76 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant76 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant76 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option77 = witTypes.Some[golem_core_types.NumericBound](variant76) + default: + panic("unreachable") + } + var option79 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option79 = witTypes.None[string]() + case 1: + value78 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option79 = witTypes.Some[string](value78) + default: + panic("unreachable") + } + + option80 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option75, option77, option79}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyS32Type(option80) + + case 5: + var option87 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option87 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option82 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option82 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant81 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant81 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant81 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant81 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option82 = witTypes.Some[golem_core_types.NumericBound](variant81) + default: + panic("unreachable") + } + var option84 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option84 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant83 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant83 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant83 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant83 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option84 = witTypes.Some[golem_core_types.NumericBound](variant83) + default: + panic("unreachable") + } + var option86 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option86 = witTypes.None[string]() + case 1: + value85 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option86 = witTypes.Some[string](value85) + default: + panic("unreachable") + } + + option87 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option82, option84, option86}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyS64Type(option87) + + case 6: + var option94 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option94 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option89 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option89 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant88 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant88 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant88 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant88 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option89 = witTypes.Some[golem_core_types.NumericBound](variant88) + default: + panic("unreachable") + } + var option91 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option91 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant90 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant90 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant90 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant90 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option91 = witTypes.Some[golem_core_types.NumericBound](variant90) + default: + panic("unreachable") + } + var option93 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option93 = witTypes.None[string]() + case 1: + value92 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option93 = witTypes.Some[string](value92) + default: + panic("unreachable") + } + + option94 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option89, option91, option93}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyU8Type(option94) + + case 7: + var option101 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option101 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option96 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option96 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant95 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant95 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant95 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant95 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option96 = witTypes.Some[golem_core_types.NumericBound](variant95) + default: + panic("unreachable") + } + var option98 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option98 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant97 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant97 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant97 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant97 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option98 = witTypes.Some[golem_core_types.NumericBound](variant97) + default: + panic("unreachable") + } + var option100 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option100 = witTypes.None[string]() + case 1: + value99 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option100 = witTypes.Some[string](value99) + default: + panic("unreachable") + } + + option101 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option96, option98, option100}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyU16Type(option101) + + case 8: + var option108 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option108 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option103 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option103 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant102 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant102 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant102 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant102 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option103 = witTypes.Some[golem_core_types.NumericBound](variant102) + default: + panic("unreachable") + } + var option105 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option105 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant104 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant104 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant104 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant104 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option105 = witTypes.Some[golem_core_types.NumericBound](variant104) + default: + panic("unreachable") + } + var option107 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option107 = witTypes.None[string]() + case 1: + value106 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option107 = witTypes.Some[string](value106) + default: + panic("unreachable") + } + + option108 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option103, option105, option107}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyU32Type(option108) + + case 9: + var option115 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option115 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option110 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option110 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant109 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant109 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant109 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant109 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option110 = witTypes.Some[golem_core_types.NumericBound](variant109) + default: + panic("unreachable") + } + var option112 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option112 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant111 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant111 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant111 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant111 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option112 = witTypes.Some[golem_core_types.NumericBound](variant111) + default: + panic("unreachable") + } + var option114 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option114 = witTypes.None[string]() + case 1: + value113 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option114 = witTypes.Some[string](value113) + default: + panic("unreachable") + } + + option115 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option110, option112, option114}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyU64Type(option115) + + case 10: + var option122 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option122 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option117 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option117 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant116 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant116 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant116 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant116 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option117 = witTypes.Some[golem_core_types.NumericBound](variant116) + default: + panic("unreachable") + } + var option119 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option119 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant118 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant118 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant118 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant118 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option119 = witTypes.Some[golem_core_types.NumericBound](variant118) + default: + panic("unreachable") + } + var option121 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option121 = witTypes.None[string]() + case 1: + value120 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option121 = witTypes.Some[string](value120) + default: + panic("unreachable") + } + + option122 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option117, option119, option121}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyF32Type(option122) + + case 11: + var option129 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option129 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option124 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option124 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant123 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant123 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant123 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant123 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option124 = witTypes.Some[golem_core_types.NumericBound](variant123) + default: + panic("unreachable") + } + var option126 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option126 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant125 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant125 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant125 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant125 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option126 = witTypes.Some[golem_core_types.NumericBound](variant125) + default: + panic("unreachable") + } + var option128 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option128 = witTypes.None[string]() + case 1: + value127 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option128 = witTypes.Some[string](value127) + default: + panic("unreachable") + } + + option129 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option124, option126, option128}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyF64Type(option129) + + case 12: + + variant223 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant223 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result142 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option132 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option132 = witTypes.None[string]() + case 1: + value131 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option132 = witTypes.Some[string](value131) + default: + panic("unreachable") + } + result134 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value133 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result134 = append(result134, value133) + } + + result136 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result136 = append(result136, value135) + } + + var option138 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option138 = witTypes.None[string]() + case 1: + value137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option138 = witTypes.Some[string](value137) + default: + panic("unreachable") + } + var option141 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option141 = witTypes.None[golem_core_types.Role]() + case 1: + var variant140 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant140 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant140 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant140 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant140 = golem_core_types.MakeRoleOther(value139) + + default: + panic("unreachable") + } + + option141 = witTypes.Some[golem_core_types.Role](variant140) + default: + panic("unreachable") + } + + result142 = append(result142, golem_core_types.NamedFieldType{value130, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option132, result134, result136, option138, option141}}) + } + + variant223 = golem_core_types.MakeSchemaTypeBodyRecordType(result142) + + case 15: + result156 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value143 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option144 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option144 = witTypes.None[int32]() + case 1: + + option144 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option146 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option146 = witTypes.None[string]() + case 1: + value145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option146 = witTypes.Some[string](value145) + default: + panic("unreachable") + } + result148 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value147 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result148 = append(result148, value147) + } + + result150 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value149 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result150 = append(result150, value149) + } + + var option152 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option152 = witTypes.None[string]() + case 1: + value151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option152 = witTypes.Some[string](value151) + default: + panic("unreachable") + } + var option155 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option155 = witTypes.None[golem_core_types.Role]() + case 1: + var variant154 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant154 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant154 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant154 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value153 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant154 = golem_core_types.MakeRoleOther(value153) + + default: + panic("unreachable") + } + + option155 = witTypes.Some[golem_core_types.Role](variant154) + default: + panic("unreachable") + } + + result156 = append(result156, golem_core_types.VariantCaseType{value143, option144, golem_core_types.MetadataEnvelope{option146, result148, result150, option152, option155}}) + } + + variant223 = golem_core_types.MakeSchemaTypeBodyVariantType(result156) + + case 16: + result158 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result158 = append(result158, value157) + } + + variant223 = golem_core_types.MakeSchemaTypeBodyEnumType(result158) + + case 17: + result160 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value159 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result160 = append(result160, value159) + } + + variant223 = golem_core_types.MakeSchemaTypeBodyFlagsType(result160) + + case 18: + result161 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result161 = append(result161, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant223 = golem_core_types.MakeSchemaTypeBodyTupleType(result161) + + case 19: + + variant223 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant223 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant223 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant223 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option162 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option162 = witTypes.None[int32]() + case 1: + + option162 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option163 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option163 = witTypes.None[int32]() + case 1: + + option163 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option162, option163}) + + case 24: + var option166 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option166 = witTypes.None[[]string]() + case 1: + result165 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value164 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result165 = append(result165, value164) + } + + option166 = witTypes.Some[[]string](result165) + default: + panic("unreachable") + } + var option167 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option167 = witTypes.None[uint32]() + case 1: + + option167 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option168 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option168 = witTypes.None[uint32]() + case 1: + + option168 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option170 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option170 = witTypes.None[string]() + case 1: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option170 = witTypes.Some[string](value169) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option166, option167, option168, option170}) + + case 25: + var option173 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option173 = witTypes.None[[]string]() + case 1: + result172 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result172 = append(result172, value171) + } + + option173 = witTypes.Some[[]string](result172) + default: + panic("unreachable") + } + var option174 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option174 = witTypes.None[uint32]() + case 1: + + option174 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option175 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option175 = witTypes.None[uint32]() + case 1: + + option175 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option173, option174, option175}) + + case 26: + var option178 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option178 = witTypes.None[[]string]() + case 1: + result177 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result177 = append(result177, value176) + } + + option178 = witTypes.Some[[]string](result177) + default: + panic("unreachable") + } + var option181 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option181 = witTypes.None[[]string]() + case 1: + result180 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value179 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result180 = append(result180, value179) + } + + option181 = witTypes.Some[[]string](result180) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option178, option181}) + + case 27: + var option184 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option184 = witTypes.None[[]string]() + case 1: + result183 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result183 = append(result183, value182) + } + + option184 = witTypes.Some[[]string](result183) + default: + panic("unreachable") + } + var option187 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option187 = witTypes.None[[]string]() + case 1: + result186 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value185 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result186 = append(result186, value185) + } + + option187 = witTypes.Some[[]string](result186) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option184, option187}) + + case 28: + + variant223 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant223 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value188 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result190 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value189 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result190 = append(result190, value189) + } + + var option192 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option192 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value191 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option192 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value191}) + default: + panic("unreachable") + } + var option194 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option194 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option194 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value193}) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value188, result190, option192, option194}) + + case 31: + result216 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant204 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant204 = golem_core_types.MakeDiscriminatorRulePrefix(value196) + + case 1: + value197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant204 = golem_core_types.MakeDiscriminatorRuleSuffix(value197) + + case 2: + value198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant204 = golem_core_types.MakeDiscriminatorRuleContains(value198) + + case 3: + value199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant204 = golem_core_types.MakeDiscriminatorRuleRegex(value199) + + case 4: + value200 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option202 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option202 = witTypes.None[string]() + case 1: + value201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option202 = witTypes.Some[string](value201) + default: + panic("unreachable") + } + + variant204 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value200, option202}) + + case 5: + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant204 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value203) + + default: + panic("unreachable") + } + var option206 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option206 = witTypes.None[string]() + case 1: + value205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option206 = witTypes.Some[string](value205) + default: + panic("unreachable") + } + result208 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value207 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result208 = append(result208, value207) + } + + result210 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result210 = append(result210, value209) + } + + var option212 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option212 = witTypes.None[string]() + case 1: + value211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option212 = witTypes.Some[string](value211) + default: + panic("unreachable") + } + var option215 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option215 = witTypes.None[golem_core_types.Role]() + case 1: + var variant214 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant214 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant214 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant214 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value213 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant214 = golem_core_types.MakeRoleOther(value213) + + default: + panic("unreachable") + } + + option215 = witTypes.Some[golem_core_types.Role](variant214) + default: + panic("unreachable") + } + + result216 = append(result216, golem_core_types.UnionBranch{value195, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant204, golem_core_types.MetadataEnvelope{option206, result208, result210, option212, option215}}) + } + + variant223 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result216}) + + case 32: + var option218 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option218 = witTypes.None[string]() + case 1: + value217 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option218 = witTypes.Some[string](value217) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option218}) + + case 33: + var option220 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option220 = witTypes.None[string]() + case 1: + value219 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option220 = witTypes.Some[string](value219) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option220}) + + case 34: + var option221 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option221 = witTypes.None[int32]() + case 1: + + option221 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyFutureType(option221) + + case 35: + var option222 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option222 = witTypes.None[int32]() + case 1: + + option222 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant223 = golem_core_types.MakeSchemaTypeBodyStreamType(option222) + + default: + panic("unreachable") + } + var option225 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option225 = witTypes.None[string]() + case 1: + value224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option225 = witTypes.Some[string](value224) + default: + panic("unreachable") + } + result227 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result227 = append(result227, value226) + } + + result229 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result229 = append(result229, value228) + } + + var option231 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option231 = witTypes.None[string]() + case 1: + value230 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option231 = witTypes.Some[string](value230) + default: + panic("unreachable") + } + var option234 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option234 = witTypes.None[golem_core_types.Role]() + case 1: + var variant233 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant233 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant233 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant233 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value232 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant233 = golem_core_types.MakeRoleOther(value232) + + default: + panic("unreachable") + } + + option234 = witTypes.Some[golem_core_types.Role](variant233) + default: + panic("unreachable") + } + + result235 = append(result235, golem_core_types.SchemaTypeNode{variant223, golem_core_types.MetadataEnvelope{option225, result227, result229, option231, option234}}) + } + + result239 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4))))), index*(6*4)) + value236 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option238 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option238 = witTypes.None[string]() + case 1: + value237 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option238 = witTypes.Some[string](value237) + default: + panic("unreachable") + } + + result239 = append(result239, golem_core_types.SchemaTypeDef{value236, option238, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result263 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 * 4))))), index*(16+4*4)) + var variant262 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant262 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant262 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant262 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant262 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant262 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant262 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant262 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant262 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant262 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant262 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant262 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant262 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value240 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant262 = golem_core_types.MakeSchemaValueNodeStringValue(value240) + + case 13: + result241 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result241 = append(result241, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant262 = golem_core_types.MakeSchemaValueNodeRecordValue(result241) + + case 14: + var option242 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option242 = witTypes.None[int32]() + case 1: + + option242 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant262 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option242}) + + case 15: + + variant262 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result243 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result243 = append(result243, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant262 = golem_core_types.MakeSchemaValueNodeFlagsValue(result243) + + case 17: + result244 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result244 = append(result244, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant262 = golem_core_types.MakeSchemaValueNodeTupleValue(result244) + + case 18: + result245 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result245 = append(result245, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant262 = golem_core_types.MakeSchemaValueNodeListValue(result245) + + case 19: + result246 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result246 = append(result246, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant262 = golem_core_types.MakeSchemaValueNodeFixedListValue(result246) + + case 20: + result247 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result247 = append(result247, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant262 = golem_core_types.MakeSchemaValueNodeMapValue(result247) + + case 21: + var option248 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option248 = witTypes.None[int32]() + case 1: + + option248 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant262 = golem_core_types.MakeSchemaValueNodeOptionValue(option248) + + case 22: + var variant251 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option249 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option249 = witTypes.None[int32]() + case 1: + + option249 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant251 = golem_core_types.MakeResultValuePayloadOkValue(option249) + + case 1: + var option250 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option250 = witTypes.None[int32]() + case 1: + + option250 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant251 = golem_core_types.MakeResultValuePayloadErrValue(option250) + + default: + panic("unreachable") + } + + variant262 = golem_core_types.MakeSchemaValueNodeResultValue(variant251) + + case 23: + value252 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option254 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option254 = witTypes.None[string]() + case 1: + value253 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option254 = witTypes.Some[string](value253) + default: + panic("unreachable") + } + + variant262 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value252, option254}) + + case 24: + value255 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option257 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option257 = witTypes.None[string]() + case 1: + value256 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option257 = witTypes.Some[string](value256) + default: + panic("unreachable") + } + + variant262 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value255, option257}) + + case 25: + value258 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant262 = golem_core_types.MakeSchemaValueNodePathValue(value258) + + case 26: + value259 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant262 = golem_core_types.MakeSchemaValueNodeUrlValue(value259) + + case 27: + + variant262 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant262 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value260 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant262 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value260}) + + case 30: + value261 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant262 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value261, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant262 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant262 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result263 = append(result263, variant262) + } + + variant264 = golem_agent_common.MakeAgentErrorCustomError(golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result235, result239, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4)))}, golem_core_types.SchemaValueTree{result263, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (10 * 4)))}}) + + default: + panic("unreachable") + } + + variant265 = MakeRpcErrorRemoteAgentError(variant264) + + default: + panic("unreachable") + } + + result266 = witTypes.Err[InvocationResultWithMetadata, RpcError](variant265) + default: + panic("unreachable") + } + result267 := result266 + return result267 + +} + +//go:wasmimport golem:agent/host@2.0.0 [method]wasm-rpc.invoke +func wasm_import_method_wasm_rpc_invoke(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 int32, arg6 uintptr) + +func (self *WasmRpc) Invoke(methodName string, input golem_core_types.SchemaValueTree) witTypes.Result[InvocationMetadata, RpcError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (11 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(methodName)) + pinner.Pin(utf8) + slice25 := (input).ValueNodes + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(16+4*4)), 8) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result1 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result1, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result1))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice3 := payload + length5 := uint32(len(slice3)) + result4 := witRuntime.Allocate(pinner, uintptr(length5*1), 1) + for index, element := range slice3 { + base := unsafe.Add(result4, index*1) + var result2 int32 + if element { + result2 = 1 + } else { + result2 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result2) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length5) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result4))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice6 := payload + length8 := uint32(len(slice6)) + result7 := witRuntime.Allocate(pinner, uintptr(length8*4), 4) + for index, element := range slice6 { + base := unsafe.Add(result7, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result7))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice9 := payload + length11 := uint32(len(slice9)) + result10 := witRuntime.Allocate(pinner, uintptr(length11*4), 4) + for index, element := range slice9 { + base := unsafe.Add(result10, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result10))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice12 := payload + length14 := uint32(len(slice12)) + result13 := witRuntime.Allocate(pinner, uintptr(length14*4), 4) + for index, element := range slice12 { + base := unsafe.Add(result13, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length14) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result13))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice15 := payload + length17 := uint32(len(slice15)) + result16 := witRuntime.Allocate(pinner, uintptr(length17*8), 4) + for index, element := range slice15 { + base := unsafe.Add(result16, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length17) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result16))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf819))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf821))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf823 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf823))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + wasm_import_method_wasm_rpc_invoke((self).Handle(), uintptr(utf8), uint32(len(methodName)), uintptr(result26), length27, (input).Root, returnArea) + var result241 witTypes.Result[InvocationMetadata, RpcError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + result241 = witTypes.Ok[InvocationMetadata, RpcError](InvocationMetadata{value, value28}) + case 1: + var variant240 RpcError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value29 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant240 = MakeRpcErrorProtocolError(value29) + + case 1: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant240 = MakeRpcErrorDenied(value30) + + case 2: + value31 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant240 = MakeRpcErrorNotFound(value31) + + case 3: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant240 = MakeRpcErrorRemoteInternalError(value32) + + case 4: + var variant239 golem_agent_common.AgentError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + value33 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant239 = golem_agent_common.MakeAgentErrorInvalidInput(value33) + + case 1: + value34 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant239 = golem_agent_common.MakeAgentErrorInvalidMethod(value34) + + case 2: + value35 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant239 = golem_agent_common.MakeAgentErrorInvalidType(value35) + + case 3: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant239 = golem_agent_common.MakeAgentErrorInvalidAgentId(value36) + + case 4: + result210 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(56+22*4)) + var variant198 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant198 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant198 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option41 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option38 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option38 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant37 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant37 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant37 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant37 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option38 = witTypes.Some[golem_core_types.NumericBound](variant37) + default: + panic("unreachable") + } + var option40 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option40 = witTypes.None[string]() + case 1: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option40 = witTypes.Some[string](value39) + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option, option38, option40}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyS8Type(option41) + + case 3: + var option48 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option43 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option43 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant42 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant42 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant42 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant42 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option43 = witTypes.Some[golem_core_types.NumericBound](variant42) + default: + panic("unreachable") + } + var option45 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option45 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant44 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant44 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant44 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant44 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option45 = witTypes.Some[golem_core_types.NumericBound](variant44) + default: + panic("unreachable") + } + var option47 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option47 = witTypes.None[string]() + case 1: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option47 = witTypes.Some[string](value46) + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option43, option45, option47}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyS16Type(option48) + + case 4: + var option55 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option50 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option50 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant49 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant49 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant49 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant49 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option50 = witTypes.Some[golem_core_types.NumericBound](variant49) + default: + panic("unreachable") + } + var option52 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option52 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant51 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant51 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant51 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant51 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option52 = witTypes.Some[golem_core_types.NumericBound](variant51) + default: + panic("unreachable") + } + var option54 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option54 = witTypes.None[string]() + case 1: + value53 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option54 = witTypes.Some[string](value53) + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option50, option52, option54}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyS32Type(option55) + + case 5: + var option62 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option57 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option57 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant56 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant56 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant56 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant56 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option57 = witTypes.Some[golem_core_types.NumericBound](variant56) + default: + panic("unreachable") + } + var option59 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option59 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant58 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant58 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant58 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant58 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option59 = witTypes.Some[golem_core_types.NumericBound](variant58) + default: + panic("unreachable") + } + var option61 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option61 = witTypes.None[string]() + case 1: + value60 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option61 = witTypes.Some[string](value60) + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option57, option59, option61}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyS64Type(option62) + + case 6: + var option69 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option69 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option64 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option64 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant63 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant63 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant63 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant63 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option64 = witTypes.Some[golem_core_types.NumericBound](variant63) + default: + panic("unreachable") + } + var option66 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option66 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant65 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant65 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant65 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant65 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option66 = witTypes.Some[golem_core_types.NumericBound](variant65) + default: + panic("unreachable") + } + var option68 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option68 = witTypes.None[string]() + case 1: + value67 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option68 = witTypes.Some[string](value67) + default: + panic("unreachable") + } + + option69 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option64, option66, option68}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyU8Type(option69) + + case 7: + var option76 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option76 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option71 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option71 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant70 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant70 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant70 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant70 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option71 = witTypes.Some[golem_core_types.NumericBound](variant70) + default: + panic("unreachable") + } + var option73 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option73 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant72 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant72 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant72 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant72 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option73 = witTypes.Some[golem_core_types.NumericBound](variant72) + default: + panic("unreachable") + } + var option75 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option75 = witTypes.None[string]() + case 1: + value74 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option75 = witTypes.Some[string](value74) + default: + panic("unreachable") + } + + option76 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option71, option73, option75}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyU16Type(option76) + + case 8: + var option83 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option83 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option78 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option78 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant77 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant77 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant77 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant77 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option78 = witTypes.Some[golem_core_types.NumericBound](variant77) + default: + panic("unreachable") + } + var option80 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option80 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant79 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant79 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant79 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant79 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option80 = witTypes.Some[golem_core_types.NumericBound](variant79) + default: + panic("unreachable") + } + var option82 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option82 = witTypes.None[string]() + case 1: + value81 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option82 = witTypes.Some[string](value81) + default: + panic("unreachable") + } + + option83 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option78, option80, option82}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyU32Type(option83) + + case 9: + var option90 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option90 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option85 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option85 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant84 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant84 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant84 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant84 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option85 = witTypes.Some[golem_core_types.NumericBound](variant84) + default: + panic("unreachable") + } + var option87 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option87 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant86 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant86 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant86 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant86 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option87 = witTypes.Some[golem_core_types.NumericBound](variant86) + default: + panic("unreachable") + } + var option89 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option89 = witTypes.None[string]() + case 1: + value88 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option89 = witTypes.Some[string](value88) + default: + panic("unreachable") + } + + option90 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option85, option87, option89}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyU64Type(option90) + + case 10: + var option97 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option97 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option92 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option92 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant91 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant91 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant91 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant91 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option92 = witTypes.Some[golem_core_types.NumericBound](variant91) + default: + panic("unreachable") + } + var option94 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option94 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant93 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant93 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant93 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant93 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option94 = witTypes.Some[golem_core_types.NumericBound](variant93) + default: + panic("unreachable") + } + var option96 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option96 = witTypes.None[string]() + case 1: + value95 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option96 = witTypes.Some[string](value95) + default: + panic("unreachable") + } + + option97 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option92, option94, option96}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyF32Type(option97) + + case 11: + var option104 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option104 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option99 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option99 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant98 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant98 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant98 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant98 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option99 = witTypes.Some[golem_core_types.NumericBound](variant98) + default: + panic("unreachable") + } + var option101 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option101 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant100 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant100 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant100 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant100 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option101 = witTypes.Some[golem_core_types.NumericBound](variant100) + default: + panic("unreachable") + } + var option103 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option103 = witTypes.None[string]() + case 1: + value102 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option103 = witTypes.Some[string](value102) + default: + panic("unreachable") + } + + option104 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option99, option101, option103}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyF64Type(option104) + + case 12: + + variant198 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant198 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result117 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value105 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option107 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option107 = witTypes.None[string]() + case 1: + value106 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option107 = witTypes.Some[string](value106) + default: + panic("unreachable") + } + result109 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value108 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result109 = append(result109, value108) + } + + result111 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value110 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result111 = append(result111, value110) + } + + var option113 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option113 = witTypes.None[string]() + case 1: + value112 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option113 = witTypes.Some[string](value112) + default: + panic("unreachable") + } + var option116 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option116 = witTypes.None[golem_core_types.Role]() + case 1: + var variant115 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant115 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant115 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant115 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value114 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant115 = golem_core_types.MakeRoleOther(value114) + + default: + panic("unreachable") + } + + option116 = witTypes.Some[golem_core_types.Role](variant115) + default: + panic("unreachable") + } + + result117 = append(result117, golem_core_types.NamedFieldType{value105, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option107, result109, result111, option113, option116}}) + } + + variant198 = golem_core_types.MakeSchemaTypeBodyRecordType(result117) + + case 15: + result131 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option119 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option119 = witTypes.None[int32]() + case 1: + + option119 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option121 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option121 = witTypes.None[string]() + case 1: + value120 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option121 = witTypes.Some[string](value120) + default: + panic("unreachable") + } + result123 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value122 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result123 = append(result123, value122) + } + + result125 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value124 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result125 = append(result125, value124) + } + + var option127 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option127 = witTypes.None[string]() + case 1: + value126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option127 = witTypes.Some[string](value126) + default: + panic("unreachable") + } + var option130 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option130 = witTypes.None[golem_core_types.Role]() + case 1: + var variant129 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant129 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant129 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant129 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant129 = golem_core_types.MakeRoleOther(value128) + + default: + panic("unreachable") + } + + option130 = witTypes.Some[golem_core_types.Role](variant129) + default: + panic("unreachable") + } + + result131 = append(result131, golem_core_types.VariantCaseType{value118, option119, golem_core_types.MetadataEnvelope{option121, result123, result125, option127, option130}}) + } + + variant198 = golem_core_types.MakeSchemaTypeBodyVariantType(result131) + + case 16: + result133 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result133 = append(result133, value132) + } + + variant198 = golem_core_types.MakeSchemaTypeBodyEnumType(result133) + + case 17: + result135 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value134 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result135 = append(result135, value134) + } + + variant198 = golem_core_types.MakeSchemaTypeBodyFlagsType(result135) + + case 18: + result136 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result136 = append(result136, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant198 = golem_core_types.MakeSchemaTypeBodyTupleType(result136) + + case 19: + + variant198 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant198 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant198 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant198 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option137 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option137 = witTypes.None[int32]() + case 1: + + option137 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option138 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option138 = witTypes.None[int32]() + case 1: + + option138 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option137, option138}) + + case 24: + var option141 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option141 = witTypes.None[[]string]() + case 1: + result140 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result140 = append(result140, value139) + } + + option141 = witTypes.Some[[]string](result140) + default: + panic("unreachable") + } + var option142 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option142 = witTypes.None[uint32]() + case 1: + + option142 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option143 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option143 = witTypes.None[uint32]() + case 1: + + option143 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option145 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option145 = witTypes.None[string]() + case 1: + value144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option145 = witTypes.Some[string](value144) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option141, option142, option143, option145}) + + case 25: + var option148 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option148 = witTypes.None[[]string]() + case 1: + result147 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result147 = append(result147, value146) + } + + option148 = witTypes.Some[[]string](result147) + default: + panic("unreachable") + } + var option149 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option149 = witTypes.None[uint32]() + case 1: + + option149 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option150 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option150 = witTypes.None[uint32]() + case 1: + + option150 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option148, option149, option150}) + + case 26: + var option153 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option153 = witTypes.None[[]string]() + case 1: + result152 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result152 = append(result152, value151) + } + + option153 = witTypes.Some[[]string](result152) + default: + panic("unreachable") + } + var option156 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option156 = witTypes.None[[]string]() + case 1: + result155 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value154 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result155 = append(result155, value154) + } + + option156 = witTypes.Some[[]string](result155) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option153, option156}) + + case 27: + var option159 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option159 = witTypes.None[[]string]() + case 1: + result158 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result158 = append(result158, value157) + } + + option159 = witTypes.Some[[]string](result158) + default: + panic("unreachable") + } + var option162 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option162 = witTypes.None[[]string]() + case 1: + result161 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value160 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result161 = append(result161, value160) + } + + option162 = witTypes.Some[[]string](result161) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option159, option162}) + + case 28: + + variant198 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant198 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result165 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value164 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result165 = append(result165, value164) + } + + var option167 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option167 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value166 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option167 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value166}) + default: + panic("unreachable") + } + var option169 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option169 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value168 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option169 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value168}) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value163, result165, option167, option169}) + + case 31: + result191 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value170 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant179 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant179 = golem_core_types.MakeDiscriminatorRulePrefix(value171) + + case 1: + value172 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant179 = golem_core_types.MakeDiscriminatorRuleSuffix(value172) + + case 2: + value173 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant179 = golem_core_types.MakeDiscriminatorRuleContains(value173) + + case 3: + value174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant179 = golem_core_types.MakeDiscriminatorRuleRegex(value174) + + case 4: + value175 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option177 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option177 = witTypes.None[string]() + case 1: + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option177 = witTypes.Some[string](value176) + default: + panic("unreachable") + } + + variant179 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value175, option177}) + + case 5: + value178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant179 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value178) + + default: + panic("unreachable") + } + var option181 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option181 = witTypes.None[string]() + case 1: + value180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option181 = witTypes.Some[string](value180) + default: + panic("unreachable") + } + result183 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result183 = append(result183, value182) + } + + result185 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value184 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result185 = append(result185, value184) + } + + var option187 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option187 = witTypes.None[string]() + case 1: + value186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option187 = witTypes.Some[string](value186) + default: + panic("unreachable") + } + var option190 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option190 = witTypes.None[golem_core_types.Role]() + case 1: + var variant189 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant189 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant189 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant189 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value188 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant189 = golem_core_types.MakeRoleOther(value188) + + default: + panic("unreachable") + } + + option190 = witTypes.Some[golem_core_types.Role](variant189) + default: + panic("unreachable") + } + + result191 = append(result191, golem_core_types.UnionBranch{value170, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant179, golem_core_types.MetadataEnvelope{option181, result183, result185, option187, option190}}) + } + + variant198 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result191}) + + case 32: + var option193 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option193 = witTypes.None[string]() + case 1: + value192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option193 = witTypes.Some[string](value192) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option193}) + + case 33: + var option195 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option195 = witTypes.None[string]() + case 1: + value194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option195 = witTypes.Some[string](value194) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option195}) + + case 34: + var option196 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option196 = witTypes.None[int32]() + case 1: + + option196 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyFutureType(option196) + + case 35: + var option197 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option197 = witTypes.None[int32]() + case 1: + + option197 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant198 = golem_core_types.MakeSchemaTypeBodyStreamType(option197) + + default: + panic("unreachable") + } + var option200 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option200 = witTypes.None[string]() + case 1: + value199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option200 = witTypes.Some[string](value199) + default: + panic("unreachable") + } + result202 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result202 = append(result202, value201) + } + + result204 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result204 = append(result204, value203) + } + + var option206 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option206 = witTypes.None[string]() + case 1: + value205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option206 = witTypes.Some[string](value205) + default: + panic("unreachable") + } + var option209 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option209 = witTypes.None[golem_core_types.Role]() + case 1: + var variant208 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant208 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant208 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant208 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value207 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant208 = golem_core_types.MakeRoleOther(value207) + + default: + panic("unreachable") + } + + option209 = witTypes.Some[golem_core_types.Role](variant208) + default: + panic("unreachable") + } + + result210 = append(result210, golem_core_types.SchemaTypeNode{variant198, golem_core_types.MetadataEnvelope{option200, result202, result204, option206, option209}}) + } + + result214 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4))))), index*(6*4)) + value211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option213 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option213 = witTypes.None[string]() + case 1: + value212 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option213 = witTypes.Some[string](value212) + default: + panic("unreachable") + } + + result214 = append(result214, golem_core_types.SchemaTypeDef{value211, option213, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result238 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 * 4))))), index*(16+4*4)) + var variant237 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant237 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant237 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant237 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant237 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant237 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant237 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant237 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant237 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant237 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant237 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant237 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant237 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value215 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant237 = golem_core_types.MakeSchemaValueNodeStringValue(value215) + + case 13: + result216 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result216 = append(result216, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant237 = golem_core_types.MakeSchemaValueNodeRecordValue(result216) + + case 14: + var option217 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option217 = witTypes.None[int32]() + case 1: + + option217 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant237 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option217}) + + case 15: + + variant237 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result218 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result218 = append(result218, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant237 = golem_core_types.MakeSchemaValueNodeFlagsValue(result218) + + case 17: + result219 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result219 = append(result219, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant237 = golem_core_types.MakeSchemaValueNodeTupleValue(result219) + + case 18: + result220 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result220 = append(result220, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant237 = golem_core_types.MakeSchemaValueNodeListValue(result220) + + case 19: + result221 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result221 = append(result221, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant237 = golem_core_types.MakeSchemaValueNodeFixedListValue(result221) + + case 20: + result222 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result222 = append(result222, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant237 = golem_core_types.MakeSchemaValueNodeMapValue(result222) + + case 21: + var option223 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option223 = witTypes.None[int32]() + case 1: + + option223 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant237 = golem_core_types.MakeSchemaValueNodeOptionValue(option223) + + case 22: + var variant226 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option224 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option224 = witTypes.None[int32]() + case 1: + + option224 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant226 = golem_core_types.MakeResultValuePayloadOkValue(option224) + + case 1: + var option225 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option225 = witTypes.None[int32]() + case 1: + + option225 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant226 = golem_core_types.MakeResultValuePayloadErrValue(option225) + + default: + panic("unreachable") + } + + variant237 = golem_core_types.MakeSchemaValueNodeResultValue(variant226) + + case 23: + value227 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option229 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option229 = witTypes.None[string]() + case 1: + value228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option229 = witTypes.Some[string](value228) + default: + panic("unreachable") + } + + variant237 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value227, option229}) + + case 24: + value230 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option232 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option232 = witTypes.None[string]() + case 1: + value231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option232 = witTypes.Some[string](value231) + default: + panic("unreachable") + } + + variant237 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value230, option232}) + + case 25: + value233 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant237 = golem_core_types.MakeSchemaValueNodePathValue(value233) + + case 26: + value234 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant237 = golem_core_types.MakeSchemaValueNodeUrlValue(value234) + + case 27: + + variant237 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant237 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value235 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant237 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value235}) + + case 30: + value236 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant237 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value236, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant237 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant237 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result238 = append(result238, variant237) + } + + variant239 = golem_agent_common.MakeAgentErrorCustomError(golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result210, result214, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4)))}, golem_core_types.SchemaValueTree{result238, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (10 * 4)))}}) + + default: + panic("unreachable") + } + + variant240 = MakeRpcErrorRemoteAgentError(variant239) + + default: + panic("unreachable") + } + + result241 = witTypes.Err[InvocationMetadata, RpcError](variant240) + default: + panic("unreachable") + } + result242 := result241 + return result242 + +} + +//go:wasmimport golem:agent/host@2.0.0 [method]wasm-rpc.async-invoke-and-await +func wasm_import_method_wasm_rpc_async_invoke_and_await(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 int32, arg6 uintptr) + +func (self *WasmRpc) AsyncInvokeAndAwait(methodName string, input golem_core_types.SchemaValueTree) AsyncInvocationWithMetadata { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(methodName)) + pinner.Pin(utf8) + slice25 := (input).ValueNodes + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(16+4*4)), 8) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result1 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result1, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result1))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice3 := payload + length5 := uint32(len(slice3)) + result4 := witRuntime.Allocate(pinner, uintptr(length5*1), 1) + for index, element := range slice3 { + base := unsafe.Add(result4, index*1) + var result2 int32 + if element { + result2 = 1 + } else { + result2 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result2) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length5) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result4))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice6 := payload + length8 := uint32(len(slice6)) + result7 := witRuntime.Allocate(pinner, uintptr(length8*4), 4) + for index, element := range slice6 { + base := unsafe.Add(result7, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result7))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice9 := payload + length11 := uint32(len(slice9)) + result10 := witRuntime.Allocate(pinner, uintptr(length11*4), 4) + for index, element := range slice9 { + base := unsafe.Add(result10, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result10))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice12 := payload + length14 := uint32(len(slice12)) + result13 := witRuntime.Allocate(pinner, uintptr(length14*4), 4) + for index, element := range slice12 { + base := unsafe.Add(result13, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length14) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result13))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice15 := payload + length17 := uint32(len(slice15)) + result16 := witRuntime.Allocate(pinner, uintptr(length17*8), 4) + for index, element := range slice15 { + base := unsafe.Add(result16, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length17) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result16))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf819))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf821))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf823 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf823))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + wasm_import_method_wasm_rpc_async_invoke_and_await((self).Handle(), uintptr(utf8), uint32(len(methodName)), uintptr(result26), length27, (input).Root, returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + result29 := AsyncInvocationWithMetadata{InvocationMetadata{value, value28}, FutureInvokeResultFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4))))))} + return result29 + +} + +//go:wasmimport golem:agent/host@2.0.0 [method]wasm-rpc.schedule-invocation +func wasm_import_method_wasm_rpc_schedule_invocation(arg0 int32, arg1 int64, arg2 int32, arg3 uintptr, arg4 uint32, arg5 uintptr, arg6 uint32, arg7 int32, arg8 uintptr) + +func (self *WasmRpc) ScheduleInvocation(scheduledTime wasi_clocks_0_3_0_system_clock.Instant, methodName string, input golem_core_types.SchemaValueTree) ScheduledInvocationReceipt { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(methodName)) + pinner.Pin(utf8) + slice25 := (input).ValueNodes + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(16+4*4)), 8) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result1 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result1, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result1))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice3 := payload + length5 := uint32(len(slice3)) + result4 := witRuntime.Allocate(pinner, uintptr(length5*1), 1) + for index, element := range slice3 { + base := unsafe.Add(result4, index*1) + var result2 int32 + if element { + result2 = 1 + } else { + result2 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result2) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length5) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result4))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice6 := payload + length8 := uint32(len(slice6)) + result7 := witRuntime.Allocate(pinner, uintptr(length8*4), 4) + for index, element := range slice6 { + base := unsafe.Add(result7, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result7))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice9 := payload + length11 := uint32(len(slice9)) + result10 := witRuntime.Allocate(pinner, uintptr(length11*4), 4) + for index, element := range slice9 { + base := unsafe.Add(result10, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result10))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice12 := payload + length14 := uint32(len(slice12)) + result13 := witRuntime.Allocate(pinner, uintptr(length14*4), 4) + for index, element := range slice12 { + base := unsafe.Add(result13, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length14) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result13))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice15 := payload + length17 := uint32(len(slice15)) + result16 := witRuntime.Allocate(pinner, uintptr(length17*8), 4) + for index, element := range slice15 { + base := unsafe.Add(result16, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length17) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result16))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf819))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf821))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf823 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf823))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + wasm_import_method_wasm_rpc_schedule_invocation((self).Handle(), (scheduledTime).Seconds, int32((scheduledTime).Nanoseconds), uintptr(utf8), uint32(len(methodName)), uintptr(result26), length27, (input).Root, returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + result29 := ScheduledInvocationReceipt{InvocationMetadata{value, value28}} + return result29 + +} + +//go:wasmimport golem:agent/host@2.0.0 [method]wasm-rpc.schedule-cancelable-invocation +func wasm_import_method_wasm_rpc_schedule_cancelable_invocation(arg0 int32, arg1 int64, arg2 int32, arg3 uintptr, arg4 uint32, arg5 uintptr, arg6 uint32, arg7 int32, arg8 uintptr) + +func (self *WasmRpc) ScheduleCancelableInvocation(scheduledTime wasi_clocks_0_3_0_system_clock.Instant, methodName string, input golem_core_types.SchemaValueTree) CancelableScheduledInvocationReceipt { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(methodName)) + pinner.Pin(utf8) + slice25 := (input).ValueNodes + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(16+4*4)), 8) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result1 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result1, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result1))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice3 := payload + length5 := uint32(len(slice3)) + result4 := witRuntime.Allocate(pinner, uintptr(length5*1), 1) + for index, element := range slice3 { + base := unsafe.Add(result4, index*1) + var result2 int32 + if element { + result2 = 1 + } else { + result2 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result2) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length5) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result4))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice6 := payload + length8 := uint32(len(slice6)) + result7 := witRuntime.Allocate(pinner, uintptr(length8*4), 4) + for index, element := range slice6 { + base := unsafe.Add(result7, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result7))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice9 := payload + length11 := uint32(len(slice9)) + result10 := witRuntime.Allocate(pinner, uintptr(length11*4), 4) + for index, element := range slice9 { + base := unsafe.Add(result10, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result10))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice12 := payload + length14 := uint32(len(slice12)) + result13 := witRuntime.Allocate(pinner, uintptr(length14*4), 4) + for index, element := range slice12 { + base := unsafe.Add(result13, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length14) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result13))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice15 := payload + length17 := uint32(len(slice15)) + result16 := witRuntime.Allocate(pinner, uintptr(length17*8), 4) + for index, element := range slice15 { + base := unsafe.Add(result16, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length17) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result16))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf819))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf821))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf823 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf823))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + wasm_import_method_wasm_rpc_schedule_cancelable_invocation((self).Handle(), (scheduledTime).Seconds, int32((scheduledTime).Nanoseconds), uintptr(utf8), uint32(len(methodName)), uintptr(result26), length27, (input).Root, returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + result29 := CancelableScheduledInvocationReceipt{InvocationMetadata{value, value28}, CancellationTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4))))))} + return result29 + +} + +//go:wasmimport golem:agent/host@2.0.0 [async-lower][method]future-invoke-result.get +func wasm_import_method_future_invoke_result_get(arg0 int32, arg1 uintptr) int32 + +func (self *FutureInvokeResult) Get() witTypes.Result[witTypes.Option[golem_core_types.SchemaValueTree], RpcError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (11 * 4), 4)) + + witAsync.SubtaskWait(uint32(wasm_import_method_future_invoke_result_get((self).Handle(), returnArea))) + var result235 witTypes.Result[witTypes.Option[golem_core_types.SchemaValueTree], RpcError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + var option20 witTypes.Option[golem_core_types.SchemaValueTree] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + option20 = witTypes.None[golem_core_types.SchemaValueTree]() + case 1: + result19 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4))))), index*(16+4*4)) + var variant18 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant18 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant18 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant18 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant18 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant18 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant18 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant18 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant18 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant18 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant18 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant18 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant18 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant18 = golem_core_types.MakeSchemaValueNodeStringValue(value) + + case 13: + result := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result = append(result, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant18 = golem_core_types.MakeSchemaValueNodeRecordValue(result) + + case 14: + var option witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option = witTypes.None[int32]() + case 1: + + option = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant18 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option}) + + case 15: + + variant18 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result0 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result0 = append(result0, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant18 = golem_core_types.MakeSchemaValueNodeFlagsValue(result0) + + case 17: + result1 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1 = append(result1, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant18 = golem_core_types.MakeSchemaValueNodeTupleValue(result1) + + case 18: + result2 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2 = append(result2, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant18 = golem_core_types.MakeSchemaValueNodeListValue(result2) + + case 19: + result3 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result3 = append(result3, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant18 = golem_core_types.MakeSchemaValueNodeFixedListValue(result3) + + case 20: + result4 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result4 = append(result4, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant18 = golem_core_types.MakeSchemaValueNodeMapValue(result4) + + case 21: + var option5 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option5 = witTypes.None[int32]() + case 1: + + option5 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant18 = golem_core_types.MakeSchemaValueNodeOptionValue(option5) + + case 22: + var variant golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option6 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option6 = witTypes.None[int32]() + case 1: + + option6 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadOkValue(option6) + + case 1: + var option7 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option7 = witTypes.None[int32]() + case 1: + + option7 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadErrValue(option7) + + default: + panic("unreachable") + } + + variant18 = golem_core_types.MakeSchemaValueNodeResultValue(variant) + + case 23: + value8 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option10 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option10 = witTypes.None[string]() + case 1: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option10 = witTypes.Some[string](value9) + default: + panic("unreachable") + } + + variant18 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value8, option10}) + + case 24: + value11 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option13 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option13 = witTypes.None[string]() + case 1: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option13 = witTypes.Some[string](value12) + default: + panic("unreachable") + } + + variant18 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value11, option13}) + + case 25: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant18 = golem_core_types.MakeSchemaValueNodePathValue(value14) + + case 26: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant18 = golem_core_types.MakeSchemaValueNodeUrlValue(value15) + + case 27: + + variant18 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant18 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value16 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant18 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value16}) + + case 30: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant18 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value17, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant18 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant18 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result19 = append(result19, variant18) + } + + option20 = witTypes.Some[golem_core_types.SchemaValueTree](golem_core_types.SchemaValueTree{result19, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))}) + default: + panic("unreachable") + } + + result235 = witTypes.Ok[witTypes.Option[golem_core_types.SchemaValueTree], RpcError](option20) + case 1: + var variant234 RpcError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant234 = MakeRpcErrorProtocolError(value21) + + case 1: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant234 = MakeRpcErrorDenied(value22) + + case 2: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant234 = MakeRpcErrorNotFound(value23) + + case 3: + value24 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant234 = MakeRpcErrorRemoteInternalError(value24) + + case 4: + var variant233 golem_agent_common.AgentError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant233 = golem_agent_common.MakeAgentErrorInvalidInput(value25) + + case 1: + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant233 = golem_agent_common.MakeAgentErrorInvalidMethod(value26) + + case 2: + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant233 = golem_agent_common.MakeAgentErrorInvalidType(value27) + + case 3: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant233 = golem_agent_common.MakeAgentErrorInvalidAgentId(value28) + + case 4: + result204 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(56+22*4)) + var variant192 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant192 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant192 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option35 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option35 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option30 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option30 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant29 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant29 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant29 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant29 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option30 = witTypes.Some[golem_core_types.NumericBound](variant29) + default: + panic("unreachable") + } + var option32 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option32 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant31 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant31 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant31 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant31 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option32 = witTypes.Some[golem_core_types.NumericBound](variant31) + default: + panic("unreachable") + } + var option34 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option34 = witTypes.None[string]() + case 1: + value33 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option34 = witTypes.Some[string](value33) + default: + panic("unreachable") + } + + option35 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option30, option32, option34}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyS8Type(option35) + + case 3: + var option42 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option42 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option37 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option37 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant36 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant36 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant36 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant36 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option37 = witTypes.Some[golem_core_types.NumericBound](variant36) + default: + panic("unreachable") + } + var option39 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option39 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant38 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant38 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant38 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant38 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option39 = witTypes.Some[golem_core_types.NumericBound](variant38) + default: + panic("unreachable") + } + var option41 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option41 = witTypes.None[string]() + case 1: + value40 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option41 = witTypes.Some[string](value40) + default: + panic("unreachable") + } + + option42 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option37, option39, option41}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyS16Type(option42) + + case 4: + var option49 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option49 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option44 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option44 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant43 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant43 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant43 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant43 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option44 = witTypes.Some[golem_core_types.NumericBound](variant43) + default: + panic("unreachable") + } + var option46 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option46 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant45 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant45 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant45 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant45 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option46 = witTypes.Some[golem_core_types.NumericBound](variant45) + default: + panic("unreachable") + } + var option48 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option48 = witTypes.None[string]() + case 1: + value47 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option48 = witTypes.Some[string](value47) + default: + panic("unreachable") + } + + option49 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option44, option46, option48}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyS32Type(option49) + + case 5: + var option56 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option56 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option51 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option51 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant50 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant50 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant50 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant50 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option51 = witTypes.Some[golem_core_types.NumericBound](variant50) + default: + panic("unreachable") + } + var option53 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option53 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant52 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant52 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant52 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant52 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option53 = witTypes.Some[golem_core_types.NumericBound](variant52) + default: + panic("unreachable") + } + var option55 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option55 = witTypes.None[string]() + case 1: + value54 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option55 = witTypes.Some[string](value54) + default: + panic("unreachable") + } + + option56 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option51, option53, option55}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyS64Type(option56) + + case 6: + var option63 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option63 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option58 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option58 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant57 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant57 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant57 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant57 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option58 = witTypes.Some[golem_core_types.NumericBound](variant57) + default: + panic("unreachable") + } + var option60 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option60 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant59 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant59 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant59 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant59 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option60 = witTypes.Some[golem_core_types.NumericBound](variant59) + default: + panic("unreachable") + } + var option62 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option62 = witTypes.None[string]() + case 1: + value61 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option62 = witTypes.Some[string](value61) + default: + panic("unreachable") + } + + option63 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option58, option60, option62}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyU8Type(option63) + + case 7: + var option70 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option70 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option65 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option65 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant64 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant64 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant64 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant64 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option65 = witTypes.Some[golem_core_types.NumericBound](variant64) + default: + panic("unreachable") + } + var option67 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option67 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant66 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant66 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant66 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant66 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option67 = witTypes.Some[golem_core_types.NumericBound](variant66) + default: + panic("unreachable") + } + var option69 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option69 = witTypes.None[string]() + case 1: + value68 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option69 = witTypes.Some[string](value68) + default: + panic("unreachable") + } + + option70 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option65, option67, option69}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyU16Type(option70) + + case 8: + var option77 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option77 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option72 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option72 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant71 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant71 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant71 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant71 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option72 = witTypes.Some[golem_core_types.NumericBound](variant71) + default: + panic("unreachable") + } + var option74 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option74 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant73 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant73 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant73 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant73 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option74 = witTypes.Some[golem_core_types.NumericBound](variant73) + default: + panic("unreachable") + } + var option76 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option76 = witTypes.None[string]() + case 1: + value75 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option76 = witTypes.Some[string](value75) + default: + panic("unreachable") + } + + option77 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option72, option74, option76}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyU32Type(option77) + + case 9: + var option84 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option84 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option79 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option79 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant78 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant78 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant78 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant78 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option79 = witTypes.Some[golem_core_types.NumericBound](variant78) + default: + panic("unreachable") + } + var option81 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option81 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant80 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant80 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant80 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant80 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option81 = witTypes.Some[golem_core_types.NumericBound](variant80) + default: + panic("unreachable") + } + var option83 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option83 = witTypes.None[string]() + case 1: + value82 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option83 = witTypes.Some[string](value82) + default: + panic("unreachable") + } + + option84 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option79, option81, option83}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyU64Type(option84) + + case 10: + var option91 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option91 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option86 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option86 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant85 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant85 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant85 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant85 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option86 = witTypes.Some[golem_core_types.NumericBound](variant85) + default: + panic("unreachable") + } + var option88 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option88 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant87 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant87 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant87 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant87 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option88 = witTypes.Some[golem_core_types.NumericBound](variant87) + default: + panic("unreachable") + } + var option90 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option90 = witTypes.None[string]() + case 1: + value89 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option90 = witTypes.Some[string](value89) + default: + panic("unreachable") + } + + option91 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option86, option88, option90}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyF32Type(option91) + + case 11: + var option98 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option98 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option93 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option93 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant92 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant92 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant92 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant92 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option93 = witTypes.Some[golem_core_types.NumericBound](variant92) + default: + panic("unreachable") + } + var option95 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option95 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant94 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant94 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant94 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant94 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option95 = witTypes.Some[golem_core_types.NumericBound](variant94) + default: + panic("unreachable") + } + var option97 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option97 = witTypes.None[string]() + case 1: + value96 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option97 = witTypes.Some[string](value96) + default: + panic("unreachable") + } + + option98 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option93, option95, option97}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyF64Type(option98) + + case 12: + + variant192 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant192 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result111 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value99 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option101 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option101 = witTypes.None[string]() + case 1: + value100 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option101 = witTypes.Some[string](value100) + default: + panic("unreachable") + } + result103 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value102 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result103 = append(result103, value102) + } + + result105 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value104 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result105 = append(result105, value104) + } + + var option107 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option107 = witTypes.None[string]() + case 1: + value106 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option107 = witTypes.Some[string](value106) + default: + panic("unreachable") + } + var option110 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option110 = witTypes.None[golem_core_types.Role]() + case 1: + var variant109 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant109 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant109 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant109 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value108 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant109 = golem_core_types.MakeRoleOther(value108) + + default: + panic("unreachable") + } + + option110 = witTypes.Some[golem_core_types.Role](variant109) + default: + panic("unreachable") + } + + result111 = append(result111, golem_core_types.NamedFieldType{value99, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option101, result103, result105, option107, option110}}) + } + + variant192 = golem_core_types.MakeSchemaTypeBodyRecordType(result111) + + case 15: + result125 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value112 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option113 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option113 = witTypes.None[int32]() + case 1: + + option113 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option115 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option115 = witTypes.None[string]() + case 1: + value114 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option115 = witTypes.Some[string](value114) + default: + panic("unreachable") + } + result117 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value116 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result117 = append(result117, value116) + } + + result119 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result119 = append(result119, value118) + } + + var option121 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option121 = witTypes.None[string]() + case 1: + value120 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option121 = witTypes.Some[string](value120) + default: + panic("unreachable") + } + var option124 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option124 = witTypes.None[golem_core_types.Role]() + case 1: + var variant123 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant123 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant123 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant123 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value122 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant123 = golem_core_types.MakeRoleOther(value122) + + default: + panic("unreachable") + } + + option124 = witTypes.Some[golem_core_types.Role](variant123) + default: + panic("unreachable") + } + + result125 = append(result125, golem_core_types.VariantCaseType{value112, option113, golem_core_types.MetadataEnvelope{option115, result117, result119, option121, option124}}) + } + + variant192 = golem_core_types.MakeSchemaTypeBodyVariantType(result125) + + case 16: + result127 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result127 = append(result127, value126) + } + + variant192 = golem_core_types.MakeSchemaTypeBodyEnumType(result127) + + case 17: + result129 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result129 = append(result129, value128) + } + + variant192 = golem_core_types.MakeSchemaTypeBodyFlagsType(result129) + + case 18: + result130 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result130 = append(result130, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant192 = golem_core_types.MakeSchemaTypeBodyTupleType(result130) + + case 19: + + variant192 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant192 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant192 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant192 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option131 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option131 = witTypes.None[int32]() + case 1: + + option131 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option132 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option132 = witTypes.None[int32]() + case 1: + + option132 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option131, option132}) + + case 24: + var option135 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option135 = witTypes.None[[]string]() + case 1: + result134 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value133 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result134 = append(result134, value133) + } + + option135 = witTypes.Some[[]string](result134) + default: + panic("unreachable") + } + var option136 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option136 = witTypes.None[uint32]() + case 1: + + option136 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option137 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option137 = witTypes.None[uint32]() + case 1: + + option137 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option139 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option139 = witTypes.None[string]() + case 1: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option139 = witTypes.Some[string](value138) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option135, option136, option137, option139}) + + case 25: + var option142 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option142 = witTypes.None[[]string]() + case 1: + result141 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value140 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result141 = append(result141, value140) + } + + option142 = witTypes.Some[[]string](result141) + default: + panic("unreachable") + } + var option143 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option143 = witTypes.None[uint32]() + case 1: + + option143 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option144 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option144 = witTypes.None[uint32]() + case 1: + + option144 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option142, option143, option144}) + + case 26: + var option147 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option147 = witTypes.None[[]string]() + case 1: + result146 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result146 = append(result146, value145) + } + + option147 = witTypes.Some[[]string](result146) + default: + panic("unreachable") + } + var option150 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option150 = witTypes.None[[]string]() + case 1: + result149 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result149 = append(result149, value148) + } + + option150 = witTypes.Some[[]string](result149) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option147, option150}) + + case 27: + var option153 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option153 = witTypes.None[[]string]() + case 1: + result152 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result152 = append(result152, value151) + } + + option153 = witTypes.Some[[]string](result152) + default: + panic("unreachable") + } + var option156 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option156 = witTypes.None[[]string]() + case 1: + result155 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value154 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result155 = append(result155, value154) + } + + option156 = witTypes.Some[[]string](result155) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option153, option156}) + + case 28: + + variant192 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant192 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result159 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value158 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result159 = append(result159, value158) + } + + var option161 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option161 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value160 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option161 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value160}) + default: + panic("unreachable") + } + var option163 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option163 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value162 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option163 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value162}) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value157, result159, option161, option163}) + + case 31: + result185 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value164 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant173 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value165 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant173 = golem_core_types.MakeDiscriminatorRulePrefix(value165) + + case 1: + value166 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant173 = golem_core_types.MakeDiscriminatorRuleSuffix(value166) + + case 2: + value167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant173 = golem_core_types.MakeDiscriminatorRuleContains(value167) + + case 3: + value168 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant173 = golem_core_types.MakeDiscriminatorRuleRegex(value168) + + case 4: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option171 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option171 = witTypes.None[string]() + case 1: + value170 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option171 = witTypes.Some[string](value170) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value169, option171}) + + case 5: + value172 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant173 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value172) + + default: + panic("unreachable") + } + var option175 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option175 = witTypes.None[string]() + case 1: + value174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option175 = witTypes.Some[string](value174) + default: + panic("unreachable") + } + result177 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result177 = append(result177, value176) + } + + result179 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result179 = append(result179, value178) + } + + var option181 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option181 = witTypes.None[string]() + case 1: + value180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option181 = witTypes.Some[string](value180) + default: + panic("unreachable") + } + var option184 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option184 = witTypes.None[golem_core_types.Role]() + case 1: + var variant183 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant183 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant183 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant183 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant183 = golem_core_types.MakeRoleOther(value182) + + default: + panic("unreachable") + } + + option184 = witTypes.Some[golem_core_types.Role](variant183) + default: + panic("unreachable") + } + + result185 = append(result185, golem_core_types.UnionBranch{value164, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant173, golem_core_types.MetadataEnvelope{option175, result177, result179, option181, option184}}) + } + + variant192 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result185}) + + case 32: + var option187 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option187 = witTypes.None[string]() + case 1: + value186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option187 = witTypes.Some[string](value186) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option187}) + + case 33: + var option189 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option189 = witTypes.None[string]() + case 1: + value188 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option189 = witTypes.Some[string](value188) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option189}) + + case 34: + var option190 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option190 = witTypes.None[int32]() + case 1: + + option190 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyFutureType(option190) + + case 35: + var option191 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option191 = witTypes.None[int32]() + case 1: + + option191 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant192 = golem_core_types.MakeSchemaTypeBodyStreamType(option191) + + default: + panic("unreachable") + } + var option194 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option194 = witTypes.None[string]() + case 1: + value193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option194 = witTypes.Some[string](value193) + default: + panic("unreachable") + } + result196 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result196 = append(result196, value195) + } + + result198 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result198 = append(result198, value197) + } + + var option200 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option200 = witTypes.None[string]() + case 1: + value199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option200 = witTypes.Some[string](value199) + default: + panic("unreachable") + } + var option203 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option203 = witTypes.None[golem_core_types.Role]() + case 1: + var variant202 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant202 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant202 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant202 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant202 = golem_core_types.MakeRoleOther(value201) + + default: + panic("unreachable") + } + + option203 = witTypes.Some[golem_core_types.Role](variant202) + default: + panic("unreachable") + } + + result204 = append(result204, golem_core_types.SchemaTypeNode{variant192, golem_core_types.MetadataEnvelope{option194, result196, result198, option200, option203}}) + } + + result208 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4))))), index*(6*4)) + value205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option207 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option207 = witTypes.None[string]() + case 1: + value206 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option207 = witTypes.Some[string](value206) + default: + panic("unreachable") + } + + result208 = append(result208, golem_core_types.SchemaTypeDef{value205, option207, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result232 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 * 4))))), index*(16+4*4)) + var variant231 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant231 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant231 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant231 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant231 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant231 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant231 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant231 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant231 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant231 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant231 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant231 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant231 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant231 = golem_core_types.MakeSchemaValueNodeStringValue(value209) + + case 13: + result210 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result210 = append(result210, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant231 = golem_core_types.MakeSchemaValueNodeRecordValue(result210) + + case 14: + var option211 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option211 = witTypes.None[int32]() + case 1: + + option211 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant231 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option211}) + + case 15: + + variant231 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result212 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result212 = append(result212, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant231 = golem_core_types.MakeSchemaValueNodeFlagsValue(result212) + + case 17: + result213 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result213 = append(result213, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant231 = golem_core_types.MakeSchemaValueNodeTupleValue(result213) + + case 18: + result214 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result214 = append(result214, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant231 = golem_core_types.MakeSchemaValueNodeListValue(result214) + + case 19: + result215 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result215 = append(result215, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant231 = golem_core_types.MakeSchemaValueNodeFixedListValue(result215) + + case 20: + result216 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result216 = append(result216, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant231 = golem_core_types.MakeSchemaValueNodeMapValue(result216) + + case 21: + var option217 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option217 = witTypes.None[int32]() + case 1: + + option217 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant231 = golem_core_types.MakeSchemaValueNodeOptionValue(option217) + + case 22: + var variant220 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option218 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option218 = witTypes.None[int32]() + case 1: + + option218 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant220 = golem_core_types.MakeResultValuePayloadOkValue(option218) + + case 1: + var option219 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option219 = witTypes.None[int32]() + case 1: + + option219 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant220 = golem_core_types.MakeResultValuePayloadErrValue(option219) + + default: + panic("unreachable") + } + + variant231 = golem_core_types.MakeSchemaValueNodeResultValue(variant220) + + case 23: + value221 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option223 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option223 = witTypes.None[string]() + case 1: + value222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option223 = witTypes.Some[string](value222) + default: + panic("unreachable") + } + + variant231 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value221, option223}) + + case 24: + value224 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option226 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option226 = witTypes.None[string]() + case 1: + value225 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option226 = witTypes.Some[string](value225) + default: + panic("unreachable") + } + + variant231 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value224, option226}) + + case 25: + value227 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant231 = golem_core_types.MakeSchemaValueNodePathValue(value227) + + case 26: + value228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant231 = golem_core_types.MakeSchemaValueNodeUrlValue(value228) + + case 27: + + variant231 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant231 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value229 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant231 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value229}) + + case 30: + value230 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant231 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value230, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant231 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant231 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result232 = append(result232, variant231) + } + + variant233 = golem_agent_common.MakeAgentErrorCustomError(golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result204, result208, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4)))}, golem_core_types.SchemaValueTree{result232, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (10 * 4)))}}) + + default: + panic("unreachable") + } + + variant234 = MakeRpcErrorRemoteAgentError(variant233) + + default: + panic("unreachable") + } + + result235 = witTypes.Err[witTypes.Option[golem_core_types.SchemaValueTree], RpcError](variant234) + default: + panic("unreachable") + } + + return result235 + +} + +//go:wasmimport golem:agent/host@2.0.0 [method]future-invoke-result.cancel +func wasm_import_method_future_invoke_result_cancel(arg0 int32) + +func (self *FutureInvokeResult) Cancel() { + + wasm_import_method_future_invoke_result_cancel((self).Handle()) + +} + +//go:wasmimport golem:agent/host@2.0.0 [method]cancellation-token.cancel +func wasm_import_method_cancellation_token_cancel(arg0 int32) + +func (self *CancellationToken) Cancel() { + + wasm_import_method_cancellation_token_cancel((self).Handle()) + +} + +//go:wasmimport golem:agent/host@2.0.0 get-config-value +func wasm_import_get_config_value(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 uintptr, arg5 uint32, arg6 int32, arg7 uintptr) + +func GetConfigValue(key []string, expected golem_core_types.SchemaGraph) golem_core_types.SchemaValueTree { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + slice := key + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(2*4)) + utf8 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + + } + + slice118 := (expected).TypeNodes + length120 := uint32(len(slice118)) + result119 := witRuntime.Allocate(pinner, uintptr(length120*(56+22*4)), 8) + for index, element := range slice118 { + base := unsafe.Add(result119, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf80))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf81))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf82))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf83))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf84))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf85))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf86))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf87))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf88 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf88))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf89 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf89) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf89))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice22 := payload + length24 := uint32(len(slice22)) + result23 := witRuntime.Allocate(pinner, uintptr(length24*(17*4)), 4) + for index, element := range slice22 { + base := unsafe.Add(result23, index*(17*4)) + utf810 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf810) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf810))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf811 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf811) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf811))) + + default: + panic("unreachable") + } + slice13 := ((element).Metadata).Aliases + length15 := uint32(len(slice13)) + result14 := witRuntime.Allocate(pinner, uintptr(length15*(2*4)), 4) + for index, element := range slice13 { + base := unsafe.Add(result14, index*(2*4)) + utf812 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf812))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length15) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result14))) + slice17 := ((element).Metadata).Examples + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*(2*4)), 4) + for index, element := range slice17 { + base := unsafe.Add(result18, index*(2*4)) + utf816 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf816))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length19) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result18))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf821))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length24) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result23))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice37 := payload + length39 := uint32(len(slice37)) + result38 := witRuntime.Allocate(pinner, uintptr(length39*(8+16*4)), 4) + for index, element := range slice37 { + base := unsafe.Add(result38, index*(8+16*4)) + utf825 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf825) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf825))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf826 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf826) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf826))) + + default: + panic("unreachable") + } + slice28 := ((element).Metadata).Aliases + length30 := uint32(len(slice28)) + result29 := witRuntime.Allocate(pinner, uintptr(length30*(2*4)), 4) + for index, element := range slice28 { + base := unsafe.Add(result29, index*(2*4)) + utf827 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf827) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf827))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result29))) + slice32 := ((element).Metadata).Examples + length34 := uint32(len(slice32)) + result33 := witRuntime.Allocate(pinner, uintptr(length34*(2*4)), 4) + for index, element := range slice32 { + base := unsafe.Add(result33, index*(2*4)) + utf831 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf831) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf831))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length34) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result33))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf835))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf836 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf836))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length39) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result38))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice41 := payload + length43 := uint32(len(slice41)) + result42 := witRuntime.Allocate(pinner, uintptr(length43*(2*4)), 4) + for index, element := range slice41 { + base := unsafe.Add(result42, index*(2*4)) + utf840 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf840) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf840))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length43) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result42))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice45 := payload + length47 := uint32(len(slice45)) + result46 := witRuntime.Allocate(pinner, uintptr(length47*(2*4)), 4) + for index, element := range slice45 { + base := unsafe.Add(result46, index*(2*4)) + utf844 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf844) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf844))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length47) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result46))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice48 := payload + length50 := uint32(len(slice48)) + result49 := witRuntime.Allocate(pinner, uintptr(length50*4), 4) + for index, element := range slice48 { + base := unsafe.Add(result49, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length50) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result49))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice52 := payload + length54 := uint32(len(slice52)) + result53 := witRuntime.Allocate(pinner, uintptr(length54*(2*4)), 4) + for index, element := range slice52 { + base := unsafe.Add(result53, index*(2*4)) + utf851 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf851) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf851))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length54) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result53))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf855 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf855) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf855))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice57 := payload + length59 := uint32(len(slice57)) + result58 := witRuntime.Allocate(pinner, uintptr(length59*(2*4)), 4) + for index, element := range slice57 { + base := unsafe.Add(result58, index*(2*4)) + utf856 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf856) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf856))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length59) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result58))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice61 := payload + length63 := uint32(len(slice61)) + result62 := witRuntime.Allocate(pinner, uintptr(length63*(2*4)), 4) + for index, element := range slice61 { + base := unsafe.Add(result62, index*(2*4)) + utf860 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf860) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf860))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length63) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result62))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice65 := payload + length67 := uint32(len(slice65)) + result66 := witRuntime.Allocate(pinner, uintptr(length67*(2*4)), 4) + for index, element := range slice65 { + base := unsafe.Add(result66, index*(2*4)) + utf864 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf864) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf864))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length67) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result66))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice69 := payload + length71 := uint32(len(slice69)) + result70 := witRuntime.Allocate(pinner, uintptr(length71*(2*4)), 4) + for index, element := range slice69 { + base := unsafe.Add(result70, index*(2*4)) + utf868 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf868) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf868))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length71) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result70))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice73 := payload + length75 := uint32(len(slice73)) + result74 := witRuntime.Allocate(pinner, uintptr(length75*(2*4)), 4) + for index, element := range slice73 { + base := unsafe.Add(result74, index*(2*4)) + utf872 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf872) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf872))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length75) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result74))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf876 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf876) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf876))) + slice78 := (payload).AllowedSuffixes + length80 := uint32(len(slice78)) + result79 := witRuntime.Allocate(pinner, uintptr(length80*(2*4)), 4) + for index, element := range slice78 { + base := unsafe.Add(result79, index*(2*4)) + utf877 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf877) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf877))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result79))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf881 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf881))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf882 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf882) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf882))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice102 := (payload).Branches + length104 := uint32(len(slice102)) + result103 := witRuntime.Allocate(pinner, uintptr(length104*(23*4)), 4) + for index, element := range slice102 { + base := unsafe.Add(result103, index*(23*4)) + utf883 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf883) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf883))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf884 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf884) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf884))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf885 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf885))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf886 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf886) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf886))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf887 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf887) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf887))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf888 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf888) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf888))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf889 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf889) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf889))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf890 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf890) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf890))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf891 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf891) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf891))) + + default: + panic("unreachable") + } + slice93 := ((element).Metadata).Aliases + length95 := uint32(len(slice93)) + result94 := witRuntime.Allocate(pinner, uintptr(length95*(2*4)), 4) + for index, element := range slice93 { + base := unsafe.Add(result94, index*(2*4)) + utf892 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf892) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf892))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length95) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result94))) + slice97 := ((element).Metadata).Examples + length99 := uint32(len(slice97)) + result98 := witRuntime.Allocate(pinner, uintptr(length99*(2*4)), 4) + for index, element := range slice97 { + base := unsafe.Add(result98, index*(2*4)) + utf896 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf896) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf896))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length99) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result98))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8100 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8100) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8100))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8101 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8101))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length104) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result103))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8105 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8105) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8105))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8106 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8106) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8106))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8107 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8107) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8107))) + + default: + panic("unreachable") + } + slice109 := ((element).Metadata).Aliases + length111 := uint32(len(slice109)) + result110 := witRuntime.Allocate(pinner, uintptr(length111*(2*4)), 4) + for index, element := range slice109 { + base := unsafe.Add(result110, index*(2*4)) + utf8108 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8108) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8108))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length111) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result110))) + slice113 := ((element).Metadata).Examples + length115 := uint32(len(slice113)) + result114 := witRuntime.Allocate(pinner, uintptr(length115*(2*4)), 4) + for index, element := range slice113 { + base := unsafe.Add(result114, index*(2*4)) + utf8112 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8112))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length115) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result114))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8116 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8116) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8116))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8117 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8117) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8117))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + slice123 := (expected).Defs + length125 := uint32(len(slice123)) + result124 := witRuntime.Allocate(pinner, uintptr(length125*(6*4)), 4) + for index, element := range slice123 { + base := unsafe.Add(result124, index*(6*4)) + utf8121 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8121) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8121))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8122 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8122) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8122))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + wasm_import_get_config_value(uintptr(result), length, uintptr(result119), length120, uintptr(result124), length125, (expected).Root, returnArea) + result146 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(16+4*4)) + var variant145 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant145 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant145 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant145 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant145 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant145 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant145 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant145 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant145 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant145 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant145 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant145 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant145 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant145 = golem_core_types.MakeSchemaValueNodeStringValue(value) + + case 13: + result126 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result126 = append(result126, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant145 = golem_core_types.MakeSchemaValueNodeRecordValue(result126) + + case 14: + var option witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option = witTypes.None[int32]() + case 1: + + option = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant145 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option}) + + case 15: + + variant145 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result127 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result127 = append(result127, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant145 = golem_core_types.MakeSchemaValueNodeFlagsValue(result127) + + case 17: + result128 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result128 = append(result128, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant145 = golem_core_types.MakeSchemaValueNodeTupleValue(result128) + + case 18: + result129 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result129 = append(result129, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant145 = golem_core_types.MakeSchemaValueNodeListValue(result129) + + case 19: + result130 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result130 = append(result130, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant145 = golem_core_types.MakeSchemaValueNodeFixedListValue(result130) + + case 20: + result131 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result131 = append(result131, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant145 = golem_core_types.MakeSchemaValueNodeMapValue(result131) + + case 21: + var option132 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option132 = witTypes.None[int32]() + case 1: + + option132 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant145 = golem_core_types.MakeSchemaValueNodeOptionValue(option132) + + case 22: + var variant golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option133 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option133 = witTypes.None[int32]() + case 1: + + option133 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadOkValue(option133) + + case 1: + var option134 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option134 = witTypes.None[int32]() + case 1: + + option134 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadErrValue(option134) + + default: + panic("unreachable") + } + + variant145 = golem_core_types.MakeSchemaValueNodeResultValue(variant) + + case 23: + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option137 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option137 = witTypes.None[string]() + case 1: + value136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option137 = witTypes.Some[string](value136) + default: + panic("unreachable") + } + + variant145 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value135, option137}) + + case 24: + value138 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option140 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option140 = witTypes.None[string]() + case 1: + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option140 = witTypes.Some[string](value139) + default: + panic("unreachable") + } + + variant145 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value138, option140}) + + case 25: + value141 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant145 = golem_core_types.MakeSchemaValueNodePathValue(value141) + + case 26: + value142 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant145 = golem_core_types.MakeSchemaValueNodeUrlValue(value142) + + case 27: + + variant145 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant145 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value143 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant145 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value143}) + + case 30: + value144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant145 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value144, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant145 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant145 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result146 = append(result146, variant145) + } + + result147 := golem_core_types.SchemaValueTree{result146, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))} + return result147 + +} diff --git a/sdks/go/internal/wit/golem_api_context/empty.s b/sdks/go/internal/wit/golem_api_context/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_api_context/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_api_context/wit_bindings.go b/sdks/go/internal/wit/golem_api_context/wit_bindings.go new file mode 100644 index 0000000000..08ec1d6f28 --- /dev/null +++ b/sdks/go/internal/wit/golem_api_context/wit_bindings.go @@ -0,0 +1,533 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_api_context + +import ( + "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Datetime = wasi_clocks_0_3_0_system_clock.Instant + +//go:wasmimport golem:api/context@1.5.0 [resource-drop]span +func resourceDropSpan(handle int32) + +// Represents a unit of work or operation +type Span struct { + handle *witRuntime.Handle +} + +func (self *Span) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Span) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Span) Handle() int32 { + return self.handle.Use() +} + +func (self *Span) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropSpan(handle) + } +} + +func SpanFromOwnHandle(handleValue int32) *Span { + handle := witRuntime.MakeHandle(handleValue) + value := &Span{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropSpan(handleValue) + } + }, 0) + return value +} + +func SpanFromBorrowHandle(handleValue int32) *Span { + handle := witRuntime.MakeHandle(handleValue) + return &Span{handle} +} + +//go:wasmimport golem:api/context@1.5.0 [resource-drop]invocation-context +func resourceDropInvocationContext(handle int32) + +// Represents an invocation context wich allows querying the stack of attributes +// created by automatic and user-defined spans. +type InvocationContext struct { + handle *witRuntime.Handle +} + +func (self *InvocationContext) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *InvocationContext) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *InvocationContext) Handle() int32 { + return self.handle.Use() +} + +func (self *InvocationContext) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropInvocationContext(handle) + } +} + +func InvocationContextFromOwnHandle(handleValue int32) *InvocationContext { + handle := witRuntime.MakeHandle(handleValue) + value := &InvocationContext{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropInvocationContext(handleValue) + } + }, 0) + return value +} + +func InvocationContextFromBorrowHandle(handleValue int32) *InvocationContext { + handle := witRuntime.MakeHandle(handleValue) + return &InvocationContext{handle} +} + +const ( + // A string value + AttributeValueString uint8 = 0 +) + +// Possible span attribute value types +type AttributeValue struct { + tag uint8 + value any +} + +func (self AttributeValue) Tag() uint8 { + return self.tag +} + +func (self AttributeValue) String() string { + if self.tag != AttributeValueString { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeAttributeValueString(value string) AttributeValue { + return AttributeValue{AttributeValueString, value} +} + +// An attribute of a span +type Attribute struct { + Key string + Value AttributeValue +} + +// A chain of attribute values, the first element representing the most recent value +type AttributeChain struct { + Key string + Values []AttributeValue +} + +// The trace represented by a 16 bytes hexadecimal string +type TraceId = string + +// The span represented by a 8 bytes hexadecimal string +type SpanId = string + +//go:wasmimport golem:api/context@1.5.0 start-span +func wasm_import_start_span(arg0 uintptr, arg1 uint32) int32 + +func StartSpan(name string) *Span { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + result := wasm_import_start_span(uintptr(utf8), uint32(len(name))) + return SpanFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport golem:api/context@1.5.0 current-context +func wasm_import_current_context() int32 + +func CurrentContext() *InvocationContext { + + result := wasm_import_current_context() + return InvocationContextFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport golem:api/context@1.5.0 allow-forwarding-trace-context-headers +func wasm_import_allow_forwarding_trace_context_headers(arg0 int32) int32 + +func AllowForwardingTraceContextHeaders(allow bool) bool { + + var result int32 + if allow { + result = 1 + } else { + result = 0 + } + result0 := wasm_import_allow_forwarding_trace_context_headers(result) + return (result0 != 0) + +} + +//go:wasmimport golem:api/context@1.5.0 [method]span.started-at +func wasm_import_method_span_started_at(arg0 int32, arg1 uintptr) + +func (self *Span) StartedAt() wasi_clocks_0_3_0_system_clock.Instant { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 16, 8)) + wasm_import_method_span_started_at((self).Handle(), returnArea) + result := wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 0)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))} + return result + +} + +//go:wasmimport golem:api/context@1.5.0 [method]span.set-attribute +func wasm_import_method_span_set_attribute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 int32, arg4 uintptr, arg5 uint32) + +func (self *Span) SetAttribute(name string, value AttributeValue) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + var variant int32 + var variant1 uintptr + var variant2 uint32 + switch value.Tag() { + case AttributeValueString: + payload := value.String() + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + + variant = int32(0) + variant1 = uintptr(utf80) + variant2 = uint32(len(payload)) + + default: + panic("unreachable") + } + wasm_import_method_span_set_attribute((self).Handle(), uintptr(utf8), uint32(len(name)), variant, variant1, variant2) + +} + +//go:wasmimport golem:api/context@1.5.0 [method]span.set-attributes +func wasm_import_method_span_set_attributes(arg0 int32, arg1 uintptr, arg2 uint32) + +func (self *Span) SetAttributes(attributes []Attribute) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + slice := attributes + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(5*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(5*4)) + utf8 := unsafe.Pointer(unsafe.StringData((element).Key)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Key))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + + switch (element).Value.Tag() { + case AttributeValueString: + payload := (element).Value.String() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf80))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_span_set_attributes((self).Handle(), uintptr(result), length) + +} + +//go:wasmimport golem:api/context@1.5.0 [method]span.finish +func wasm_import_method_span_finish(arg0 int32) + +func (self *Span) Finish() { + + wasm_import_method_span_finish((self).Handle()) + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.trace-id +func wasm_import_method_invocation_context_trace_id(arg0 int32, arg1 uintptr) + +func (self *InvocationContext) TraceId() string { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_invocation_context_trace_id((self).Handle(), returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + result := value + return result + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.span-id +func wasm_import_method_invocation_context_span_id(arg0 int32, arg1 uintptr) + +func (self *InvocationContext) SpanId() string { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_invocation_context_span_id((self).Handle(), returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + result := value + return result + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.parent +func wasm_import_method_invocation_context_parent(arg0 int32, arg1 uintptr) + +func (self *InvocationContext) Parent() witTypes.Option[*InvocationContext] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + wasm_import_method_invocation_context_parent((self).Handle(), returnArea) + var option witTypes.Option[*InvocationContext] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[*InvocationContext]() + case 1: + + option = witTypes.Some[*InvocationContext](InvocationContextFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.get-attribute +func wasm_import_method_invocation_context_get_attribute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 int32, arg4 uintptr) + +func (self *InvocationContext) GetAttribute(key string, inherited bool) witTypes.Option[AttributeValue] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(key)) + pinner.Pin(utf8) + var result int32 + if inherited { + result = 1 + } else { + result = 0 + } + wasm_import_method_invocation_context_get_attribute((self).Handle(), uintptr(utf8), uint32(len(key)), result, returnArea) + var option witTypes.Option[AttributeValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[AttributeValue]() + case 1: + var variant AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeAttributeValueString(value) + + default: + panic("unreachable") + } + + option = witTypes.Some[AttributeValue](variant) + default: + panic("unreachable") + } + result0 := option + return result0 + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.get-attributes +func wasm_import_method_invocation_context_get_attributes(arg0 int32, arg1 int32, arg2 uintptr) + +func (self *InvocationContext) GetAttributes(inherited bool) []Attribute { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + var result int32 + if inherited { + result = 1 + } else { + result = 0 + } + wasm_import_method_invocation_context_get_attributes((self).Handle(), result, returnArea) + result1 := make([]Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(5*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant = MakeAttributeValueString(value0) + + default: + panic("unreachable") + } + + result1 = append(result1, Attribute{value, variant}) + } + + result2 := result1 + return result2 + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.get-attribute-chain +func wasm_import_method_invocation_context_get_attribute_chain(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *InvocationContext) GetAttributeChain(key string) []AttributeValue { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(key)) + pinner.Pin(utf8) + wasm_import_method_invocation_context_get_attribute_chain((self).Handle(), uintptr(utf8), uint32(len(key)), returnArea) + result := make([]AttributeValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(3*4)) + var variant AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant = MakeAttributeValueString(value) + + default: + panic("unreachable") + } + + result = append(result, variant) + } + + result0 := result + return result0 + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.get-attribute-chains +func wasm_import_method_invocation_context_get_attribute_chains(arg0 int32, arg1 uintptr) + +func (self *InvocationContext) GetAttributeChains() []AttributeChain { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_invocation_context_get_attribute_chains((self).Handle(), returnArea) + result1 := make([]AttributeChain, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + result := make([]AttributeValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))), index*(3*4)) + var variant AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) + + variant = MakeAttributeValueString(value0) + + default: + panic("unreachable") + } + + result = append(result, variant) + } + + result1 = append(result1, AttributeChain{value, result}) + } + + result2 := result1 + return result2 + +} + +//go:wasmimport golem:api/context@1.5.0 [method]invocation-context.trace-context-headers +func wasm_import_method_invocation_context_trace_context_headers(arg0 int32, arg1 uintptr) + +func (self *InvocationContext) TraceContextHeaders() []witTypes.Tuple2[string, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_invocation_context_trace_context_headers((self).Handle(), returnArea) + result := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result = append(result, witTypes.Tuple2[string, string]{value, value0}) + } + + result1 := result + return result1 + +} diff --git a/sdks/go/internal/wit/golem_api_host/empty.s b/sdks/go/internal/wit/golem_api_host/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_api_host/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_api_host/wit_bindings.go b/sdks/go/internal/wit/golem_api_host/wit_bindings.go new file mode 100644 index 0000000000..bca6662bbc --- /dev/null +++ b/sdks/go/internal/wit/golem_api_host/wit_bindings.go @@ -0,0 +1,1192 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_api_host + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witAsync "go.bytecodealliance.org/pkg/wit/async" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type ComponentId = golem_core_types.ComponentId +type CardId = golem_core_types.CardId +type Uuid = golem_core_types.Uuid +type AgentId = golem_core_types.AgentId +type PromiseId = golem_core_types.PromiseId +type OplogIndex = uint64 + +// Represents a Golem component's version +type ComponentRevision = uint64 + +// Represents a Golem environment +type EnvironmentId struct { + Uuid golem_core_types.Uuid +} + +const ( + PersistenceLevelPersistNothing uint8 = 0 + PersistenceLevelPersistRemoteSideEffects uint8 = 1 + PersistenceLevelSmart uint8 = 2 +) + +// Configurable persistence level for agents +type PersistenceLevel struct { + tag uint8 + value any +} + +func (self PersistenceLevel) Tag() uint8 { + return self.tag +} + +func MakePersistenceLevelPersistNothing() PersistenceLevel { + return PersistenceLevel{PersistenceLevelPersistNothing, nil} +} +func MakePersistenceLevelPersistRemoteSideEffects() PersistenceLevel { + return PersistenceLevel{PersistenceLevelPersistRemoteSideEffects, nil} +} +func MakePersistenceLevelSmart() PersistenceLevel { + return PersistenceLevel{PersistenceLevelSmart, nil} +} + +const ( + // Automatic update tries to recover the agent using the new component version + // and may fail if there is a divergence. + UpdateModeAutomatic uint8 = 0 + // Manual, snapshot-based update uses a user-defined implementation of the `save-snapshot` interface + // to store the agent's state, and a user-defined implementation of the `load-snapshot` interface to + // load it into the new version. + UpdateModeSnapshotBased uint8 = 1 +) + +// Describes how to update an agent to a different component version +type UpdateMode = uint8 + +const ( + FilterComparatorEqual uint8 = 0 + FilterComparatorNotEqual uint8 = 1 + FilterComparatorGreaterEqual uint8 = 2 + FilterComparatorGreater uint8 = 3 + FilterComparatorLessEqual uint8 = 4 + FilterComparatorLess uint8 = 5 +) + +// Operators used in filtering enumerated agents +type FilterComparator = uint8 + +const ( + StringFilterComparatorEqual uint8 = 0 + StringFilterComparatorNotEqual uint8 = 1 + StringFilterComparatorLike uint8 = 2 + StringFilterComparatorNotLike uint8 = 3 + StringFilterComparatorStartsWith uint8 = 4 +) + +// Operators used on strings in filtering enumerated agents +type StringFilterComparator = uint8 + +const ( + // The agent is running an invoked function + AgentStatusRunning uint8 = 0 + // The agent is ready to run an invoked function + AgentStatusIdle uint8 = 1 + // An invocation is active but waiting for something (sleeping, waiting for a promise) + AgentStatusSuspended uint8 = 2 + // The last invocation was interrupted but will be resumed + AgentStatusInterrupted uint8 = 3 + // The last invocation failed and a retry was scheduled + AgentStatusRetrying uint8 = 4 + // The last invocation failed and the agent can no longer be used + AgentStatusFailed uint8 = 5 + // The agent exited after a successful invocation and can no longer be invoked + AgentStatusExited uint8 = 6 +) + +// The current status of an agent +type AgentStatus = uint8 + +// Describes a filter condition on agent IDs when enumerating agents +type AgentNameFilter struct { + Comparator StringFilterComparator + Value string +} + +// Describes a filter condition on the agent status when enumerating agents +type AgentStatusFilter struct { + Comparator FilterComparator + Value AgentStatus +} + +// Describes a filter condition on the component version when enumerating agents +type AgentVersionFilter struct { + Comparator FilterComparator + Value uint64 +} + +// Describes a filter condition on the agent's creation time when enumerating agents +type AgentCreatedAtFilter struct { + Comparator FilterComparator + Value uint64 +} + +// Describes a filter condition on the agent's environment variables when enumerating agents +type AgentEnvFilter struct { + Name string + Comparator StringFilterComparator + Value string +} + +// Describes a filter condition on the agent's configuration variables when enumerating agents +type AgentConfigVarsFilter struct { + Name string + Comparator StringFilterComparator + Value string +} + +const ( + AgentPropertyFilterName uint8 = 0 + AgentPropertyFilterStatus uint8 = 1 + AgentPropertyFilterVersion uint8 = 2 + AgentPropertyFilterCreatedAt uint8 = 3 + AgentPropertyFilterEnv uint8 = 4 + AgentPropertyFilterConfig uint8 = 5 +) + +// Describes one filter condition for enumerating agents +type AgentPropertyFilter struct { + tag uint8 + value any +} + +func (self AgentPropertyFilter) Tag() uint8 { + return self.tag +} + +func (self AgentPropertyFilter) Name() AgentNameFilter { + if self.tag != AgentPropertyFilterName { + panic("tag mismatch") + } + return self.value.(AgentNameFilter) +} +func (self AgentPropertyFilter) Status() AgentStatusFilter { + if self.tag != AgentPropertyFilterStatus { + panic("tag mismatch") + } + return self.value.(AgentStatusFilter) +} +func (self AgentPropertyFilter) Version() AgentVersionFilter { + if self.tag != AgentPropertyFilterVersion { + panic("tag mismatch") + } + return self.value.(AgentVersionFilter) +} +func (self AgentPropertyFilter) CreatedAt() AgentCreatedAtFilter { + if self.tag != AgentPropertyFilterCreatedAt { + panic("tag mismatch") + } + return self.value.(AgentCreatedAtFilter) +} +func (self AgentPropertyFilter) Env() AgentEnvFilter { + if self.tag != AgentPropertyFilterEnv { + panic("tag mismatch") + } + return self.value.(AgentEnvFilter) +} +func (self AgentPropertyFilter) Config() AgentConfigVarsFilter { + if self.tag != AgentPropertyFilterConfig { + panic("tag mismatch") + } + return self.value.(AgentConfigVarsFilter) +} + +func MakeAgentPropertyFilterName(value AgentNameFilter) AgentPropertyFilter { + return AgentPropertyFilter{AgentPropertyFilterName, value} +} +func MakeAgentPropertyFilterStatus(value AgentStatusFilter) AgentPropertyFilter { + return AgentPropertyFilter{AgentPropertyFilterStatus, value} +} +func MakeAgentPropertyFilterVersion(value AgentVersionFilter) AgentPropertyFilter { + return AgentPropertyFilter{AgentPropertyFilterVersion, value} +} +func MakeAgentPropertyFilterCreatedAt(value AgentCreatedAtFilter) AgentPropertyFilter { + return AgentPropertyFilter{AgentPropertyFilterCreatedAt, value} +} +func MakeAgentPropertyFilterEnv(value AgentEnvFilter) AgentPropertyFilter { + return AgentPropertyFilter{AgentPropertyFilterEnv, value} +} +func MakeAgentPropertyFilterConfig(value AgentConfigVarsFilter) AgentPropertyFilter { + return AgentPropertyFilter{AgentPropertyFilterConfig, value} +} + +// Combines multiple filter conditions with an `AND` relationship for enumerating agents +type AgentAllFilter struct { + Filters []AgentPropertyFilter +} + +// Combines multiple groups of filter conditions with an `OR` relationship for enumerating agents +type AgentAnyFilter struct { + Filters []AgentAllFilter +} + +// Metadata about an agent +type AgentMetadata struct { + // The agent ID, consists of the component ID, agent type and agent parameters + AgentId golem_core_types.AgentId + // Command line arguments seen by the agent + Args []string + // Environment variables seen by the agent + Env []witTypes.Tuple2[string, string] + // Configuration variables seen by the agent + Config []witTypes.Tuple2[string, string] + // The current agent status + Status AgentStatus + // The component version the agent is running with + ComponentRevision uint64 + // The agent's current retry count + RetryCount uint64 + // The environment the agent belongs to + EnvironmentId EnvironmentId +} + +//go:wasmimport golem:api/host@1.5.0 [resource-drop]get-agents +func resourceDropGetAgents(handle int32) + +// Creates an agent enumeration +type GetAgents struct { + handle *witRuntime.Handle +} + +func (self *GetAgents) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *GetAgents) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *GetAgents) Handle() int32 { + return self.handle.Use() +} + +func (self *GetAgents) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropGetAgents(handle) + } +} + +func GetAgentsFromOwnHandle(handleValue int32) *GetAgents { + handle := witRuntime.MakeHandle(handleValue) + value := &GetAgents{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropGetAgents(handleValue) + } + }, 0) + return value +} + +func GetAgentsFromBorrowHandle(handleValue int32) *GetAgents { + handle := witRuntime.MakeHandle(handleValue) + return &GetAgents{handle} +} + +const ( + // Revert to a specific oplog index. The given index will be the last one to be kept. + RevertAgentTargetRevertToOplogIndex uint8 = 0 + // Revert the last N invocations. + RevertAgentTargetRevertLastInvocations uint8 = 1 +) + +// Target parameter for the `revert-agent` operation +type RevertAgentTarget struct { + tag uint8 + value any +} + +func (self RevertAgentTarget) Tag() uint8 { + return self.tag +} + +func (self RevertAgentTarget) RevertToOplogIndex() uint64 { + if self.tag != RevertAgentTargetRevertToOplogIndex { + panic("tag mismatch") + } + return self.value.(uint64) +} +func (self RevertAgentTarget) RevertLastInvocations() uint64 { + if self.tag != RevertAgentTargetRevertLastInvocations { + panic("tag mismatch") + } + return self.value.(uint64) +} + +func MakeRevertAgentTargetRevertToOplogIndex(value uint64) RevertAgentTarget { + return RevertAgentTarget{RevertAgentTargetRevertToOplogIndex, value} +} +func MakeRevertAgentTargetRevertLastInvocations(value uint64) RevertAgentTarget { + return RevertAgentTarget{RevertAgentTargetRevertLastInvocations, value} +} + +// Details about the fork result +type ForkDetails struct { + ForkedPhantomId golem_core_types.Uuid +} + +const ( + // The original agent that called `fork` + ForkResultOriginal uint8 = 0 + // The new agent + ForkResultForked uint8 = 1 +) + +// Indicates which agent the code is running on after `fork`. +// The parameter contains details about the fork result, such as the phantom-ID of the newly +// created agent. +type ForkResult struct { + tag uint8 + value any +} + +func (self ForkResult) Tag() uint8 { + return self.tag +} + +func (self ForkResult) Original() ForkDetails { + if self.tag != ForkResultOriginal { + panic("tag mismatch") + } + return self.value.(ForkDetails) +} +func (self ForkResult) Forked() ForkDetails { + if self.tag != ForkResultForked { + panic("tag mismatch") + } + return self.value.(ForkDetails) +} + +func MakeForkResultOriginal(value ForkDetails) ForkResult { + return ForkResult{ForkResultOriginal, value} +} +func MakeForkResultForked(value ForkDetails) ForkResult { + return ForkResult{ForkResultForked, value} +} + +//go:wasmimport golem:api/host@1.5.0 [resource-drop]get-promise-result +func resourceDropGetPromiseResult(handle int32) + +type GetPromiseResult struct { + handle *witRuntime.Handle +} + +func (self *GetPromiseResult) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *GetPromiseResult) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *GetPromiseResult) Handle() int32 { + return self.handle.Use() +} + +func (self *GetPromiseResult) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropGetPromiseResult(handle) + } +} + +func GetPromiseResultFromOwnHandle(handleValue int32) *GetPromiseResult { + handle := witRuntime.MakeHandle(handleValue) + value := &GetPromiseResult{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropGetPromiseResult(handleValue) + } + }, 0) + return value +} + +func GetPromiseResultFromBorrowHandle(handleValue int32) *GetPromiseResult { + handle := witRuntime.MakeHandle(handleValue) + return &GetPromiseResult{handle} +} + +// Plain-data handle to a permission card visible to the guest. +type Card struct { + CardId golem_core_types.CardId +} + +const ( + CardInstallErrorRevoked uint8 = 0 + CardInstallErrorNotFound uint8 = 1 + CardInstallErrorNotPermitted uint8 = 2 +) + +type CardInstallError = uint8 + +// Snapshot payload +type Snapshot struct { + Payload []uint8 + MimeType string +} + +//go:wasmimport golem:api/host@1.5.0 [constructor]get-agents +func wasm_import_constructor_get_agents(arg0 int64, arg1 int64, arg2 int32, arg3 uintptr, arg4 uint32, arg5 int32) int32 + +func MakeGetAgents(componentId golem_core_types.ComponentId, filter witTypes.Option[AgentAnyFilter], precise bool) *GetAgents { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + var option int32 + var option7 uintptr + var option8 uint32 + switch filter.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option7 = 0 + option8 = 0 + case witTypes.OptionSome: + payload := filter.Some() + slice4 := (payload).Filters + length6 := uint32(len(slice4)) + result5 := witRuntime.Allocate(pinner, uintptr(length6*(2*4)), 4) + for index, element := range slice4 { + base := unsafe.Add(result5, index*(2*4)) + slice := (element).Filters + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(16+4*4)), 8) + for index, element := range slice { + base := unsafe.Add(result, index*(16+4*4)) + + switch element.Tag() { + case AgentPropertyFilterName: + payload := element.Name() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Comparator)) + utf8 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8))) + + case AgentPropertyFilterStatus: + payload := element.Status() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Comparator)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Value)) + + case AgentPropertyFilterVersion: + payload := element.Version() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Comparator)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).Value) + + case AgentPropertyFilterCreatedAt: + payload := element.CreatedAt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Comparator)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).Value) + + case AgentPropertyFilterEnv: + payload := element.Env() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + utf80 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32((payload).Comparator)) + utf81 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf81))) + + case AgentPropertyFilterConfig: + payload := element.Config() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + utf82 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32((payload).Comparator)) + utf83 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf83))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(result))) + + } + + option = int32(1) + option7 = uintptr(result5) + option8 = length6 + default: + panic("unreachable") + } + var result9 int32 + if precise { + result9 = 1 + } else { + result9 = 0 + } + result10 := wasm_import_constructor_get_agents(int64(((componentId).Uuid).HighBits), int64(((componentId).Uuid).LowBits), option, option7, option8, result9) + return GetAgentsFromOwnHandle(int32(uintptr(result10))) + +} + +//go:wasmimport golem:api/host@1.5.0 [method]get-agents.get-next +func wasm_import_method_get_agents_get_next(arg0 int32, arg1 uintptr) + +func (self *GetAgents) GetNext() witTypes.Option[[]AgentMetadata] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_get_agents_get_next((self).Handle(), returnArea) + var option witTypes.Option[[]AgentMetadata] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[[]AgentMetadata]() + case 1: + result7 := make([]AgentMetadata, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(56+8*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))) + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))), index*(2*4)) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value0) + } + + result3 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))))), index*(4*4)) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result3 = append(result3, witTypes.Tuple2[string, string]{value1, value2}) + } + + result6 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4))))), index*(4*4)) + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result6 = append(result6, witTypes.Tuple2[string, string]{value4, value5}) + } + + result7 = append(result7, AgentMetadata{golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))}}, value}, result, result3, result6, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 8*4))))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))), EnvironmentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))))}}}) + } + + option = witTypes.Some[[]AgentMetadata](result7) + default: + panic("unreachable") + } + result8 := option + return result8 + +} + +//go:wasmimport golem:api/host@1.5.0 [async-lower][method]get-promise-result.get +func wasm_import_method_get_promise_result_get(arg0 int32, arg1 uintptr) int32 + +func (self *GetPromiseResult) Get() []uint8 { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + + witAsync.SubtaskWait(uint32(wasm_import_method_get_promise_result_get((self).Handle(), returnArea))) + value := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + + return value + +} + +//go:wasmimport golem:api/host@1.5.0 create-promise +func wasm_import_create_promise(arg0 uintptr) + +func CreatePromise() golem_core_types.PromiseId { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (24 + 2*4), 8)) + wasm_import_create_promise(returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))) + result := golem_core_types.PromiseId{golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))}}, value}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4))))} + return result + +} + +//go:wasmimport golem:api/host@1.5.0 get-promise +func wasm_import_get_promise(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 int64) int32 + +func GetPromise(promiseId golem_core_types.PromiseId) *GetPromiseResult { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(((promiseId).AgentId).AgentId)) + pinner.Pin(utf8) + result := wasm_import_get_promise(int64(((((promiseId).AgentId).ComponentId).Uuid).HighBits), int64(((((promiseId).AgentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len(((promiseId).AgentId).AgentId)), int64((promiseId).OplogIdx)) + return GetPromiseResultFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport golem:api/host@1.5.0 complete-promise +func wasm_import_complete_promise(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 int64, arg5 uintptr, arg6 uint32) int32 + +func CompletePromise(promiseId golem_core_types.PromiseId, data []uint8) bool { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(((promiseId).AgentId).AgentId)) + pinner.Pin(utf8) + data0 := unsafe.Pointer(unsafe.SliceData(data)) + pinner.Pin(data0) + result := wasm_import_complete_promise(int64(((((promiseId).AgentId).ComponentId).Uuid).HighBits), int64(((((promiseId).AgentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len(((promiseId).AgentId).AgentId)), int64((promiseId).OplogIdx), uintptr(data0), uint32(len(data))) + return (result != 0) + +} + +//go:wasmimport golem:api/host@1.5.0 get-oplog-index +func wasm_import_get_oplog_index() int64 + +func GetOplogIndex() uint64 { + + result := wasm_import_get_oplog_index() + return uint64(result) + +} + +//go:wasmimport golem:api/host@1.5.0 set-oplog-index +func wasm_import_set_oplog_index(arg0 int64) + +func SetOplogIndex(oplogIdx uint64) { + + wasm_import_set_oplog_index(int64(oplogIdx)) + +} + +//go:wasmimport golem:api/host@1.5.0 oplog-commit +func wasm_import_oplog_commit(arg0 int32) + +func OplogCommit(replicas uint8) { + + wasm_import_oplog_commit(int32(replicas)) + +} + +//go:wasmimport golem:api/host@1.5.0 mark-begin-operation +func wasm_import_mark_begin_operation() int64 + +func MarkBeginOperation() uint64 { + + result := wasm_import_mark_begin_operation() + return uint64(result) + +} + +//go:wasmimport golem:api/host@1.5.0 mark-end-operation +func wasm_import_mark_end_operation(arg0 int64) + +func MarkEndOperation(begin uint64) { + + wasm_import_mark_end_operation(int64(begin)) + +} + +//go:wasmimport golem:api/host@1.5.0 trap +func wasm_import_trap(arg0 uintptr, arg1 uint32) + +func Trap(reason string) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(reason)) + pinner.Pin(utf8) + wasm_import_trap(uintptr(utf8), uint32(len(reason))) + +} + +//go:wasmimport golem:api/host@1.5.0 get-oplog-persistence-level +func wasm_import_get_oplog_persistence_level() int32 + +func GetOplogPersistenceLevel() PersistenceLevel { + + result := wasm_import_get_oplog_persistence_level() + var variant PersistenceLevel + switch result { + case 0: + + variant = MakePersistenceLevelPersistNothing() + + case 1: + + variant = MakePersistenceLevelPersistRemoteSideEffects() + + case 2: + + variant = MakePersistenceLevelSmart() + + default: + panic("unreachable") + } + return variant + +} + +//go:wasmimport golem:api/host@1.5.0 set-oplog-persistence-level +func wasm_import_set_oplog_persistence_level(arg0 int32) + +func SetOplogPersistenceLevel(newPersistenceLevel PersistenceLevel) { + + var variant int32 + switch newPersistenceLevel.Tag() { + case PersistenceLevelPersistNothing: + + variant = int32(0) + + case PersistenceLevelPersistRemoteSideEffects: + + variant = int32(1) + + case PersistenceLevelSmart: + + variant = int32(2) + + default: + panic("unreachable") + } + wasm_import_set_oplog_persistence_level(variant) + +} + +//go:wasmimport golem:api/host@1.5.0 get-idempotence-mode +func wasm_import_get_idempotence_mode() int32 + +func GetIdempotenceMode() bool { + + result := wasm_import_get_idempotence_mode() + return (result != 0) + +} + +//go:wasmimport golem:api/host@1.5.0 set-idempotence-mode +func wasm_import_set_idempotence_mode(arg0 int32) + +func SetIdempotenceMode(idempotent bool) { + + var result int32 + if idempotent { + result = 1 + } else { + result = 0 + } + wasm_import_set_idempotence_mode(result) + +} + +//go:wasmimport golem:api/host@1.5.0 generate-idempotency-key +func wasm_import_generate_idempotency_key(arg0 uintptr) + +func GenerateIdempotencyKey() golem_core_types.Uuid { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 16, 8)) + wasm_import_generate_idempotency_key(returnArea) + result := golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))} + return result + +} + +//go:wasmimport golem:api/host@1.5.0 self-card +func wasm_import_self_card(arg0 uintptr) + +func SelfCard() witTypes.Option[Card] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 24, 8)) + wasm_import_self_card(returnArea) + var option witTypes.Option[Card] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[Card]() + case 1: + + option = witTypes.Some[Card](Card{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}}) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport golem:api/host@1.5.0 derive-card +func wasm_import_derive_card(arg0 int64, arg1 int64, arg2 uintptr) + +func DeriveCard(card Card) witTypes.Result[Card, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 24, 8)) + wasm_import_derive_card(int64((((card).CardId).Uuid).HighBits), int64((((card).CardId).Uuid).LowBits), returnArea) + var result witTypes.Result[Card, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[Card, string](Card{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + result = witTypes.Err[Card, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport golem:api/host@1.5.0 install-card +func wasm_import_install_card(arg0 int64, arg1 int64, arg2 uintptr) + +func InstallCard(card Card) witTypes.Result[witTypes.Unit, CardInstallError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 2, 1)) + wasm_import_install_card(int64((((card).CardId).Uuid).HighBits), int64((((card).CardId).Uuid).LowBits), returnArea) + var result witTypes.Result[witTypes.Unit, CardInstallError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, CardInstallError](witTypes.Unit{}) + case 1: + + result = witTypes.Err[witTypes.Unit, CardInstallError](uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 1))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport golem:api/host@1.5.0 update-agent +func wasm_import_update_agent(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 int64, arg5 int32) + +func UpdateAgent(agentId golem_core_types.AgentId, targetRevision uint64, mode UpdateMode) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData((agentId).AgentId)) + pinner.Pin(utf8) + wasm_import_update_agent(int64((((agentId).ComponentId).Uuid).HighBits), int64((((agentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len((agentId).AgentId)), int64(targetRevision), int32(mode)) + +} + +//go:wasmimport golem:api/host@1.5.0 get-self-metadata +func wasm_import_get_self_metadata(arg0 uintptr) + +func GetSelfMetadata() AgentMetadata { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (56 + 8*4), 8)) + wasm_import_get_self_metadata(returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))) + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4))))), index*(2*4)) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value0) + } + + result3 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 4*4))))), index*(4*4)) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result3 = append(result3, witTypes.Tuple2[string, string]{value1, value2}) + } + + result6 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 6*4))))), index*(4*4)) + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result6 = append(result6, witTypes.Tuple2[string, string]{value4, value5}) + } + + result7 := AgentMetadata{golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))}}, value}, result, result3, result6, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 8*4))))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (32 + 8*4)))), EnvironmentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (40 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (48 + 8*4))))}}} + return result7 + +} + +//go:wasmimport golem:api/host@1.5.0 get-agent-metadata +func wasm_import_get_agent_metadata(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 uintptr) + +func GetAgentMetadata(agentId golem_core_types.AgentId) witTypes.Option[AgentMetadata] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (64 + 8*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData((agentId).AgentId)) + pinner.Pin(utf8) + wasm_import_get_agent_metadata(int64((((agentId).ComponentId).Uuid).HighBits), int64((((agentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len((agentId).AgentId)), returnArea) + var option witTypes.Option[AgentMetadata] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[AgentMetadata]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 1*4)))) + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 2*4))))), index*(2*4)) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value0) + } + + result3 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 4*4))))), index*(4*4)) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result3 = append(result3, witTypes.Tuple2[string, string]{value1, value2}) + } + + result6 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 6*4))))), index*(4*4)) + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result6 = append(result6, witTypes.Tuple2[string, string]{value4, value5}) + } + + option = witTypes.Some[AgentMetadata](AgentMetadata{golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}, value}, result, result3, result6, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 8*4))))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (32 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (40 + 8*4)))), EnvironmentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (48 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (56 + 8*4))))}}}) + default: + panic("unreachable") + } + result7 := option + return result7 + +} + +//go:wasmimport golem:api/host@1.5.0 fork-agent +func wasm_import_fork_agent(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 int64, arg5 int64, arg6 uintptr, arg7 uint32, arg8 int64) + +func ForkAgent(sourceAgentId golem_core_types.AgentId, targetAgentId golem_core_types.AgentId, oplogIdxCutOff uint64) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData((sourceAgentId).AgentId)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData((targetAgentId).AgentId)) + pinner.Pin(utf80) + wasm_import_fork_agent(int64((((sourceAgentId).ComponentId).Uuid).HighBits), int64((((sourceAgentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len((sourceAgentId).AgentId)), int64((((targetAgentId).ComponentId).Uuid).HighBits), int64((((targetAgentId).ComponentId).Uuid).LowBits), uintptr(utf80), uint32(len((targetAgentId).AgentId)), int64(oplogIdxCutOff)) + +} + +//go:wasmimport golem:api/host@1.5.0 revert-agent +func wasm_import_revert_agent(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 int32, arg5 int64) + +func RevertAgent(agentId golem_core_types.AgentId, revertTarget RevertAgentTarget) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData((agentId).AgentId)) + pinner.Pin(utf8) + var variant int32 + var variant0 int64 + switch revertTarget.Tag() { + case RevertAgentTargetRevertToOplogIndex: + payload := revertTarget.RevertToOplogIndex() + + variant = int32(0) + variant0 = int64(payload) + + case RevertAgentTargetRevertLastInvocations: + payload := revertTarget.RevertLastInvocations() + + variant = int32(1) + variant0 = int64(payload) + + default: + panic("unreachable") + } + wasm_import_revert_agent(int64((((agentId).ComponentId).Uuid).HighBits), int64((((agentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len((agentId).AgentId)), variant, variant0) + +} + +//go:wasmimport golem:api/host@1.5.0 resolve-component-id +func wasm_import_resolve_component_id(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func ResolveComponentId(componentReference string) witTypes.Option[golem_core_types.ComponentId] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 24, 8)) + utf8 := unsafe.Pointer(unsafe.StringData(componentReference)) + pinner.Pin(utf8) + wasm_import_resolve_component_id(uintptr(utf8), uint32(len(componentReference)), returnArea) + var option witTypes.Option[golem_core_types.ComponentId] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[golem_core_types.ComponentId]() + case 1: + + option = witTypes.Some[golem_core_types.ComponentId](golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport golem:api/host@1.5.0 resolve-agent-id +func wasm_import_resolve_agent_id(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 uintptr) + +func ResolveAgentId(componentReference string, agentName string) witTypes.Option[golem_core_types.AgentId] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (24 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(componentReference)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData(agentName)) + pinner.Pin(utf80) + wasm_import_resolve_agent_id(uintptr(utf8), uint32(len(componentReference)), uintptr(utf80), uint32(len(agentName)), returnArea) + var option witTypes.Option[golem_core_types.AgentId] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[golem_core_types.AgentId]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 1*4)))) + + option = witTypes.Some[golem_core_types.AgentId](golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}, value}) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport golem:api/host@1.5.0 resolve-agent-id-strict +func wasm_import_resolve_agent_id_strict(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 uintptr) + +func ResolveAgentIdStrict(componentReference string, agentName string) witTypes.Option[golem_core_types.AgentId] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (24 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(componentReference)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData(agentName)) + pinner.Pin(utf80) + wasm_import_resolve_agent_id_strict(uintptr(utf8), uint32(len(componentReference)), uintptr(utf80), uint32(len(agentName)), returnArea) + var option witTypes.Option[golem_core_types.AgentId] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[golem_core_types.AgentId]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 1*4)))) + + option = witTypes.Some[golem_core_types.AgentId](golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}, value}) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport golem:api/host@1.5.0 fork +func wasm_import_fork(arg0 uintptr) + +func Fork() ForkResult { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 24, 8)) + wasm_import_fork(returnArea) + var variant ForkResult + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + variant = MakeForkResultOriginal(ForkDetails{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}) + + case 1: + + variant = MakeForkResultForked(ForkDetails{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}}) + + default: + panic("unreachable") + } + result := variant + return result + +} diff --git a/sdks/go/internal/wit/golem_api_load_snapshot/empty.s b/sdks/go/internal/wit/golem_api_load_snapshot/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_api_load_snapshot/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go b/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go new file mode 100644 index 0000000000..c964b18173 --- /dev/null +++ b/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go @@ -0,0 +1,38 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_api_load_snapshot + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_api_host" +) + +type Snapshot = golem_api_host.Snapshot diff --git a/sdks/go/internal/wit/golem_api_oplog/empty.s b/sdks/go/internal/wit/golem_api_oplog/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_api_oplog/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go b/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go new file mode 100644 index 0000000000..9c8364b902 --- /dev/null +++ b/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go @@ -0,0 +1,72221 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_api_oplog + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_api_context" + "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + "github.com/golemcloud/golem-go/internal/wit/golem_api_retry" + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Datetime = wasi_clocks_0_3_0_system_clock.Instant +type AccountId = golem_core_types.AccountId +type CardId = golem_core_types.CardId +type SchemaValueTree = golem_core_types.SchemaValueTree +type TypedSchemaValue = golem_core_types.TypedSchemaValue +type ComponentRevision = uint64 +type OplogIndex = uint64 +type PersistenceLevel = golem_api_host.PersistenceLevel +type EnvironmentId = golem_api_host.EnvironmentId +type Uuid = golem_core_types.Uuid +type AgentId = golem_core_types.AgentId +type Snapshot = golem_api_host.Snapshot +type Duration = uint64 +type Attribute = golem_api_context.Attribute +type AttributeValue = golem_api_context.AttributeValue +type SpanId = string +type TraceId = string +type RetryPredicate = golem_api_retry.RetryPredicate +type RetryPolicy = golem_api_retry.RetryPolicy +type NamedRetryPolicy = golem_api_retry.NamedRetryPolicy + +const ( + AgentModeDurable uint8 = 0 + AgentModeEphemeral uint8 = 1 +) + +// Whether an agent is durable (persistent oplog) or ephemeral. +// This mirrors the agent-mode enum in golem:agent/common@1.5.0; it is duplicated here to avoid +// a circular WIT package dependency between golem:api and golem:agent. +type AgentMode = uint8 + +// Index into a retry-policy-state's node list +type StateNodeIndex = int32 + +type CountBoxState struct { + Attempts uint32 + Inner int32 +} + +type AndThenState struct { + Left int32 + Right int32 + OnRight bool +} + +type PairState struct { + Left int32 + Right int32 +} + +const ( + // Counter-based state (e.g. periodic, exponential, fibonacci). + StateNodeCounter uint8 = 0 + // Terminal state — policy has given up. + StateNodeTerminal uint8 = 1 + // Wrapper state delegating to an inner policy state. + StateNodeWrapper uint8 = 2 + // Count-box state with attempt tracking. + StateNodeCountBox uint8 = 3 + // And-then sequential composition state. + StateNodeAndThen uint8 = 4 + // Pair state for union/intersect composition. + StateNodePair uint8 = 5 +) + +type StateNode struct { + tag uint8 + value any +} + +func (self StateNode) Tag() uint8 { + return self.tag +} + +func (self StateNode) Counter() uint32 { + if self.tag != StateNodeCounter { + panic("tag mismatch") + } + return self.value.(uint32) +} +func (self StateNode) Wrapper() int32 { + if self.tag != StateNodeWrapper { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self StateNode) CountBox() CountBoxState { + if self.tag != StateNodeCountBox { + panic("tag mismatch") + } + return self.value.(CountBoxState) +} +func (self StateNode) AndThen() AndThenState { + if self.tag != StateNodeAndThen { + panic("tag mismatch") + } + return self.value.(AndThenState) +} +func (self StateNode) Pair() PairState { + if self.tag != StateNodePair { + panic("tag mismatch") + } + return self.value.(PairState) +} + +func MakeStateNodeCounter(value uint32) StateNode { + return StateNode{StateNodeCounter, value} +} +func MakeStateNodeTerminal() StateNode { + return StateNode{StateNodeTerminal, nil} +} +func MakeStateNodeWrapper(value int32) StateNode { + return StateNode{StateNodeWrapper, value} +} +func MakeStateNodeCountBox(value CountBoxState) StateNode { + return StateNode{StateNodeCountBox, value} +} +func MakeStateNodeAndThen(value AndThenState) StateNode { + return StateNode{StateNodeAndThen, value} +} +func MakeStateNodePair(value PairState) StateNode { + return StateNode{StateNodePair, value} +} + +// Persistent state of a retry policy across retry attempts. +// Root is nodes[0]. Children referenced by state-node-index. +type RetryPolicyState struct { + Nodes []StateNode +} + +type EnvironmentPluginGrantId struct { + Uuid golem_core_types.Uuid +} + +const ( + // The side-effect reads from the agent's local state (for example local file system, + // random generator, etc.) + WrappedFunctionTypeReadLocal uint8 = 0 + // The side-effect writes to the agent's local state (for example local file system) + WrappedFunctionTypeWriteLocal uint8 = 1 + // The side-effect reads from external state (for example a key-value store) + WrappedFunctionTypeReadRemote uint8 = 2 + // The side-effect manipulates external state (for example an RPC call) + WrappedFunctionTypeWriteRemote uint8 = 3 + // The side-effect manipulates external state through multiple invoked functions (for example + // a HTTP request where reading the response involves multiple host function calls) + // + // On the first invocation of the batch, the parameter should be `None` - this triggers + // writing a scope `Start` entry in the oplog. Followup invocations should contain this + // entry's index as the parameter so their host-call `Start` entries can point back to the + // scope. In batched remote writes it is the caller's responsibility to manually write the + // matching scope `End` entry (using `end_function`) when the operation is completed. + WrappedFunctionTypeWriteRemoteBatched uint8 = 4 + WrappedFunctionTypeWriteRemoteTransaction uint8 = 5 +) + +type WrappedFunctionType struct { + tag uint8 + value any +} + +func (self WrappedFunctionType) Tag() uint8 { + return self.tag +} + +func (self WrappedFunctionType) WriteRemoteBatched() witTypes.Option[uint64] { + if self.tag != WrappedFunctionTypeWriteRemoteBatched { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint64]) +} +func (self WrappedFunctionType) WriteRemoteTransaction() witTypes.Option[uint64] { + if self.tag != WrappedFunctionTypeWriteRemoteTransaction { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint64]) +} + +func MakeWrappedFunctionTypeReadLocal() WrappedFunctionType { + return WrappedFunctionType{WrappedFunctionTypeReadLocal, nil} +} +func MakeWrappedFunctionTypeWriteLocal() WrappedFunctionType { + return WrappedFunctionType{WrappedFunctionTypeWriteLocal, nil} +} +func MakeWrappedFunctionTypeReadRemote() WrappedFunctionType { + return WrappedFunctionType{WrappedFunctionTypeReadRemote, nil} +} +func MakeWrappedFunctionTypeWriteRemote() WrappedFunctionType { + return WrappedFunctionType{WrappedFunctionTypeWriteRemote, nil} +} +func MakeWrappedFunctionTypeWriteRemoteBatched(value witTypes.Option[uint64]) WrappedFunctionType { + return WrappedFunctionType{WrappedFunctionTypeWriteRemoteBatched, value} +} +func MakeWrappedFunctionTypeWriteRemoteTransaction(value witTypes.Option[uint64]) WrappedFunctionType { + return WrappedFunctionType{WrappedFunctionTypeWriteRemoteTransaction, value} +} + +type PluginInstallationDescription struct { + EnvironmentPluginGrantId EnvironmentPluginGrantId + PluginPriority int32 + PluginName string + PluginVersion string + Parameters []witTypes.Tuple2[string, string] +} + +type RawLocalAgentConfigEntry struct { + Path []string + Value golem_core_types.SchemaValueTree +} + +type LocalAgentConfigEntry struct { + Path []string + Value golem_core_types.TypedSchemaValue +} + +type CreateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + AgentId golem_core_types.AgentId + AgentMode AgentMode + ComponentRevision uint64 + Env []witTypes.Tuple2[string, string] + CreatedBy golem_core_types.AccountId + EnvironmentId golem_api_host.EnvironmentId + Parent witTypes.Option[golem_core_types.AgentId] + ComponentSize uint64 + InitialTotalLinearMemorySize uint64 + InitialActivePlugins []PluginInstallationDescription + LocalAgentConfig []LocalAgentConfigEntry + OriginalPhantomId witTypes.Option[golem_core_types.Uuid] + InstanceId golem_core_types.Uuid +} + +// Parameters of an enriched durable host-call `start` entry. +// +// The recorded `request` payload of every durable host call — including +// durable P3 async calls such as HTTP send/consume-body, sockets, keyvalue, +// and blobstore operations — surfaces as a generic `typed-schema-value` +// tree, identified by `function-name`; there are no per-interface named WIT +// variants for the payload shapes. +type StartParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + ParentStartIndex witTypes.Option[uint64] + FunctionName string + Request witTypes.Option[golem_core_types.TypedSchemaValue] + DurableFunctionType WrappedFunctionType +} + +// Parameters of an enriched durable host-call `end` entry. Like the +// `start` `request`, the recorded `response` payload surfaces as a generic +// `typed-schema-value` tree (no per-interface named WIT variants). +type EndParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + StartIndex uint64 + Response witTypes.Option[golem_core_types.TypedSchemaValue] + ForcedCommit bool +} + +// Parameters of an enriched durable host-call `cancelled` entry. Like the +// `start` `request`, the optional recorded `partial` result surfaces as a +// generic `typed-schema-value` tree (no per-interface named WIT variants). +type CancelledParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + StartIndex uint64 + Partial witTypes.Option[golem_core_types.TypedSchemaValue] +} + +// Parameters of a `completion-discarded` entry: the durable host call started at +// `start-index` completed successfully (its `end` entry was persisted) but the response +// was never delivered to the agent, because the agent dropped the call's completion +// future after the `end` was already recorded. +type CompletionDiscardedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + StartIndex uint64 +} + +type LocalSpanData struct { + SpanId string + Start wasi_clocks_0_3_0_system_clock.Instant + Parent witTypes.Option[string] + // Optionally an index of the invocation-context field within agent-invocation + LinkedContext witTypes.Option[uint64] + Attributes []golem_api_context.Attribute + Inherited bool +} + +type ExternalSpanData struct { + SpanId string +} + +const ( + SpanDataLocalSpan uint8 = 0 + SpanDataExternalSpan uint8 = 1 +) + +type SpanData struct { + tag uint8 + value any +} + +func (self SpanData) Tag() uint8 { + return self.tag +} + +func (self SpanData) LocalSpan() LocalSpanData { + if self.tag != SpanDataLocalSpan { + panic("tag mismatch") + } + return self.value.(LocalSpanData) +} +func (self SpanData) ExternalSpan() ExternalSpanData { + if self.tag != SpanDataExternalSpan { + panic("tag mismatch") + } + return self.value.(ExternalSpanData) +} + +func MakeSpanDataLocalSpan(value LocalSpanData) SpanData { + return SpanData{SpanDataLocalSpan, value} +} +func MakeSpanDataExternalSpan(value ExternalSpanData) SpanData { + return SpanData{SpanDataExternalSpan, value} +} + +type ErrorParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Error string + RetryFrom uint64 + InsideAtomicRegion bool + // Persistent retry policy state, if a semantic retry policy is active. + RetryPolicyState witTypes.Option[RetryPolicyState] +} + +type OplogRegion struct { + Start uint64 + End uint64 +} + +type JumpParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Jump OplogRegion +} + +// Parameters for a set-retry-policy oplog entry. +type SetRetryPolicyParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Policy golem_api_retry.NamedRetryPolicy +} + +// Parameters for a remove-retry-policy oplog entry. +type RemoveRetryPolicyParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Name string +} + +type QueuedCardEventInstall struct { + CardId golem_core_types.CardId +} + +type QueuedCardEventRevoke struct { + CardId golem_core_types.CardId +} + +const ( + QueuedCardEventInstallTag uint8 = 0 + QueuedCardEventRevokeTag uint8 = 1 +) + +type QueuedCardEvent struct { + tag uint8 + value any +} + +func (self QueuedCardEvent) Tag() uint8 { + return self.tag +} + +func (self QueuedCardEvent) Install() QueuedCardEventInstall { + if self.tag != QueuedCardEventInstallTag { + panic("tag mismatch") + } + return self.value.(QueuedCardEventInstall) +} +func (self QueuedCardEvent) Revoke() QueuedCardEventRevoke { + if self.tag != QueuedCardEventRevokeTag { + panic("tag mismatch") + } + return self.value.(QueuedCardEventRevoke) +} + +func MakeQueuedCardEventInstall(value QueuedCardEventInstall) QueuedCardEvent { + return QueuedCardEvent{QueuedCardEventInstallTag, value} +} +func MakeQueuedCardEventRevoke(value QueuedCardEventRevoke) QueuedCardEvent { + return QueuedCardEvent{QueuedCardEventRevokeTag, value} +} + +// Parameters for a card-event-queued oplog entry. +type CardEventQueuedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Event QueuedCardEvent +} + +// Parameters for a card-installed oplog entry. +type CardInstalledParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + QueuedEventIndex witTypes.Option[uint64] + CardId golem_core_types.CardId +} + +// Raw parameters for a card-installed oplog entry. +type RawCardInstalledParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + QueuedEventIndex witTypes.Option[uint64] + Card []uint8 +} + +const ( + CardInstallFailureCardRevoked uint8 = 0 + CardInstallFailureNotFound uint8 = 1 + CardInstallFailureRecipientMismatch uint8 = 2 + CardInstallFailureNotPermitted uint8 = 3 +) + +type CardInstallFailure = uint8 + +// Parameters for a card-install-failed oplog entry. +type CardInstallFailedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + QueuedEventIndex uint64 + CardId golem_core_types.CardId + Reason CardInstallFailure +} + +// Parameters for a card-revoked oplog entry. +type CardRevokedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + QueuedEventIndex uint64 + CardId golem_core_types.CardId +} + +// Parameters for a card-expired oplog entry. +type CardExpiredParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + CardId golem_core_types.CardId +} + +const ( + // A frame of the outgoing request body of a P3 HTTP client send. + HostStreamKindP3HttpRequestBody uint8 = 0 +) + +// Identifies which host-owned stream a host-stream-frame oplog entry belongs to. +// The kind determines how the entry's payload is interpreted. +type HostStreamKind = uint8 + +// Parameters for a host-stream-frame oplog entry: a durably recorded frame of a +// host-owned stream (e.g. the outgoing request body of a P3 HTTP client send), +// attached to the durable host call identified by its start entry's index. +type HostStreamFrameParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + ParentStartIndex uint64 + Kind HostStreamKind + Payload golem_core_types.TypedSchemaValue +} + +type EndAtomicRegionParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + BeginIndex uint64 +} + +type AgentInitializationParameters struct { + IdempotencyKey string + ConstructorParameters golem_core_types.TypedSchemaValue + TraceId string + TraceStates []string + InvocationContext [][]SpanData +} + +type AgentMethodInvocationParameters struct { + IdempotencyKey string + MethodName string + FunctionInput golem_core_types.TypedSchemaValue + TraceId string + TraceStates []string + InvocationContext [][]SpanData +} + +type ProcessOplogEntriesParameters struct { + IdempotencyKey string +} + +type ManualUpdateParameters struct { + TargetRevision uint64 +} + +type AgentInvocationOutputParameters struct { + Output golem_core_types.TypedSchemaValue +} + +type FallibleResultParameters struct { + Error witTypes.Option[string] +} + +const ( + // Automatic update by replaying the oplog on the new version + UpdateDescriptionAutoUpdate uint8 = 0 + // Custom update by loading a given snapshot on the new version + UpdateDescriptionSnapshotBased uint8 = 1 +) + +type UpdateDescription struct { + tag uint8 + value any +} + +func (self UpdateDescription) Tag() uint8 { + return self.tag +} + +func (self UpdateDescription) SnapshotBased() golem_api_host.Snapshot { + if self.tag != UpdateDescriptionSnapshotBased { + panic("tag mismatch") + } + return self.value.(golem_api_host.Snapshot) +} + +func MakeUpdateDescriptionAutoUpdate() UpdateDescription { + return UpdateDescription{UpdateDescriptionAutoUpdate, nil} +} +func MakeUpdateDescriptionSnapshotBased(value golem_api_host.Snapshot) UpdateDescription { + return UpdateDescription{UpdateDescriptionSnapshotBased, value} +} + +type PendingUpdateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + TargetRevision uint64 + Description UpdateDescription +} + +type SuccessfulUpdateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + TargetRevision uint64 + NewComponentSize uint64 + NewActivePlugins []PluginInstallationDescription +} + +type FailedUpdateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + TargetRevision uint64 + Details witTypes.Option[string] +} + +type GrowMemoryParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Delta uint64 +} + +type FilesystemStorageUsageUpdateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Delta int64 +} +type AgentResourceId = uint64 + +type CreateResourceParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Id uint64 + Name string + Owner string +} + +type DropResourceParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Id uint64 + Name string + Owner string +} + +const ( + LogLevelStdout uint8 = 0 + LogLevelStderr uint8 = 1 + LogLevelTrace uint8 = 2 + LogLevelDebug uint8 = 3 + LogLevelInfo uint8 = 4 + LogLevelWarn uint8 = 5 + LogLevelError uint8 = 6 + LogLevelCritical uint8 = 7 +) + +type LogLevel = uint8 + +type LogParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Level LogLevel + Context string + Message string +} + +type ActivatePluginParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Plugin PluginInstallationDescription +} + +type DeactivatePluginParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Plugin PluginInstallationDescription +} + +type RevertParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + DroppedRegion OplogRegion +} + +type CancelPendingInvocationParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + IdempotencyKey string +} + +type StartSpanParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + SpanId string + Parent witTypes.Option[string] + LinkedContextId witTypes.Option[string] + Attributes []golem_api_context.Attribute +} + +type FinishSpanParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + SpanId string +} + +type SetSpanAttributeParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + SpanId string + Key string + Value golem_api_context.AttributeValue +} + +type ChangePersistenceLevelParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + PersistenceLevel golem_api_host.PersistenceLevel +} + +type BeginRemoteTransactionParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + TransactionId string +} + +type RemoteTransactionParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + BeginIndex uint64 +} + +type SnapshotData struct { + Data []uint8 + MimeType string +} + +type LoadSnapshotParameters struct { + Snapshot SnapshotData +} + +const ( + AgentInvocationAgentInitialization uint8 = 0 + AgentInvocationAgentMethodInvocation uint8 = 1 + AgentInvocationSaveSnapshot uint8 = 2 + AgentInvocationLoadSnapshot uint8 = 3 + AgentInvocationProcessOplogEntries uint8 = 4 + AgentInvocationManualUpdate uint8 = 5 +) + +type AgentInvocation struct { + tag uint8 + value any +} + +func (self AgentInvocation) Tag() uint8 { + return self.tag +} + +func (self AgentInvocation) AgentInitialization() AgentInitializationParameters { + if self.tag != AgentInvocationAgentInitialization { + panic("tag mismatch") + } + return self.value.(AgentInitializationParameters) +} +func (self AgentInvocation) AgentMethodInvocation() AgentMethodInvocationParameters { + if self.tag != AgentInvocationAgentMethodInvocation { + panic("tag mismatch") + } + return self.value.(AgentMethodInvocationParameters) +} +func (self AgentInvocation) LoadSnapshot() LoadSnapshotParameters { + if self.tag != AgentInvocationLoadSnapshot { + panic("tag mismatch") + } + return self.value.(LoadSnapshotParameters) +} +func (self AgentInvocation) ProcessOplogEntries() ProcessOplogEntriesParameters { + if self.tag != AgentInvocationProcessOplogEntries { + panic("tag mismatch") + } + return self.value.(ProcessOplogEntriesParameters) +} +func (self AgentInvocation) ManualUpdate() ManualUpdateParameters { + if self.tag != AgentInvocationManualUpdate { + panic("tag mismatch") + } + return self.value.(ManualUpdateParameters) +} + +func MakeAgentInvocationAgentInitialization(value AgentInitializationParameters) AgentInvocation { + return AgentInvocation{AgentInvocationAgentInitialization, value} +} +func MakeAgentInvocationAgentMethodInvocation(value AgentMethodInvocationParameters) AgentInvocation { + return AgentInvocation{AgentInvocationAgentMethodInvocation, value} +} +func MakeAgentInvocationSaveSnapshot() AgentInvocation { + return AgentInvocation{AgentInvocationSaveSnapshot, nil} +} +func MakeAgentInvocationLoadSnapshot(value LoadSnapshotParameters) AgentInvocation { + return AgentInvocation{AgentInvocationLoadSnapshot, value} +} +func MakeAgentInvocationProcessOplogEntries(value ProcessOplogEntriesParameters) AgentInvocation { + return AgentInvocation{AgentInvocationProcessOplogEntries, value} +} +func MakeAgentInvocationManualUpdate(value ManualUpdateParameters) AgentInvocation { + return AgentInvocation{AgentInvocationManualUpdate, value} +} + +type AgentInvocationStartedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Invocation AgentInvocation +} + +type SaveSnapshotResultParameters struct { + Snapshot SnapshotData +} + +const ( + AgentInvocationResultAgentInitialization uint8 = 0 + AgentInvocationResultAgentMethod uint8 = 1 + AgentInvocationResultManualUpdate uint8 = 2 + AgentInvocationResultLoadSnapshot uint8 = 3 + AgentInvocationResultSaveSnapshot uint8 = 4 + AgentInvocationResultProcessOplogEntries uint8 = 5 +) + +type AgentInvocationResult struct { + tag uint8 + value any +} + +func (self AgentInvocationResult) Tag() uint8 { + return self.tag +} + +func (self AgentInvocationResult) AgentInitialization() AgentInvocationOutputParameters { + if self.tag != AgentInvocationResultAgentInitialization { + panic("tag mismatch") + } + return self.value.(AgentInvocationOutputParameters) +} +func (self AgentInvocationResult) AgentMethod() AgentInvocationOutputParameters { + if self.tag != AgentInvocationResultAgentMethod { + panic("tag mismatch") + } + return self.value.(AgentInvocationOutputParameters) +} +func (self AgentInvocationResult) LoadSnapshot() FallibleResultParameters { + if self.tag != AgentInvocationResultLoadSnapshot { + panic("tag mismatch") + } + return self.value.(FallibleResultParameters) +} +func (self AgentInvocationResult) SaveSnapshot() SaveSnapshotResultParameters { + if self.tag != AgentInvocationResultSaveSnapshot { + panic("tag mismatch") + } + return self.value.(SaveSnapshotResultParameters) +} +func (self AgentInvocationResult) ProcessOplogEntries() FallibleResultParameters { + if self.tag != AgentInvocationResultProcessOplogEntries { + panic("tag mismatch") + } + return self.value.(FallibleResultParameters) +} + +func MakeAgentInvocationResultAgentInitialization(value AgentInvocationOutputParameters) AgentInvocationResult { + return AgentInvocationResult{AgentInvocationResultAgentInitialization, value} +} +func MakeAgentInvocationResultAgentMethod(value AgentInvocationOutputParameters) AgentInvocationResult { + return AgentInvocationResult{AgentInvocationResultAgentMethod, value} +} +func MakeAgentInvocationResultManualUpdate() AgentInvocationResult { + return AgentInvocationResult{AgentInvocationResultManualUpdate, nil} +} +func MakeAgentInvocationResultLoadSnapshot(value FallibleResultParameters) AgentInvocationResult { + return AgentInvocationResult{AgentInvocationResultLoadSnapshot, value} +} +func MakeAgentInvocationResultSaveSnapshot(value SaveSnapshotResultParameters) AgentInvocationResult { + return AgentInvocationResult{AgentInvocationResultSaveSnapshot, value} +} +func MakeAgentInvocationResultProcessOplogEntries(value FallibleResultParameters) AgentInvocationResult { + return AgentInvocationResult{AgentInvocationResultProcessOplogEntries, value} +} + +type AgentInvocationFinishedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Result AgentInvocationResult + MethodName witTypes.Option[string] + ConsumedFuel int64 + ComponentRevision uint64 +} + +type PendingAgentInvocationParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Invocation AgentInvocation +} + +type SnapshotParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Data SnapshotData +} + +type OplogProcessorCheckpointParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Plugin PluginInstallationDescription + TargetAgentId golem_core_types.AgentId + ConfirmedUpTo uint64 + SendingUpTo uint64 + LastBatchStart uint64 +} + +type Timestamp struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant +} + +type OplogExternalPayload struct { + PayloadId golem_core_types.Uuid + Md5Hash []uint8 +} + +const ( + OplogPayloadInline uint8 = 0 + OplogPayloadExternal uint8 = 1 +) + +// Opaque oplog payload, which can either be serialized inline or stored externally +type OplogPayload struct { + tag uint8 + value any +} + +func (self OplogPayload) Tag() uint8 { + return self.tag +} + +func (self OplogPayload) Inline() []uint8 { + if self.tag != OplogPayloadInline { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self OplogPayload) External() OplogExternalPayload { + if self.tag != OplogPayloadExternal { + panic("tag mismatch") + } + return self.value.(OplogExternalPayload) +} + +func MakeOplogPayloadInline(value []uint8) OplogPayload { + return OplogPayload{OplogPayloadInline, value} +} +func MakeOplogPayloadExternal(value OplogExternalPayload) OplogPayload { + return OplogPayload{OplogPayloadExternal, value} +} + +type AgentTerminatedByQuotaError struct { + EnvironmentId golem_api_host.EnvironmentId + ResourceName string +} + +type EphemeralSleepTooLong struct { + RequestedNanos uint64 + MaxNanos uint64 +} + +type EphemeralFuelExhausted struct { + OverdraftLimit uint64 +} + +type EphemeralCannotSuspend struct { + Reason string +} + +type ReadOnlyViolation struct { + Method string + HostFunction string +} + +const ( + WorkerErrorUnknown uint8 = 0 + WorkerErrorInvalidRequest uint8 = 1 + WorkerErrorStackOverflow uint8 = 2 + WorkerErrorOutOfMemory uint8 = 3 + WorkerErrorExceededMemoryLimit uint8 = 4 + WorkerErrorInternalError uint8 = 5 + WorkerErrorDeterministicTrap uint8 = 6 + WorkerErrorTransientError uint8 = 7 + WorkerErrorPermanentError uint8 = 8 + WorkerErrorExceededTableLimit uint8 = 9 + WorkerErrorExceededHttpCallLimit uint8 = 10 + WorkerErrorExceededRpcCallLimit uint8 = 11 + WorkerErrorNodeOutOfFilesystemStorage uint8 = 12 + WorkerErrorAgentExceededFilesystemStorageLimit uint8 = 13 + WorkerErrorAgentTerminatedByQuota uint8 = 14 + WorkerErrorEphemeralSleepTooLong uint8 = 15 + WorkerErrorEphemeralFuelExhausted uint8 = 16 + WorkerErrorEphemeralCannotSuspend uint8 = 17 + WorkerErrorReadOnlyViolation uint8 = 18 +) + +// Describes the error that occurred in the agent +type WorkerError struct { + tag uint8 + value any +} + +func (self WorkerError) Tag() uint8 { + return self.tag +} + +func (self WorkerError) Unknown() string { + if self.tag != WorkerErrorUnknown { + panic("tag mismatch") + } + return self.value.(string) +} +func (self WorkerError) InvalidRequest() string { + if self.tag != WorkerErrorInvalidRequest { + panic("tag mismatch") + } + return self.value.(string) +} +func (self WorkerError) InternalError() string { + if self.tag != WorkerErrorInternalError { + panic("tag mismatch") + } + return self.value.(string) +} +func (self WorkerError) DeterministicTrap() string { + if self.tag != WorkerErrorDeterministicTrap { + panic("tag mismatch") + } + return self.value.(string) +} +func (self WorkerError) TransientError() string { + if self.tag != WorkerErrorTransientError { + panic("tag mismatch") + } + return self.value.(string) +} +func (self WorkerError) PermanentError() string { + if self.tag != WorkerErrorPermanentError { + panic("tag mismatch") + } + return self.value.(string) +} +func (self WorkerError) AgentTerminatedByQuota() AgentTerminatedByQuotaError { + if self.tag != WorkerErrorAgentTerminatedByQuota { + panic("tag mismatch") + } + return self.value.(AgentTerminatedByQuotaError) +} +func (self WorkerError) EphemeralSleepTooLong() EphemeralSleepTooLong { + if self.tag != WorkerErrorEphemeralSleepTooLong { + panic("tag mismatch") + } + return self.value.(EphemeralSleepTooLong) +} +func (self WorkerError) EphemeralFuelExhausted() EphemeralFuelExhausted { + if self.tag != WorkerErrorEphemeralFuelExhausted { + panic("tag mismatch") + } + return self.value.(EphemeralFuelExhausted) +} +func (self WorkerError) EphemeralCannotSuspend() EphemeralCannotSuspend { + if self.tag != WorkerErrorEphemeralCannotSuspend { + panic("tag mismatch") + } + return self.value.(EphemeralCannotSuspend) +} +func (self WorkerError) ReadOnlyViolation() ReadOnlyViolation { + if self.tag != WorkerErrorReadOnlyViolation { + panic("tag mismatch") + } + return self.value.(ReadOnlyViolation) +} + +func MakeWorkerErrorUnknown(value string) WorkerError { + return WorkerError{WorkerErrorUnknown, value} +} +func MakeWorkerErrorInvalidRequest(value string) WorkerError { + return WorkerError{WorkerErrorInvalidRequest, value} +} +func MakeWorkerErrorStackOverflow() WorkerError { + return WorkerError{WorkerErrorStackOverflow, nil} +} +func MakeWorkerErrorOutOfMemory() WorkerError { + return WorkerError{WorkerErrorOutOfMemory, nil} +} +func MakeWorkerErrorExceededMemoryLimit() WorkerError { + return WorkerError{WorkerErrorExceededMemoryLimit, nil} +} +func MakeWorkerErrorInternalError(value string) WorkerError { + return WorkerError{WorkerErrorInternalError, value} +} +func MakeWorkerErrorDeterministicTrap(value string) WorkerError { + return WorkerError{WorkerErrorDeterministicTrap, value} +} +func MakeWorkerErrorTransientError(value string) WorkerError { + return WorkerError{WorkerErrorTransientError, value} +} +func MakeWorkerErrorPermanentError(value string) WorkerError { + return WorkerError{WorkerErrorPermanentError, value} +} +func MakeWorkerErrorExceededTableLimit() WorkerError { + return WorkerError{WorkerErrorExceededTableLimit, nil} +} +func MakeWorkerErrorExceededHttpCallLimit() WorkerError { + return WorkerError{WorkerErrorExceededHttpCallLimit, nil} +} +func MakeWorkerErrorExceededRpcCallLimit() WorkerError { + return WorkerError{WorkerErrorExceededRpcCallLimit, nil} +} +func MakeWorkerErrorNodeOutOfFilesystemStorage() WorkerError { + return WorkerError{WorkerErrorNodeOutOfFilesystemStorage, nil} +} +func MakeWorkerErrorAgentExceededFilesystemStorageLimit() WorkerError { + return WorkerError{WorkerErrorAgentExceededFilesystemStorageLimit, nil} +} +func MakeWorkerErrorAgentTerminatedByQuota(value AgentTerminatedByQuotaError) WorkerError { + return WorkerError{WorkerErrorAgentTerminatedByQuota, value} +} +func MakeWorkerErrorEphemeralSleepTooLong(value EphemeralSleepTooLong) WorkerError { + return WorkerError{WorkerErrorEphemeralSleepTooLong, value} +} +func MakeWorkerErrorEphemeralFuelExhausted(value EphemeralFuelExhausted) WorkerError { + return WorkerError{WorkerErrorEphemeralFuelExhausted, value} +} +func MakeWorkerErrorEphemeralCannotSuspend(value EphemeralCannotSuspend) WorkerError { + return WorkerError{WorkerErrorEphemeralCannotSuspend, value} +} +func MakeWorkerErrorReadOnlyViolation(value ReadOnlyViolation) WorkerError { + return WorkerError{WorkerErrorReadOnlyViolation, value} +} + +type RawCreateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + AgentId golem_core_types.AgentId + AgentMode AgentMode + ComponentRevision uint64 + Env []witTypes.Tuple2[string, string] + EnvironmentId golem_api_host.EnvironmentId + CreatedBy golem_core_types.AccountId + Parent witTypes.Option[golem_core_types.AgentId] + ComponentSize uint64 + InitialTotalLinearMemorySize uint64 + InitialActivePlugins []EnvironmentPluginGrantId + LocalAgentConfig []RawLocalAgentConfigEntry + OriginalPhantomId witTypes.Option[golem_core_types.Uuid] + InstanceId golem_core_types.Uuid +} + +type RawStartParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + ParentStartIndex witTypes.Option[uint64] + FunctionName string + Request witTypes.Option[OplogPayload] + DurableFunctionType WrappedFunctionType +} + +type RawEndParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + StartIndex uint64 + Response witTypes.Option[OplogPayload] + ForcedCommit bool +} + +type RawCancelledParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + StartIndex uint64 + Partial witTypes.Option[OplogPayload] +} + +type RawCompletionDiscardedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + StartIndex uint64 +} + +// Parameters for a host-stream-frame oplog entry, with the frame payload in raw +// (possibly externally stored) form. +type RawHostStreamFrameParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + ParentStartIndex uint64 + Kind HostStreamKind + Payload OplogPayload +} + +type RawAgentInvocationStartedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + IdempotencyKey string + Payload OplogPayload + TraceId string + TraceStates []string + InvocationContext []SpanData +} + +type RawAgentInvocationFinishedParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Result OplogPayload + MethodName witTypes.Option[string] + ConsumedFuel int64 + ComponentRevision uint64 +} + +type RawErrorParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Error WorkerError + RetryFrom uint64 + InsideAtomicRegion bool + // Persistent retry policy state, if a semantic retry policy is active. + RetryPolicyState witTypes.Option[RetryPolicyState] +} + +type RawPendingAgentInvocationParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + IdempotencyKey string + Payload OplogPayload + TraceId string + TraceStates []string + InvocationContext []SpanData +} + +type RawSnapshotBasedUpdate struct { + TargetRevision uint64 + Payload OplogPayload + MimeType string +} + +const ( + // Automatic update by replaying the oplog on the new version + RawUpdateDescriptionAutomatic uint8 = 0 + // Custom update by loading a given snapshot on the new version + RawUpdateDescriptionSnapshotBased uint8 = 1 +) + +// Raw update description used in oplog entries +type RawUpdateDescription struct { + tag uint8 + value any +} + +func (self RawUpdateDescription) Tag() uint8 { + return self.tag +} + +func (self RawUpdateDescription) Automatic() uint64 { + if self.tag != RawUpdateDescriptionAutomatic { + panic("tag mismatch") + } + return self.value.(uint64) +} +func (self RawUpdateDescription) SnapshotBased() RawSnapshotBasedUpdate { + if self.tag != RawUpdateDescriptionSnapshotBased { + panic("tag mismatch") + } + return self.value.(RawSnapshotBasedUpdate) +} + +func MakeRawUpdateDescriptionAutomatic(value uint64) RawUpdateDescription { + return RawUpdateDescription{RawUpdateDescriptionAutomatic, value} +} +func MakeRawUpdateDescriptionSnapshotBased(value RawSnapshotBasedUpdate) RawUpdateDescription { + return RawUpdateDescription{RawUpdateDescriptionSnapshotBased, value} +} + +type RawPendingUpdateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Description RawUpdateDescription +} + +type RawSuccessfulUpdateParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + TargetRevision uint64 + NewComponentSize uint64 + NewActivePlugins []EnvironmentPluginGrantId +} + +type ResourceTypeId struct { + Name string + Owner string +} + +type RawCreateResourceParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Id uint64 + ResourceTypeId ResourceTypeId +} + +type RawDropResourceParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Id uint64 + ResourceTypeId ResourceTypeId +} + +type RawActivatePluginParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + PluginGrantId EnvironmentPluginGrantId +} + +type RawDeactivatePluginParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + PluginGrantId EnvironmentPluginGrantId +} + +type RawBeginRemoteTransactionParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + TransactionId string + OriginalBeginIndex witTypes.Option[uint64] +} + +type RawSnapshotParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + Data OplogPayload + MimeType string +} + +type RawOplogProcessorCheckpointParameters struct { + Timestamp wasi_clocks_0_3_0_system_clock.Instant + PluginGrantId EnvironmentPluginGrantId + TargetAgentId golem_core_types.AgentId + ConfirmedUpTo uint64 + SendingUpTo uint64 + LastBatchStart uint64 +} + +const ( + // The initial agent oplog entry + OplogEntryCreate uint8 = 0 + // Marks the start of a durable host call (or scope such as a batched-write). + OplogEntryStart uint8 = 1 + // Marks the successful completion of a durable host call (or scope) started by a matching `Start`. + OplogEntryEnd uint8 = 2 + // Marks that a durable host call started by a matching `Start` was cancelled + // (e.g. dropped from a `select!`) before producing a final response. + OplogEntryCancelled uint8 = 3 + // The agent has been invoked + OplogEntryAgentInvocationStarted uint8 = 4 + // The agent has completed an invocation + OplogEntryAgentInvocationFinished uint8 = 5 + // Agent suspended + OplogEntrySuspend uint8 = 6 + // Agent failed + OplogEntryError uint8 = 7 + // Marker entry added when get-oplog-index is called from the agent, to make the jumping behavior + // more predictable. + OplogEntryNoOp uint8 = 8 + // The agent needs to recover up to the given target oplog index and continue running from + // the source oplog index from there + // `jump` is an oplog region representing that from the end of that region we want to go back to the start and + // ignore all recorded operations in between. + OplogEntryJump uint8 = 9 + // Indicates that the agent has been interrupted at this point. + // Only used to recompute the agent's (cached) status, has no effect on execution. + OplogEntryInterrupted uint8 = 10 + // Indicates that the agent has been exited using WASI's exit function. + OplogEntryExited uint8 = 11 + // Begins an atomic region. All oplog entries after `BeginAtomicRegion` are to be ignored during + // recovery except if there is a corresponding `EndAtomicRegion` entry. + OplogEntryBeginAtomicRegion uint8 = 12 + // Ends an atomic region. All oplog entries between the corresponding `BeginAtomicRegion` and this + // entry are to be considered during recovery, and the begin/end markers can be removed during oplog + // compaction. + OplogEntryEndAtomicRegion uint8 = 13 + // An invocation request arrived while the agent was busy + OplogEntryPendingAgentInvocation uint8 = 14 + // An update request arrived and will be applied as soon the agent restarts + OplogEntryPendingUpdate uint8 = 15 + // An update was successfully applied + OplogEntrySuccessfulUpdate uint8 = 16 + // An update failed to be applied + OplogEntryFailedUpdate uint8 = 17 + // Increased total linear memory size + OplogEntryGrowMemory uint8 = 18 + // Updated filesystem usage by a signed delta + OplogEntryFilesystemStorageUsageUpdate uint8 = 19 + // Created a resource instance + OplogEntryCreateResource uint8 = 20 + // Dropped a resource instance + OplogEntryDropResource uint8 = 21 + // The agent emitted a log message + OplogEntryLog uint8 = 22 + // The agent has been restarted, forgetting all its history + OplogEntryRestart uint8 = 23 + // Activates a plugin + OplogEntryActivatePlugin uint8 = 24 + // Deactivates a plugin + OplogEntryDeactivatePlugin uint8 = 25 + // Revert an agent to a previous state + OplogEntryRevert uint8 = 26 + // Cancel a pending invocation + OplogEntryCancelPendingInvocation uint8 = 27 + // Start a new span in the invocation context + OplogEntryStartSpan uint8 = 28 + // Finish an open span in the invocation context + OplogEntryFinishSpan uint8 = 29 + // Set an attribute on an open span in the invocation context + OplogEntrySetSpanAttribute uint8 = 30 + // Change the current persistence level + OplogEntryChangePersistenceLevel uint8 = 31 + // Begins a transaction operation + OplogEntryBeginRemoteTransaction uint8 = 32 + // Pre-Commit of the transaction, indicating that the transaction will be committed + OplogEntryPreCommitRemoteTransaction uint8 = 33 + // Pre-Rollback of the transaction, indicating that the transaction will be rolled back + OplogEntryPreRollbackRemoteTransaction uint8 = 34 + // Committed transaction operation, indicating that the transaction was committed + OplogEntryCommittedRemoteTransaction uint8 = 35 + // Rolled back transaction operation, indicating that the transaction was rolled back + OplogEntryRolledBackRemoteTransaction uint8 = 36 + // A snapshot of the agent's state + OplogEntrySnapshot uint8 = 37 + // Checkpoint for oplog processor plugin delivery tracking + OplogEntryOplogProcessorCheckpoint uint8 = 38 + // Sets or overwrites a named retry policy + OplogEntrySetRetryPolicy uint8 = 39 + // Removes a named retry policy by name + OplogEntryRemoveRetryPolicy uint8 = 40 + // Durable queue entry for pending permission-card work + OplogEntryCardEventQueued uint8 = 41 + // Records successful installation of a permission card into the agent wallet + OplogEntryCardInstalled uint8 = 42 + // Records failed installation of a permission card into the agent wallet + OplogEntryCardInstallFailed uint8 = 43 + // Records that a permission card used by the agent has been revoked + OplogEntryCardRevoked uint8 = 44 + // Records that a permission card used by the agent has expired + OplogEntryCardExpired uint8 = 45 + // A durably recorded frame of a host-owned stream (e.g. an outgoing HTTP request body), + // attached to the durable host call identified by its start entry's index + OplogEntryHostStreamFrame uint8 = 46 + // The successful completion of the durable host call started by the matching `start` + // was persisted, but its response was never delivered to the agent (the agent dropped + // the completion future after the `end` was recorded) + OplogEntryCompletionDiscarded uint8 = 47 +) + +type OplogEntry struct { + tag uint8 + value any +} + +func (self OplogEntry) Tag() uint8 { + return self.tag +} + +func (self OplogEntry) Create() RawCreateParameters { + if self.tag != OplogEntryCreate { + panic("tag mismatch") + } + return self.value.(RawCreateParameters) +} +func (self OplogEntry) Start() RawStartParameters { + if self.tag != OplogEntryStart { + panic("tag mismatch") + } + return self.value.(RawStartParameters) +} +func (self OplogEntry) End() RawEndParameters { + if self.tag != OplogEntryEnd { + panic("tag mismatch") + } + return self.value.(RawEndParameters) +} +func (self OplogEntry) Cancelled() RawCancelledParameters { + if self.tag != OplogEntryCancelled { + panic("tag mismatch") + } + return self.value.(RawCancelledParameters) +} +func (self OplogEntry) AgentInvocationStarted() RawAgentInvocationStartedParameters { + if self.tag != OplogEntryAgentInvocationStarted { + panic("tag mismatch") + } + return self.value.(RawAgentInvocationStartedParameters) +} +func (self OplogEntry) AgentInvocationFinished() RawAgentInvocationFinishedParameters { + if self.tag != OplogEntryAgentInvocationFinished { + panic("tag mismatch") + } + return self.value.(RawAgentInvocationFinishedParameters) +} +func (self OplogEntry) Suspend() Timestamp { + if self.tag != OplogEntrySuspend { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self OplogEntry) Error() RawErrorParameters { + if self.tag != OplogEntryError { + panic("tag mismatch") + } + return self.value.(RawErrorParameters) +} +func (self OplogEntry) NoOp() Timestamp { + if self.tag != OplogEntryNoOp { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self OplogEntry) Jump() JumpParameters { + if self.tag != OplogEntryJump { + panic("tag mismatch") + } + return self.value.(JumpParameters) +} +func (self OplogEntry) Interrupted() Timestamp { + if self.tag != OplogEntryInterrupted { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self OplogEntry) Exited() Timestamp { + if self.tag != OplogEntryExited { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self OplogEntry) BeginAtomicRegion() Timestamp { + if self.tag != OplogEntryBeginAtomicRegion { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self OplogEntry) EndAtomicRegion() EndAtomicRegionParameters { + if self.tag != OplogEntryEndAtomicRegion { + panic("tag mismatch") + } + return self.value.(EndAtomicRegionParameters) +} +func (self OplogEntry) PendingAgentInvocation() RawPendingAgentInvocationParameters { + if self.tag != OplogEntryPendingAgentInvocation { + panic("tag mismatch") + } + return self.value.(RawPendingAgentInvocationParameters) +} +func (self OplogEntry) PendingUpdate() RawPendingUpdateParameters { + if self.tag != OplogEntryPendingUpdate { + panic("tag mismatch") + } + return self.value.(RawPendingUpdateParameters) +} +func (self OplogEntry) SuccessfulUpdate() RawSuccessfulUpdateParameters { + if self.tag != OplogEntrySuccessfulUpdate { + panic("tag mismatch") + } + return self.value.(RawSuccessfulUpdateParameters) +} +func (self OplogEntry) FailedUpdate() FailedUpdateParameters { + if self.tag != OplogEntryFailedUpdate { + panic("tag mismatch") + } + return self.value.(FailedUpdateParameters) +} +func (self OplogEntry) GrowMemory() GrowMemoryParameters { + if self.tag != OplogEntryGrowMemory { + panic("tag mismatch") + } + return self.value.(GrowMemoryParameters) +} +func (self OplogEntry) FilesystemStorageUsageUpdate() FilesystemStorageUsageUpdateParameters { + if self.tag != OplogEntryFilesystemStorageUsageUpdate { + panic("tag mismatch") + } + return self.value.(FilesystemStorageUsageUpdateParameters) +} +func (self OplogEntry) CreateResource() RawCreateResourceParameters { + if self.tag != OplogEntryCreateResource { + panic("tag mismatch") + } + return self.value.(RawCreateResourceParameters) +} +func (self OplogEntry) DropResource() RawDropResourceParameters { + if self.tag != OplogEntryDropResource { + panic("tag mismatch") + } + return self.value.(RawDropResourceParameters) +} +func (self OplogEntry) Log() LogParameters { + if self.tag != OplogEntryLog { + panic("tag mismatch") + } + return self.value.(LogParameters) +} +func (self OplogEntry) Restart() Timestamp { + if self.tag != OplogEntryRestart { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self OplogEntry) ActivatePlugin() RawActivatePluginParameters { + if self.tag != OplogEntryActivatePlugin { + panic("tag mismatch") + } + return self.value.(RawActivatePluginParameters) +} +func (self OplogEntry) DeactivatePlugin() RawDeactivatePluginParameters { + if self.tag != OplogEntryDeactivatePlugin { + panic("tag mismatch") + } + return self.value.(RawDeactivatePluginParameters) +} +func (self OplogEntry) Revert() RevertParameters { + if self.tag != OplogEntryRevert { + panic("tag mismatch") + } + return self.value.(RevertParameters) +} +func (self OplogEntry) CancelPendingInvocation() CancelPendingInvocationParameters { + if self.tag != OplogEntryCancelPendingInvocation { + panic("tag mismatch") + } + return self.value.(CancelPendingInvocationParameters) +} +func (self OplogEntry) StartSpan() StartSpanParameters { + if self.tag != OplogEntryStartSpan { + panic("tag mismatch") + } + return self.value.(StartSpanParameters) +} +func (self OplogEntry) FinishSpan() FinishSpanParameters { + if self.tag != OplogEntryFinishSpan { + panic("tag mismatch") + } + return self.value.(FinishSpanParameters) +} +func (self OplogEntry) SetSpanAttribute() SetSpanAttributeParameters { + if self.tag != OplogEntrySetSpanAttribute { + panic("tag mismatch") + } + return self.value.(SetSpanAttributeParameters) +} +func (self OplogEntry) ChangePersistenceLevel() ChangePersistenceLevelParameters { + if self.tag != OplogEntryChangePersistenceLevel { + panic("tag mismatch") + } + return self.value.(ChangePersistenceLevelParameters) +} +func (self OplogEntry) BeginRemoteTransaction() RawBeginRemoteTransactionParameters { + if self.tag != OplogEntryBeginRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RawBeginRemoteTransactionParameters) +} +func (self OplogEntry) PreCommitRemoteTransaction() RemoteTransactionParameters { + if self.tag != OplogEntryPreCommitRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self OplogEntry) PreRollbackRemoteTransaction() RemoteTransactionParameters { + if self.tag != OplogEntryPreRollbackRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self OplogEntry) CommittedRemoteTransaction() RemoteTransactionParameters { + if self.tag != OplogEntryCommittedRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self OplogEntry) RolledBackRemoteTransaction() RemoteTransactionParameters { + if self.tag != OplogEntryRolledBackRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self OplogEntry) Snapshot() RawSnapshotParameters { + if self.tag != OplogEntrySnapshot { + panic("tag mismatch") + } + return self.value.(RawSnapshotParameters) +} +func (self OplogEntry) OplogProcessorCheckpoint() RawOplogProcessorCheckpointParameters { + if self.tag != OplogEntryOplogProcessorCheckpoint { + panic("tag mismatch") + } + return self.value.(RawOplogProcessorCheckpointParameters) +} +func (self OplogEntry) SetRetryPolicy() SetRetryPolicyParameters { + if self.tag != OplogEntrySetRetryPolicy { + panic("tag mismatch") + } + return self.value.(SetRetryPolicyParameters) +} +func (self OplogEntry) RemoveRetryPolicy() RemoveRetryPolicyParameters { + if self.tag != OplogEntryRemoveRetryPolicy { + panic("tag mismatch") + } + return self.value.(RemoveRetryPolicyParameters) +} +func (self OplogEntry) CardEventQueued() CardEventQueuedParameters { + if self.tag != OplogEntryCardEventQueued { + panic("tag mismatch") + } + return self.value.(CardEventQueuedParameters) +} +func (self OplogEntry) CardInstalled() RawCardInstalledParameters { + if self.tag != OplogEntryCardInstalled { + panic("tag mismatch") + } + return self.value.(RawCardInstalledParameters) +} +func (self OplogEntry) CardInstallFailed() CardInstallFailedParameters { + if self.tag != OplogEntryCardInstallFailed { + panic("tag mismatch") + } + return self.value.(CardInstallFailedParameters) +} +func (self OplogEntry) CardRevoked() CardRevokedParameters { + if self.tag != OplogEntryCardRevoked { + panic("tag mismatch") + } + return self.value.(CardRevokedParameters) +} +func (self OplogEntry) CardExpired() CardExpiredParameters { + if self.tag != OplogEntryCardExpired { + panic("tag mismatch") + } + return self.value.(CardExpiredParameters) +} +func (self OplogEntry) HostStreamFrame() RawHostStreamFrameParameters { + if self.tag != OplogEntryHostStreamFrame { + panic("tag mismatch") + } + return self.value.(RawHostStreamFrameParameters) +} +func (self OplogEntry) CompletionDiscarded() RawCompletionDiscardedParameters { + if self.tag != OplogEntryCompletionDiscarded { + panic("tag mismatch") + } + return self.value.(RawCompletionDiscardedParameters) +} + +func MakeOplogEntryCreate(value RawCreateParameters) OplogEntry { + return OplogEntry{OplogEntryCreate, value} +} +func MakeOplogEntryStart(value RawStartParameters) OplogEntry { + return OplogEntry{OplogEntryStart, value} +} +func MakeOplogEntryEnd(value RawEndParameters) OplogEntry { + return OplogEntry{OplogEntryEnd, value} +} +func MakeOplogEntryCancelled(value RawCancelledParameters) OplogEntry { + return OplogEntry{OplogEntryCancelled, value} +} +func MakeOplogEntryAgentInvocationStarted(value RawAgentInvocationStartedParameters) OplogEntry { + return OplogEntry{OplogEntryAgentInvocationStarted, value} +} +func MakeOplogEntryAgentInvocationFinished(value RawAgentInvocationFinishedParameters) OplogEntry { + return OplogEntry{OplogEntryAgentInvocationFinished, value} +} +func MakeOplogEntrySuspend(value Timestamp) OplogEntry { + return OplogEntry{OplogEntrySuspend, value} +} +func MakeOplogEntryError(value RawErrorParameters) OplogEntry { + return OplogEntry{OplogEntryError, value} +} +func MakeOplogEntryNoOp(value Timestamp) OplogEntry { + return OplogEntry{OplogEntryNoOp, value} +} +func MakeOplogEntryJump(value JumpParameters) OplogEntry { + return OplogEntry{OplogEntryJump, value} +} +func MakeOplogEntryInterrupted(value Timestamp) OplogEntry { + return OplogEntry{OplogEntryInterrupted, value} +} +func MakeOplogEntryExited(value Timestamp) OplogEntry { + return OplogEntry{OplogEntryExited, value} +} +func MakeOplogEntryBeginAtomicRegion(value Timestamp) OplogEntry { + return OplogEntry{OplogEntryBeginAtomicRegion, value} +} +func MakeOplogEntryEndAtomicRegion(value EndAtomicRegionParameters) OplogEntry { + return OplogEntry{OplogEntryEndAtomicRegion, value} +} +func MakeOplogEntryPendingAgentInvocation(value RawPendingAgentInvocationParameters) OplogEntry { + return OplogEntry{OplogEntryPendingAgentInvocation, value} +} +func MakeOplogEntryPendingUpdate(value RawPendingUpdateParameters) OplogEntry { + return OplogEntry{OplogEntryPendingUpdate, value} +} +func MakeOplogEntrySuccessfulUpdate(value RawSuccessfulUpdateParameters) OplogEntry { + return OplogEntry{OplogEntrySuccessfulUpdate, value} +} +func MakeOplogEntryFailedUpdate(value FailedUpdateParameters) OplogEntry { + return OplogEntry{OplogEntryFailedUpdate, value} +} +func MakeOplogEntryGrowMemory(value GrowMemoryParameters) OplogEntry { + return OplogEntry{OplogEntryGrowMemory, value} +} +func MakeOplogEntryFilesystemStorageUsageUpdate(value FilesystemStorageUsageUpdateParameters) OplogEntry { + return OplogEntry{OplogEntryFilesystemStorageUsageUpdate, value} +} +func MakeOplogEntryCreateResource(value RawCreateResourceParameters) OplogEntry { + return OplogEntry{OplogEntryCreateResource, value} +} +func MakeOplogEntryDropResource(value RawDropResourceParameters) OplogEntry { + return OplogEntry{OplogEntryDropResource, value} +} +func MakeOplogEntryLog(value LogParameters) OplogEntry { + return OplogEntry{OplogEntryLog, value} +} +func MakeOplogEntryRestart(value Timestamp) OplogEntry { + return OplogEntry{OplogEntryRestart, value} +} +func MakeOplogEntryActivatePlugin(value RawActivatePluginParameters) OplogEntry { + return OplogEntry{OplogEntryActivatePlugin, value} +} +func MakeOplogEntryDeactivatePlugin(value RawDeactivatePluginParameters) OplogEntry { + return OplogEntry{OplogEntryDeactivatePlugin, value} +} +func MakeOplogEntryRevert(value RevertParameters) OplogEntry { + return OplogEntry{OplogEntryRevert, value} +} +func MakeOplogEntryCancelPendingInvocation(value CancelPendingInvocationParameters) OplogEntry { + return OplogEntry{OplogEntryCancelPendingInvocation, value} +} +func MakeOplogEntryStartSpan(value StartSpanParameters) OplogEntry { + return OplogEntry{OplogEntryStartSpan, value} +} +func MakeOplogEntryFinishSpan(value FinishSpanParameters) OplogEntry { + return OplogEntry{OplogEntryFinishSpan, value} +} +func MakeOplogEntrySetSpanAttribute(value SetSpanAttributeParameters) OplogEntry { + return OplogEntry{OplogEntrySetSpanAttribute, value} +} +func MakeOplogEntryChangePersistenceLevel(value ChangePersistenceLevelParameters) OplogEntry { + return OplogEntry{OplogEntryChangePersistenceLevel, value} +} +func MakeOplogEntryBeginRemoteTransaction(value RawBeginRemoteTransactionParameters) OplogEntry { + return OplogEntry{OplogEntryBeginRemoteTransaction, value} +} +func MakeOplogEntryPreCommitRemoteTransaction(value RemoteTransactionParameters) OplogEntry { + return OplogEntry{OplogEntryPreCommitRemoteTransaction, value} +} +func MakeOplogEntryPreRollbackRemoteTransaction(value RemoteTransactionParameters) OplogEntry { + return OplogEntry{OplogEntryPreRollbackRemoteTransaction, value} +} +func MakeOplogEntryCommittedRemoteTransaction(value RemoteTransactionParameters) OplogEntry { + return OplogEntry{OplogEntryCommittedRemoteTransaction, value} +} +func MakeOplogEntryRolledBackRemoteTransaction(value RemoteTransactionParameters) OplogEntry { + return OplogEntry{OplogEntryRolledBackRemoteTransaction, value} +} +func MakeOplogEntrySnapshot(value RawSnapshotParameters) OplogEntry { + return OplogEntry{OplogEntrySnapshot, value} +} +func MakeOplogEntryOplogProcessorCheckpoint(value RawOplogProcessorCheckpointParameters) OplogEntry { + return OplogEntry{OplogEntryOplogProcessorCheckpoint, value} +} +func MakeOplogEntrySetRetryPolicy(value SetRetryPolicyParameters) OplogEntry { + return OplogEntry{OplogEntrySetRetryPolicy, value} +} +func MakeOplogEntryRemoveRetryPolicy(value RemoveRetryPolicyParameters) OplogEntry { + return OplogEntry{OplogEntryRemoveRetryPolicy, value} +} +func MakeOplogEntryCardEventQueued(value CardEventQueuedParameters) OplogEntry { + return OplogEntry{OplogEntryCardEventQueued, value} +} +func MakeOplogEntryCardInstalled(value RawCardInstalledParameters) OplogEntry { + return OplogEntry{OplogEntryCardInstalled, value} +} +func MakeOplogEntryCardInstallFailed(value CardInstallFailedParameters) OplogEntry { + return OplogEntry{OplogEntryCardInstallFailed, value} +} +func MakeOplogEntryCardRevoked(value CardRevokedParameters) OplogEntry { + return OplogEntry{OplogEntryCardRevoked, value} +} +func MakeOplogEntryCardExpired(value CardExpiredParameters) OplogEntry { + return OplogEntry{OplogEntryCardExpired, value} +} +func MakeOplogEntryHostStreamFrame(value RawHostStreamFrameParameters) OplogEntry { + return OplogEntry{OplogEntryHostStreamFrame, value} +} +func MakeOplogEntryCompletionDiscarded(value RawCompletionDiscardedParameters) OplogEntry { + return OplogEntry{OplogEntryCompletionDiscarded, value} +} + +const ( + // The initial agent oplog entry + PublicOplogEntryCreate uint8 = 0 + // Marks the start of a durable host call (or scope such as a batched-write). + PublicOplogEntryStart uint8 = 1 + // Marks the successful completion of a durable host call (or scope) started by a matching `Start`. + PublicOplogEntryEnd uint8 = 2 + // Marks that a durable host call started by a matching `Start` was cancelled + // (e.g. dropped from a `select!`) before producing a final response. + PublicOplogEntryCancelled uint8 = 3 + // The agent has been invoked + PublicOplogEntryAgentInvocationStarted uint8 = 4 + // The agent has completed an invocation + PublicOplogEntryAgentInvocationFinished uint8 = 5 + // Agent suspended + PublicOplogEntrySuspend uint8 = 6 + // Agent failed + PublicOplogEntryError uint8 = 7 + // Marker entry added when get-oplog-index is called from the agent, to make the jumping behavior + // more predictable. + PublicOplogEntryNoOp uint8 = 8 + // The agent needs to recover up to the given target oplog index and continue running from + // the source oplog index from there + // `jump` is an oplog region representing that from the end of that region we want to go back to the start and + // ignore all recorded operations in between. + PublicOplogEntryJump uint8 = 9 + // Indicates that the agent has been interrupted at this point. + // Only used to recompute the agent's (cached) status, has no effect on execution. + PublicOplogEntryInterrupted uint8 = 10 + // Indicates that the agent has been exited using WASI's exit function. + PublicOplogEntryExited uint8 = 11 + // Begins an atomic region. All oplog entries after `BeginAtomicRegion` are to be ignored during + // recovery except if there is a corresponding `EndAtomicRegion` entry. + PublicOplogEntryBeginAtomicRegion uint8 = 12 + // Ends an atomic region. All oplog entries between the corresponding `BeginAtomicRegion` and this + // entry are to be considered during recovery, and the begin/end markers can be removed during oplog + // compaction. + PublicOplogEntryEndAtomicRegion uint8 = 13 + // An invocation request arrived while the agent was busy + PublicOplogEntryPendingAgentInvocation uint8 = 14 + // An update request arrived and will be applied as soon the agent restarts + PublicOplogEntryPendingUpdate uint8 = 15 + // An update was successfully applied + PublicOplogEntrySuccessfulUpdate uint8 = 16 + // An update failed to be applied + PublicOplogEntryFailedUpdate uint8 = 17 + // Increased total linear memory size + PublicOplogEntryGrowMemory uint8 = 18 + // Updated filesystem usage by a signed delta + PublicOplogEntryFilesystemStorageUsageUpdate uint8 = 19 + // Created a resource instance + PublicOplogEntryCreateResource uint8 = 20 + // Dropped a resource instance + PublicOplogEntryDropResource uint8 = 21 + // The agent emitted a log message + PublicOplogEntryLog uint8 = 22 + // The agent's has been restarted, forgetting all its history + PublicOplogEntryRestart uint8 = 23 + // Activates a plugin + PublicOplogEntryActivatePlugin uint8 = 24 + // Deactivates a plugin + PublicOplogEntryDeactivatePlugin uint8 = 25 + // Revert an agent to a previous state + PublicOplogEntryRevert uint8 = 26 + // Cancel a pending invocation + PublicOplogEntryCancelPendingInvocation uint8 = 27 + // Start a new span in the invocation context + PublicOplogEntryStartSpan uint8 = 28 + // Finish an open span in the invocation context + PublicOplogEntryFinishSpan uint8 = 29 + // Set an attribute on an open span in the invocation context + PublicOplogEntrySetSpanAttribute uint8 = 30 + // Change the current persistence level + PublicOplogEntryChangePersistenceLevel uint8 = 31 + // Begins a transaction operation + PublicOplogEntryBeginRemoteTransaction uint8 = 32 + // Pre-Commit of the transaction, indicating that the transaction will be committed + PublicOplogEntryPreCommitRemoteTransaction uint8 = 33 + // Pre-Rollback of the transaction, indicating that the transaction will be rolled back + PublicOplogEntryPreRollbackRemoteTransaction uint8 = 34 + // Committed transaction operation, indicating that the transaction was committed + PublicOplogEntryCommittedRemoteTransaction uint8 = 35 + // Rolled back transaction operation, indicating that the transaction was rolled back + PublicOplogEntryRolledBackRemoteTransaction uint8 = 36 + // A snapshot of the worker's state + PublicOplogEntrySnapshot uint8 = 37 + // Checkpoint for oplog processor plugin delivery tracking + PublicOplogEntryOplogProcessorCheckpoint uint8 = 38 + // Sets or overwrites a named retry policy + PublicOplogEntrySetRetryPolicy uint8 = 39 + // Removes a named retry policy by name + PublicOplogEntryRemoveRetryPolicy uint8 = 40 + // Durable queue entry for pending permission-card work + PublicOplogEntryCardEventQueued uint8 = 41 + // Records successful installation of a permission card into the agent wallet + PublicOplogEntryCardInstalled uint8 = 42 + // Records failed installation of a permission card into the agent wallet + PublicOplogEntryCardInstallFailed uint8 = 43 + // Records that a permission card used by the agent has been revoked + PublicOplogEntryCardRevoked uint8 = 44 + // Records that a permission card used by the agent has expired + PublicOplogEntryCardExpired uint8 = 45 + // A durably recorded frame of a host-owned stream (e.g. an outgoing HTTP request body), + // attached to the durable host call identified by its start entry's index + PublicOplogEntryHostStreamFrame uint8 = 46 + // The successful completion of the durable host call started by the matching `start` + // was persisted, but its response was never delivered to the agent (the agent dropped + // the completion future after the `end` was recorded) + PublicOplogEntryCompletionDiscarded uint8 = 47 +) + +type PublicOplogEntry struct { + tag uint8 + value any +} + +func (self PublicOplogEntry) Tag() uint8 { + return self.tag +} + +func (self PublicOplogEntry) Create() CreateParameters { + if self.tag != PublicOplogEntryCreate { + panic("tag mismatch") + } + return self.value.(CreateParameters) +} +func (self PublicOplogEntry) Start() StartParameters { + if self.tag != PublicOplogEntryStart { + panic("tag mismatch") + } + return self.value.(StartParameters) +} +func (self PublicOplogEntry) End() EndParameters { + if self.tag != PublicOplogEntryEnd { + panic("tag mismatch") + } + return self.value.(EndParameters) +} +func (self PublicOplogEntry) Cancelled() CancelledParameters { + if self.tag != PublicOplogEntryCancelled { + panic("tag mismatch") + } + return self.value.(CancelledParameters) +} +func (self PublicOplogEntry) AgentInvocationStarted() AgentInvocationStartedParameters { + if self.tag != PublicOplogEntryAgentInvocationStarted { + panic("tag mismatch") + } + return self.value.(AgentInvocationStartedParameters) +} +func (self PublicOplogEntry) AgentInvocationFinished() AgentInvocationFinishedParameters { + if self.tag != PublicOplogEntryAgentInvocationFinished { + panic("tag mismatch") + } + return self.value.(AgentInvocationFinishedParameters) +} +func (self PublicOplogEntry) Suspend() Timestamp { + if self.tag != PublicOplogEntrySuspend { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self PublicOplogEntry) Error() ErrorParameters { + if self.tag != PublicOplogEntryError { + panic("tag mismatch") + } + return self.value.(ErrorParameters) +} +func (self PublicOplogEntry) NoOp() Timestamp { + if self.tag != PublicOplogEntryNoOp { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self PublicOplogEntry) Jump() JumpParameters { + if self.tag != PublicOplogEntryJump { + panic("tag mismatch") + } + return self.value.(JumpParameters) +} +func (self PublicOplogEntry) Interrupted() Timestamp { + if self.tag != PublicOplogEntryInterrupted { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self PublicOplogEntry) Exited() Timestamp { + if self.tag != PublicOplogEntryExited { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self PublicOplogEntry) BeginAtomicRegion() Timestamp { + if self.tag != PublicOplogEntryBeginAtomicRegion { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self PublicOplogEntry) EndAtomicRegion() EndAtomicRegionParameters { + if self.tag != PublicOplogEntryEndAtomicRegion { + panic("tag mismatch") + } + return self.value.(EndAtomicRegionParameters) +} +func (self PublicOplogEntry) PendingAgentInvocation() PendingAgentInvocationParameters { + if self.tag != PublicOplogEntryPendingAgentInvocation { + panic("tag mismatch") + } + return self.value.(PendingAgentInvocationParameters) +} +func (self PublicOplogEntry) PendingUpdate() PendingUpdateParameters { + if self.tag != PublicOplogEntryPendingUpdate { + panic("tag mismatch") + } + return self.value.(PendingUpdateParameters) +} +func (self PublicOplogEntry) SuccessfulUpdate() SuccessfulUpdateParameters { + if self.tag != PublicOplogEntrySuccessfulUpdate { + panic("tag mismatch") + } + return self.value.(SuccessfulUpdateParameters) +} +func (self PublicOplogEntry) FailedUpdate() FailedUpdateParameters { + if self.tag != PublicOplogEntryFailedUpdate { + panic("tag mismatch") + } + return self.value.(FailedUpdateParameters) +} +func (self PublicOplogEntry) GrowMemory() GrowMemoryParameters { + if self.tag != PublicOplogEntryGrowMemory { + panic("tag mismatch") + } + return self.value.(GrowMemoryParameters) +} +func (self PublicOplogEntry) FilesystemStorageUsageUpdate() FilesystemStorageUsageUpdateParameters { + if self.tag != PublicOplogEntryFilesystemStorageUsageUpdate { + panic("tag mismatch") + } + return self.value.(FilesystemStorageUsageUpdateParameters) +} +func (self PublicOplogEntry) CreateResource() CreateResourceParameters { + if self.tag != PublicOplogEntryCreateResource { + panic("tag mismatch") + } + return self.value.(CreateResourceParameters) +} +func (self PublicOplogEntry) DropResource() DropResourceParameters { + if self.tag != PublicOplogEntryDropResource { + panic("tag mismatch") + } + return self.value.(DropResourceParameters) +} +func (self PublicOplogEntry) Log() LogParameters { + if self.tag != PublicOplogEntryLog { + panic("tag mismatch") + } + return self.value.(LogParameters) +} +func (self PublicOplogEntry) Restart() Timestamp { + if self.tag != PublicOplogEntryRestart { + panic("tag mismatch") + } + return self.value.(Timestamp) +} +func (self PublicOplogEntry) ActivatePlugin() ActivatePluginParameters { + if self.tag != PublicOplogEntryActivatePlugin { + panic("tag mismatch") + } + return self.value.(ActivatePluginParameters) +} +func (self PublicOplogEntry) DeactivatePlugin() DeactivatePluginParameters { + if self.tag != PublicOplogEntryDeactivatePlugin { + panic("tag mismatch") + } + return self.value.(DeactivatePluginParameters) +} +func (self PublicOplogEntry) Revert() RevertParameters { + if self.tag != PublicOplogEntryRevert { + panic("tag mismatch") + } + return self.value.(RevertParameters) +} +func (self PublicOplogEntry) CancelPendingInvocation() CancelPendingInvocationParameters { + if self.tag != PublicOplogEntryCancelPendingInvocation { + panic("tag mismatch") + } + return self.value.(CancelPendingInvocationParameters) +} +func (self PublicOplogEntry) StartSpan() StartSpanParameters { + if self.tag != PublicOplogEntryStartSpan { + panic("tag mismatch") + } + return self.value.(StartSpanParameters) +} +func (self PublicOplogEntry) FinishSpan() FinishSpanParameters { + if self.tag != PublicOplogEntryFinishSpan { + panic("tag mismatch") + } + return self.value.(FinishSpanParameters) +} +func (self PublicOplogEntry) SetSpanAttribute() SetSpanAttributeParameters { + if self.tag != PublicOplogEntrySetSpanAttribute { + panic("tag mismatch") + } + return self.value.(SetSpanAttributeParameters) +} +func (self PublicOplogEntry) ChangePersistenceLevel() ChangePersistenceLevelParameters { + if self.tag != PublicOplogEntryChangePersistenceLevel { + panic("tag mismatch") + } + return self.value.(ChangePersistenceLevelParameters) +} +func (self PublicOplogEntry) BeginRemoteTransaction() BeginRemoteTransactionParameters { + if self.tag != PublicOplogEntryBeginRemoteTransaction { + panic("tag mismatch") + } + return self.value.(BeginRemoteTransactionParameters) +} +func (self PublicOplogEntry) PreCommitRemoteTransaction() RemoteTransactionParameters { + if self.tag != PublicOplogEntryPreCommitRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self PublicOplogEntry) PreRollbackRemoteTransaction() RemoteTransactionParameters { + if self.tag != PublicOplogEntryPreRollbackRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self PublicOplogEntry) CommittedRemoteTransaction() RemoteTransactionParameters { + if self.tag != PublicOplogEntryCommittedRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self PublicOplogEntry) RolledBackRemoteTransaction() RemoteTransactionParameters { + if self.tag != PublicOplogEntryRolledBackRemoteTransaction { + panic("tag mismatch") + } + return self.value.(RemoteTransactionParameters) +} +func (self PublicOplogEntry) Snapshot() SnapshotParameters { + if self.tag != PublicOplogEntrySnapshot { + panic("tag mismatch") + } + return self.value.(SnapshotParameters) +} +func (self PublicOplogEntry) OplogProcessorCheckpoint() OplogProcessorCheckpointParameters { + if self.tag != PublicOplogEntryOplogProcessorCheckpoint { + panic("tag mismatch") + } + return self.value.(OplogProcessorCheckpointParameters) +} +func (self PublicOplogEntry) SetRetryPolicy() SetRetryPolicyParameters { + if self.tag != PublicOplogEntrySetRetryPolicy { + panic("tag mismatch") + } + return self.value.(SetRetryPolicyParameters) +} +func (self PublicOplogEntry) RemoveRetryPolicy() RemoveRetryPolicyParameters { + if self.tag != PublicOplogEntryRemoveRetryPolicy { + panic("tag mismatch") + } + return self.value.(RemoveRetryPolicyParameters) +} +func (self PublicOplogEntry) CardEventQueued() CardEventQueuedParameters { + if self.tag != PublicOplogEntryCardEventQueued { + panic("tag mismatch") + } + return self.value.(CardEventQueuedParameters) +} +func (self PublicOplogEntry) CardInstalled() CardInstalledParameters { + if self.tag != PublicOplogEntryCardInstalled { + panic("tag mismatch") + } + return self.value.(CardInstalledParameters) +} +func (self PublicOplogEntry) CardInstallFailed() CardInstallFailedParameters { + if self.tag != PublicOplogEntryCardInstallFailed { + panic("tag mismatch") + } + return self.value.(CardInstallFailedParameters) +} +func (self PublicOplogEntry) CardRevoked() CardRevokedParameters { + if self.tag != PublicOplogEntryCardRevoked { + panic("tag mismatch") + } + return self.value.(CardRevokedParameters) +} +func (self PublicOplogEntry) CardExpired() CardExpiredParameters { + if self.tag != PublicOplogEntryCardExpired { + panic("tag mismatch") + } + return self.value.(CardExpiredParameters) +} +func (self PublicOplogEntry) HostStreamFrame() HostStreamFrameParameters { + if self.tag != PublicOplogEntryHostStreamFrame { + panic("tag mismatch") + } + return self.value.(HostStreamFrameParameters) +} +func (self PublicOplogEntry) CompletionDiscarded() CompletionDiscardedParameters { + if self.tag != PublicOplogEntryCompletionDiscarded { + panic("tag mismatch") + } + return self.value.(CompletionDiscardedParameters) +} + +func MakePublicOplogEntryCreate(value CreateParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCreate, value} +} +func MakePublicOplogEntryStart(value StartParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryStart, value} +} +func MakePublicOplogEntryEnd(value EndParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryEnd, value} +} +func MakePublicOplogEntryCancelled(value CancelledParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCancelled, value} +} +func MakePublicOplogEntryAgentInvocationStarted(value AgentInvocationStartedParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryAgentInvocationStarted, value} +} +func MakePublicOplogEntryAgentInvocationFinished(value AgentInvocationFinishedParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryAgentInvocationFinished, value} +} +func MakePublicOplogEntrySuspend(value Timestamp) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntrySuspend, value} +} +func MakePublicOplogEntryError(value ErrorParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryError, value} +} +func MakePublicOplogEntryNoOp(value Timestamp) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryNoOp, value} +} +func MakePublicOplogEntryJump(value JumpParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryJump, value} +} +func MakePublicOplogEntryInterrupted(value Timestamp) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryInterrupted, value} +} +func MakePublicOplogEntryExited(value Timestamp) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryExited, value} +} +func MakePublicOplogEntryBeginAtomicRegion(value Timestamp) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryBeginAtomicRegion, value} +} +func MakePublicOplogEntryEndAtomicRegion(value EndAtomicRegionParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryEndAtomicRegion, value} +} +func MakePublicOplogEntryPendingAgentInvocation(value PendingAgentInvocationParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryPendingAgentInvocation, value} +} +func MakePublicOplogEntryPendingUpdate(value PendingUpdateParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryPendingUpdate, value} +} +func MakePublicOplogEntrySuccessfulUpdate(value SuccessfulUpdateParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntrySuccessfulUpdate, value} +} +func MakePublicOplogEntryFailedUpdate(value FailedUpdateParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryFailedUpdate, value} +} +func MakePublicOplogEntryGrowMemory(value GrowMemoryParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryGrowMemory, value} +} +func MakePublicOplogEntryFilesystemStorageUsageUpdate(value FilesystemStorageUsageUpdateParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryFilesystemStorageUsageUpdate, value} +} +func MakePublicOplogEntryCreateResource(value CreateResourceParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCreateResource, value} +} +func MakePublicOplogEntryDropResource(value DropResourceParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryDropResource, value} +} +func MakePublicOplogEntryLog(value LogParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryLog, value} +} +func MakePublicOplogEntryRestart(value Timestamp) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryRestart, value} +} +func MakePublicOplogEntryActivatePlugin(value ActivatePluginParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryActivatePlugin, value} +} +func MakePublicOplogEntryDeactivatePlugin(value DeactivatePluginParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryDeactivatePlugin, value} +} +func MakePublicOplogEntryRevert(value RevertParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryRevert, value} +} +func MakePublicOplogEntryCancelPendingInvocation(value CancelPendingInvocationParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCancelPendingInvocation, value} +} +func MakePublicOplogEntryStartSpan(value StartSpanParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryStartSpan, value} +} +func MakePublicOplogEntryFinishSpan(value FinishSpanParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryFinishSpan, value} +} +func MakePublicOplogEntrySetSpanAttribute(value SetSpanAttributeParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntrySetSpanAttribute, value} +} +func MakePublicOplogEntryChangePersistenceLevel(value ChangePersistenceLevelParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryChangePersistenceLevel, value} +} +func MakePublicOplogEntryBeginRemoteTransaction(value BeginRemoteTransactionParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryBeginRemoteTransaction, value} +} +func MakePublicOplogEntryPreCommitRemoteTransaction(value RemoteTransactionParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryPreCommitRemoteTransaction, value} +} +func MakePublicOplogEntryPreRollbackRemoteTransaction(value RemoteTransactionParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryPreRollbackRemoteTransaction, value} +} +func MakePublicOplogEntryCommittedRemoteTransaction(value RemoteTransactionParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCommittedRemoteTransaction, value} +} +func MakePublicOplogEntryRolledBackRemoteTransaction(value RemoteTransactionParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryRolledBackRemoteTransaction, value} +} +func MakePublicOplogEntrySnapshot(value SnapshotParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntrySnapshot, value} +} +func MakePublicOplogEntryOplogProcessorCheckpoint(value OplogProcessorCheckpointParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryOplogProcessorCheckpoint, value} +} +func MakePublicOplogEntrySetRetryPolicy(value SetRetryPolicyParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntrySetRetryPolicy, value} +} +func MakePublicOplogEntryRemoveRetryPolicy(value RemoveRetryPolicyParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryRemoveRetryPolicy, value} +} +func MakePublicOplogEntryCardEventQueued(value CardEventQueuedParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCardEventQueued, value} +} +func MakePublicOplogEntryCardInstalled(value CardInstalledParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCardInstalled, value} +} +func MakePublicOplogEntryCardInstallFailed(value CardInstallFailedParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCardInstallFailed, value} +} +func MakePublicOplogEntryCardRevoked(value CardRevokedParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCardRevoked, value} +} +func MakePublicOplogEntryCardExpired(value CardExpiredParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCardExpired, value} +} +func MakePublicOplogEntryHostStreamFrame(value HostStreamFrameParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryHostStreamFrame, value} +} +func MakePublicOplogEntryCompletionDiscarded(value CompletionDiscardedParameters) PublicOplogEntry { + return PublicOplogEntry{PublicOplogEntryCompletionDiscarded, value} +} + +//go:wasmimport golem:api/oplog@1.5.0 [resource-drop]get-oplog +func resourceDropGetOplog(handle int32) + +type GetOplog struct { + handle *witRuntime.Handle +} + +func (self *GetOplog) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *GetOplog) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *GetOplog) Handle() int32 { + return self.handle.Use() +} + +func (self *GetOplog) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropGetOplog(handle) + } +} + +func GetOplogFromOwnHandle(handleValue int32) *GetOplog { + handle := witRuntime.MakeHandle(handleValue) + value := &GetOplog{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropGetOplog(handleValue) + } + }, 0) + return value +} + +func GetOplogFromBorrowHandle(handleValue int32) *GetOplog { + handle := witRuntime.MakeHandle(handleValue) + return &GetOplog{handle} +} + +//go:wasmimport golem:api/oplog@1.5.0 [resource-drop]search-oplog +func resourceDropSearchOplog(handle int32) + +type SearchOplog struct { + handle *witRuntime.Handle +} + +func (self *SearchOplog) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *SearchOplog) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *SearchOplog) Handle() int32 { + return self.handle.Use() +} + +func (self *SearchOplog) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropSearchOplog(handle) + } +} + +func SearchOplogFromOwnHandle(handleValue int32) *SearchOplog { + handle := witRuntime.MakeHandle(handleValue) + value := &SearchOplog{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropSearchOplog(handleValue) + } + }, 0) + return value +} + +func SearchOplogFromBorrowHandle(handleValue int32) *SearchOplog { + handle := witRuntime.MakeHandle(handleValue) + return &SearchOplog{handle} +} + +//go:wasmimport golem:api/oplog@1.5.0 enrich-oplog-entries +func wasm_import_enrich_oplog_entries(arg0 int64, arg1 int64, arg2 int64, arg3 int64, arg4 uintptr, arg5 uint32, arg6 uintptr, arg7 uint32, arg8 int64, arg9 uintptr) + +func EnrichOplogEntries(environmentId golem_api_host.EnvironmentId, agentId golem_core_types.AgentId, entries []witTypes.Tuple2[uint64, OplogEntry], componentRevision uint64) witTypes.Result[[]PublicOplogEntry, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData((agentId).AgentId)) + pinner.Pin(utf8) + slice218 := entries + length220 := uint32(len(slice218)) + result219 := witRuntime.Allocate(pinner, uintptr(length220*(176+10*4)), 8) + for index, element := range slice218 { + base := unsafe.Add(result219, index*(176+10*4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 0)) = int64((element).F0) + + switch (element).F1.Tag() { + case OplogEntryCreate: + payload := (element).F1.Create() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(((((payload).AgentId).ComponentId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(((((payload).AgentId).ComponentId).Uuid).LowBits) + utf80 := unsafe.Pointer(unsafe.StringData(((payload).AgentId).AgentId)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4))) = uint32(uint32(len(((payload).AgentId).AgentId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 48)) = uint32(uintptr(uintptr(utf80))) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4))) = int8(int32((payload).AgentMode)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = int64((payload).ComponentRevision) + slice := (payload).Env + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(4*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(4*4)) + utf81 := unsafe.Pointer(unsafe.StringData((element).F0)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).F0))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf81))) + utf82 := unsafe.Pointer(unsafe.StringData((element).F1)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).F1))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf82))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 3*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uintptr(uintptr(result))) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 4*4))) = int64((((payload).EnvironmentId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 4*4))) = int64((((payload).EnvironmentId).Uuid).LowBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))) = int64((((payload).CreatedBy).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4))) = int64((((payload).CreatedBy).Uuid).LowBits) + + switch (payload).Parent.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (96 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Parent.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (96 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (104 + 4*4))) = int64((((payload).ComponentId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (112 + 4*4))) = int64((((payload).ComponentId).Uuid).LowBits) + utf83 := unsafe.Pointer(unsafe.StringData((payload).AgentId)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (120 + 5*4))) = uint32(uint32(len((payload).AgentId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (120 + 4*4))) = uint32(uintptr(uintptr(utf83))) + + default: + panic("unreachable") + } + *(*int64)(unsafe.Add(unsafe.Pointer(base), (120 + 6*4))) = int64((payload).ComponentSize) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (128 + 6*4))) = int64((payload).InitialTotalLinearMemorySize) + slice4 := (payload).InitialActivePlugins + length6 := uint32(len(slice4)) + result5 := witRuntime.Allocate(pinner, uintptr(length6*16), 8) + for index, element := range slice4 { + base := unsafe.Add(result5, index*16) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 0)) = int64(((element).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(((element).Uuid).LowBits) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 7*4))) = uint32(length6) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 6*4))) = uint32(uintptr(uintptr(result5))) + slice42 := (payload).LocalAgentConfig + length44 := uint32(len(slice42)) + result43 := witRuntime.Allocate(pinner, uintptr(length44*(5*4)), 4) + for index, element := range slice42 { + base := unsafe.Add(result43, index*(5*4)) + slice8 := (element).Path + length10 := uint32(len(slice8)) + result9 := witRuntime.Allocate(pinner, uintptr(length10*(2*4)), 4) + for index, element := range slice8 { + base := unsafe.Add(result9, index*(2*4)) + utf87 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf87))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(length10) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(result9))) + slice39 := ((element).Value).ValueNodes + length41 := uint32(len(slice39)) + result40 := witRuntime.Allocate(pinner, uintptr(length41*(16+4*4)), 8) + for index, element := range slice39 { + base := unsafe.Add(result40, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result11 int32 + if payload { + result11 = 1 + } else { + result11 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result11) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf812))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice13 := payload + length15 := uint32(len(slice13)) + result14 := witRuntime.Allocate(pinner, uintptr(length15*4), 4) + for index, element := range slice13 { + base := unsafe.Add(result14, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length15) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result14))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice17 := payload + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*1), 1) + for index, element := range slice17 { + base := unsafe.Add(result18, index*1) + var result16 int32 + if element { + result16 = 1 + } else { + result16 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result16) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length19) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result18))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice20 := payload + length22 := uint32(len(slice20)) + result21 := witRuntime.Allocate(pinner, uintptr(length22*4), 4) + for index, element := range slice20 { + base := unsafe.Add(result21, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length22) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result21))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice23 := payload + length25 := uint32(len(slice23)) + result24 := witRuntime.Allocate(pinner, uintptr(length25*4), 4) + for index, element := range slice23 { + base := unsafe.Add(result24, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length25) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result24))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice26 := payload + length28 := uint32(len(slice26)) + result27 := witRuntime.Allocate(pinner, uintptr(length28*4), 4) + for index, element := range slice26 { + base := unsafe.Add(result27, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length28) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result27))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice29 := payload + length31 := uint32(len(slice29)) + result30 := witRuntime.Allocate(pinner, uintptr(length31*8), 4) + for index, element := range slice29 { + base := unsafe.Add(result30, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result30))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf832 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf832) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf832))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf833 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf833) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf833))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf834 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf834) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf834))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf835))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf836 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf836))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf837 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf837) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf837))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf838 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf838) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf838))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(length41) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(result40))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = ((element).Value).Root + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 9*4))) = uint32(length44) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 8*4))) = uint32(uintptr(uintptr(result43))) + + switch (payload).OriginalPhantomId.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (136 + 10*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).OriginalPhantomId.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (136 + 10*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (144 + 10*4))) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (152 + 10*4))) = int64((payload).LowBits) + + default: + panic("unreachable") + } + *(*int64)(unsafe.Add(unsafe.Pointer(base), (160 + 10*4))) = int64(((payload).InstanceId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (168 + 10*4))) = int64(((payload).InstanceId).LowBits) + + case OplogEntryStart: + payload := (element).F1.Start() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).ParentStartIndex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ParentStartIndex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(payload) + + default: + panic("unreachable") + } + utf845 := unsafe.Pointer(unsafe.StringData((payload).FunctionName)) + pinner.Pin(utf845) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4))) = uint32(uint32(len((payload).FunctionName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 48)) = uint32(uintptr(uintptr(utf845))) + + switch (payload).Request.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Request.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4))) = int8(int32(1)) + + switch payload.Tag() { + case OplogPayloadInline: + payload := payload.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = int8(int32(0)) + data46 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data46) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uintptr(uintptr(data46))) + + case OplogPayloadExternal: + payload := payload.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 2*4))) = int64(((payload).PayloadId).LowBits) + data47 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data47) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (80 + 3*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (80 + 2*4))) = uint32(uintptr(uintptr(data47))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).DurableFunctionType.Tag() { + case WrappedFunctionTypeReadLocal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))) = int8(int32(0)) + + case WrappedFunctionTypeWriteLocal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))) = int8(int32(1)) + + case WrappedFunctionTypeReadRemote: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))) = int8(int32(2)) + + case WrappedFunctionTypeWriteRemote: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))) = int8(int32(3)) + + case WrappedFunctionTypeWriteRemoteBatched: + payload := (payload).DurableFunctionType.WriteRemoteBatched() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (96 + 4*4))) = int64(payload) + + default: + panic("unreachable") + } + + case WrappedFunctionTypeWriteRemoteTransaction: + payload := (payload).DurableFunctionType.WriteRemoteTransaction() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (96 + 4*4))) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case OplogEntryEnd: + payload := (element).F1.End() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).StartIndex) + + switch (payload).Response.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Response.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case OplogPayloadInline: + payload := payload.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + data48 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data48) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 56)) = uint32(uintptr(uintptr(data48))) + + case OplogPayloadExternal: + payload := payload.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 64)) = int64(((payload).PayloadId).LowBits) + data49 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data49) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 1*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 72)) = uint32(uintptr(uintptr(data49))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + var result50 int32 + if (payload).ForcedCommit { + result50 = 1 + } else { + result50 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (72 + 2*4))) = int8(result50) + + case OplogEntryCancelled: + payload := (element).F1.Cancelled() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).StartIndex) + + switch (payload).Partial.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Partial.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case OplogPayloadInline: + payload := payload.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + data51 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data51) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 56)) = uint32(uintptr(uintptr(data51))) + + case OplogPayloadExternal: + payload := payload.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 64)) = int64(((payload).PayloadId).LowBits) + data52 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data52) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 1*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 72)) = uint32(uintptr(uintptr(data52))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case OplogEntryAgentInvocationStarted: + payload := (element).F1.AgentInvocationStarted() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf853 := unsafe.Pointer(unsafe.StringData((payload).IdempotencyKey)) + pinner.Pin(utf853) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).IdempotencyKey))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf853))) + + switch (payload).Payload.Tag() { + case OplogPayloadInline: + payload := (payload).Payload.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(0)) + data54 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data54) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = uint32(uintptr(uintptr(data54))) + + case OplogPayloadExternal: + payload := (payload).Payload.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4))) = int64(((payload).PayloadId).LowBits) + data55 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data55) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = uint32(uintptr(uintptr(data55))) + + default: + panic("unreachable") + } + utf856 := unsafe.Pointer(unsafe.StringData((payload).TraceId)) + pinner.Pin(utf856) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 5*4))) = uint32(uint32(len((payload).TraceId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 4*4))) = uint32(uintptr(uintptr(utf856))) + slice58 := (payload).TraceStates + length60 := uint32(len(slice58)) + result59 := witRuntime.Allocate(pinner, uintptr(length60*(2*4)), 4) + for index, element := range slice58 { + base := unsafe.Add(result59, index*(2*4)) + utf857 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf857) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf857))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 7*4))) = uint32(length60) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 6*4))) = uint32(uintptr(uintptr(result59))) + slice70 := (payload).InvocationContext + length72 := uint32(len(slice70)) + result71 := witRuntime.Allocate(pinner, uintptr(length72*(56+6*4)), 8) + for index, element := range slice70 { + base := unsafe.Add(result71, index*(56+6*4)) + + switch element.Tag() { + case SpanDataLocalSpan: + payload := element.LocalSpan() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf861 := unsafe.Pointer(unsafe.StringData((payload).SpanId)) + pinner.Pin(utf861) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).SpanId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf861))) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Start).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int32(((payload).Start).Nanoseconds) + + switch (payload).Parent.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Parent.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4))) = int8(int32(1)) + utf862 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf862) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = uint32(uintptr(uintptr(utf862))) + + default: + panic("unreachable") + } + + switch (payload).LinkedContext.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).LinkedContext.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))) = int64(payload) + + default: + panic("unreachable") + } + slice65 := (payload).Attributes + length67 := uint32(len(slice65)) + result66 := witRuntime.Allocate(pinner, uintptr(length67*(5*4)), 4) + for index, element := range slice65 { + base := unsafe.Add(result66, index*(5*4)) + utf863 := unsafe.Pointer(unsafe.StringData((element).Key)) + pinner.Pin(utf863) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Key))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf863))) + + switch (element).Value.Tag() { + case golem_api_context.AttributeValueString: + payload := (element).Value.String() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + utf864 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf864) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf864))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4))) = uint32(length67) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))) = uint32(uintptr(uintptr(result66))) + var result68 int32 + if (payload).Inherited { + result68 = 1 + } else { + result68 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = int8(result68) + + case SpanDataExternalSpan: + payload := element.ExternalSpan() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + utf869 := unsafe.Pointer(unsafe.StringData((payload).SpanId)) + pinner.Pin(utf869) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).SpanId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf869))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(length72) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = uint32(uintptr(uintptr(result71))) + + case OplogEntryAgentInvocationFinished: + payload := (element).F1.AgentInvocationFinished() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).Result.Tag() { + case OplogPayloadInline: + payload := (payload).Result.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + data73 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data73) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(data73))) + + case OplogPayloadExternal: + payload := (payload).Result.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64(((payload).PayloadId).LowBits) + data74 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data74) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 1*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 56)) = uint32(uintptr(uintptr(data74))) + + default: + panic("unreachable") + } + + switch (payload).MethodName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MethodName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = int8(int32(1)) + utf875 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf875) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4))) = uint32(uintptr(uintptr(utf875))) + + default: + panic("unreachable") + } + *(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 4*4))) = (payload).ConsumedFuel + *(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 4*4))) = int64((payload).ComponentRevision) + + case OplogEntrySuspend: + payload := (element).F1.Suspend() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(6)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + case OplogEntryError: + payload := (element).F1.Error() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(7)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).Error.Tag() { + case WorkerErrorUnknown: + payload := (payload).Error.Unknown() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + utf876 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf876) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf876))) + + case WorkerErrorInvalidRequest: + payload := (payload).Error.InvalidRequest() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + utf877 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf877) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf877))) + + case WorkerErrorStackOverflow: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + case WorkerErrorOutOfMemory: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(3)) + + case WorkerErrorExceededMemoryLimit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(4)) + + case WorkerErrorInternalError: + payload := (payload).Error.InternalError() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(5)) + utf878 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf878) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf878))) + + case WorkerErrorDeterministicTrap: + payload := (payload).Error.DeterministicTrap() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(6)) + utf879 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf879) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf879))) + + case WorkerErrorTransientError: + payload := (payload).Error.TransientError() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(7)) + utf880 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf880) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf880))) + + case WorkerErrorPermanentError: + payload := (payload).Error.PermanentError() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(8)) + utf881 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf881))) + + case WorkerErrorExceededTableLimit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(9)) + + case WorkerErrorExceededHttpCallLimit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(10)) + + case WorkerErrorExceededRpcCallLimit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(11)) + + case WorkerErrorNodeOutOfFilesystemStorage: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(12)) + + case WorkerErrorAgentExceededFilesystemStorageLimit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(13)) + + case WorkerErrorAgentTerminatedByQuota: + payload := (payload).Error.AgentTerminatedByQuota() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(14)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).EnvironmentId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64((((payload).EnvironmentId).Uuid).LowBits) + utf882 := unsafe.Pointer(unsafe.StringData((payload).ResourceName)) + pinner.Pin(utf882) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 1*4))) = uint32(uint32(len((payload).ResourceName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 56)) = uint32(uintptr(uintptr(utf882))) + + case WorkerErrorEphemeralSleepTooLong: + payload := (payload).Error.EphemeralSleepTooLong() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(15)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((payload).RequestedNanos) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64((payload).MaxNanos) + + case WorkerErrorEphemeralFuelExhausted: + payload := (payload).Error.EphemeralFuelExhausted() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(16)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((payload).OverdraftLimit) + + case WorkerErrorEphemeralCannotSuspend: + payload := (payload).Error.EphemeralCannotSuspend() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(17)) + utf883 := unsafe.Pointer(unsafe.StringData((payload).Reason)) + pinner.Pin(utf883) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len((payload).Reason))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf883))) + + case WorkerErrorReadOnlyViolation: + payload := (payload).Error.ReadOnlyViolation() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(18)) + utf884 := unsafe.Pointer(unsafe.StringData((payload).Method)) + pinner.Pin(utf884) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len((payload).Method))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf884))) + utf885 := unsafe.Pointer(unsafe.StringData((payload).HostFunction)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))) = uint32(uint32(len((payload).HostFunction))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = uint32(uintptr(uintptr(utf885))) + + default: + panic("unreachable") + } + *(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = int64((payload).RetryFrom) + var result86 int32 + if (payload).InsideAtomicRegion { + result86 = 1 + } else { + result86 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = int8(result86) + + switch (payload).RetryPolicyState.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (64 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).RetryPolicyState.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (64 + 3*4))) = int8(int32(1)) + slice88 := (payload).Nodes + length90 := uint32(len(slice88)) + result89 := witRuntime.Allocate(pinner, uintptr(length90*16), 4) + for index, element := range slice88 { + base := unsafe.Add(result89, index*16) + + switch element.Tag() { + case StateNodeCounter: + payload := element.Counter() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = int32(payload) + + case StateNodeTerminal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case StateNodeWrapper: + payload := element.Wrapper() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = payload + + case StateNodeCountBox: + payload := element.CountBox() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = int32((payload).Attempts) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + case StateNodeAndThen: + payload := element.AndThen() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (payload).Left + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Right + var result87 int32 + if (payload).OnRight { + result87 = 1 + } else { + result87 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(result87) + + case StateNodePair: + payload := element.Pair() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (payload).Left + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Right + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 5*4))) = uint32(length90) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 4*4))) = uint32(uintptr(uintptr(result89))) + + default: + panic("unreachable") + } + + case OplogEntryNoOp: + payload := (element).F1.NoOp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + case OplogEntryJump: + payload := (element).F1.Jump() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(9)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(((payload).Jump).Start) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(((payload).Jump).End) + + case OplogEntryInterrupted: + payload := (element).F1.Interrupted() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + case OplogEntryExited: + payload := (element).F1.Exited() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(11)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + case OplogEntryBeginAtomicRegion: + payload := (element).F1.BeginAtomicRegion() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(12)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + case OplogEntryEndAtomicRegion: + payload := (element).F1.EndAtomicRegion() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(13)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).BeginIndex) + + case OplogEntryPendingAgentInvocation: + payload := (element).F1.PendingAgentInvocation() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(14)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf891 := unsafe.Pointer(unsafe.StringData((payload).IdempotencyKey)) + pinner.Pin(utf891) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).IdempotencyKey))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf891))) + + switch (payload).Payload.Tag() { + case OplogPayloadInline: + payload := (payload).Payload.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(0)) + data92 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data92) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = uint32(uintptr(uintptr(data92))) + + case OplogPayloadExternal: + payload := (payload).Payload.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4))) = int64(((payload).PayloadId).LowBits) + data93 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data93) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = uint32(uintptr(uintptr(data93))) + + default: + panic("unreachable") + } + utf894 := unsafe.Pointer(unsafe.StringData((payload).TraceId)) + pinner.Pin(utf894) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 5*4))) = uint32(uint32(len((payload).TraceId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 4*4))) = uint32(uintptr(uintptr(utf894))) + slice96 := (payload).TraceStates + length98 := uint32(len(slice96)) + result97 := witRuntime.Allocate(pinner, uintptr(length98*(2*4)), 4) + for index, element := range slice96 { + base := unsafe.Add(result97, index*(2*4)) + utf895 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf895) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf895))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 7*4))) = uint32(length98) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 6*4))) = uint32(uintptr(uintptr(result97))) + slice108 := (payload).InvocationContext + length110 := uint32(len(slice108)) + result109 := witRuntime.Allocate(pinner, uintptr(length110*(56+6*4)), 8) + for index, element := range slice108 { + base := unsafe.Add(result109, index*(56+6*4)) + + switch element.Tag() { + case SpanDataLocalSpan: + payload := element.LocalSpan() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf899 := unsafe.Pointer(unsafe.StringData((payload).SpanId)) + pinner.Pin(utf899) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).SpanId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf899))) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Start).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int32(((payload).Start).Nanoseconds) + + switch (payload).Parent.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Parent.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4))) = int8(int32(1)) + utf8100 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8100) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = uint32(uintptr(uintptr(utf8100))) + + default: + panic("unreachable") + } + + switch (payload).LinkedContext.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).LinkedContext.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))) = int64(payload) + + default: + panic("unreachable") + } + slice103 := (payload).Attributes + length105 := uint32(len(slice103)) + result104 := witRuntime.Allocate(pinner, uintptr(length105*(5*4)), 4) + for index, element := range slice103 { + base := unsafe.Add(result104, index*(5*4)) + utf8101 := unsafe.Pointer(unsafe.StringData((element).Key)) + pinner.Pin(utf8101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Key))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8101))) + + switch (element).Value.Tag() { + case golem_api_context.AttributeValueString: + payload := (element).Value.String() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + utf8102 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8102) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8102))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4))) = uint32(length105) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))) = uint32(uintptr(uintptr(result104))) + var result106 int32 + if (payload).Inherited { + result106 = 1 + } else { + result106 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = int8(result106) + + case SpanDataExternalSpan: + payload := element.ExternalSpan() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + utf8107 := unsafe.Pointer(unsafe.StringData((payload).SpanId)) + pinner.Pin(utf8107) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).SpanId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8107))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(length110) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = uint32(uintptr(uintptr(result109))) + + case OplogEntryPendingUpdate: + payload := (element).F1.PendingUpdate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(15)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).Description.Tag() { + case RawUpdateDescriptionAutomatic: + payload := (payload).Description.Automatic() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(payload) + + case RawUpdateDescriptionSnapshotBased: + payload := (payload).Description.SnapshotBased() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((payload).TargetRevision) + + switch (payload).Payload.Tag() { + case OplogPayloadInline: + payload := (payload).Payload.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + data111 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data111) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 56)) = uint32(uintptr(uintptr(data111))) + + case OplogPayloadExternal: + payload := (payload).Payload.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 64)) = int64(((payload).PayloadId).LowBits) + data112 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 1*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 72)) = uint32(uintptr(uintptr(data112))) + + default: + panic("unreachable") + } + utf8113 := unsafe.Pointer(unsafe.StringData((payload).MimeType)) + pinner.Pin(utf8113) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 3*4))) = uint32(uint32(len((payload).MimeType))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 2*4))) = uint32(uintptr(uintptr(utf8113))) + + default: + panic("unreachable") + } + + case OplogEntrySuccessfulUpdate: + payload := (element).F1.SuccessfulUpdate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(16)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).TargetRevision) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((payload).NewComponentSize) + slice114 := (payload).NewActivePlugins + length116 := uint32(len(slice114)) + result115 := witRuntime.Allocate(pinner, uintptr(length116*16), 8) + for index, element := range slice114 { + base := unsafe.Add(result115, index*16) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 0)) = int64(((element).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(((element).Uuid).LowBits) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4))) = uint32(length116) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 48)) = uint32(uintptr(uintptr(result115))) + + case OplogEntryFailedUpdate: + payload := (element).F1.FailedUpdate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(17)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).TargetRevision) + + switch (payload).Details.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Details.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + utf8117 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8117) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uintptr(uintptr(utf8117))) + + default: + panic("unreachable") + } + + case OplogEntryGrowMemory: + payload := (element).F1.GrowMemory() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(18)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).Delta) + + case OplogEntryFilesystemStorageUsageUpdate: + payload := (element).F1.FilesystemStorageUsageUpdate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(19)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = (payload).Delta + + case OplogEntryCreateResource: + payload := (element).F1.CreateResource() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(20)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).Id) + utf8118 := unsafe.Pointer(unsafe.StringData(((payload).ResourceTypeId).Name)) + pinner.Pin(utf8118) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(((payload).ResourceTypeId).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf8118))) + utf8119 := unsafe.Pointer(unsafe.StringData(((payload).ResourceTypeId).Owner)) + pinner.Pin(utf8119) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))) = uint32(uint32(len(((payload).ResourceTypeId).Owner))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = uint32(uintptr(uintptr(utf8119))) + + case OplogEntryDropResource: + payload := (element).F1.DropResource() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(21)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).Id) + utf8120 := unsafe.Pointer(unsafe.StringData(((payload).ResourceTypeId).Name)) + pinner.Pin(utf8120) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(((payload).ResourceTypeId).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(utf8120))) + utf8121 := unsafe.Pointer(unsafe.StringData(((payload).ResourceTypeId).Owner)) + pinner.Pin(utf8121) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))) = uint32(uint32(len(((payload).ResourceTypeId).Owner))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = uint32(uintptr(uintptr(utf8121))) + + case OplogEntryLog: + payload := (element).F1.Log() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32((payload).Level)) + utf8122 := unsafe.Pointer(unsafe.StringData((payload).Context)) + pinner.Pin(utf8122) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = uint32(uint32(len((payload).Context))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uintptr(uintptr(utf8122))) + utf8123 := unsafe.Pointer(unsafe.StringData((payload).Message)) + pinner.Pin(utf8123) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = uint32(uint32(len((payload).Message))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))) = uint32(uintptr(uintptr(utf8123))) + + case OplogEntryRestart: + payload := (element).F1.Restart() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(23)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + case OplogEntryActivatePlugin: + payload := (element).F1.ActivatePlugin() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(24)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((((payload).PluginGrantId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).PluginGrantId).Uuid).LowBits) + + case OplogEntryDeactivatePlugin: + payload := (element).F1.DeactivatePlugin() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(25)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((((payload).PluginGrantId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).PluginGrantId).Uuid).LowBits) + + case OplogEntryRevert: + payload := (element).F1.Revert() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(26)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(((payload).DroppedRegion).Start) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(((payload).DroppedRegion).End) + + case OplogEntryCancelPendingInvocation: + payload := (element).F1.CancelPendingInvocation() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf8124 := unsafe.Pointer(unsafe.StringData((payload).IdempotencyKey)) + pinner.Pin(utf8124) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).IdempotencyKey))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf8124))) + + case OplogEntryStartSpan: + payload := (element).F1.StartSpan() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf8125 := unsafe.Pointer(unsafe.StringData((payload).SpanId)) + pinner.Pin(utf8125) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).SpanId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf8125))) + + switch (payload).Parent.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Parent.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(1)) + utf8126 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8126) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))) = uint32(uintptr(uintptr(utf8126))) + + default: + panic("unreachable") + } + + switch (payload).LinkedContextId.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).LinkedContextId.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4))) = int8(int32(1)) + utf8127 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8127) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = uint32(uintptr(uintptr(utf8127))) + + default: + panic("unreachable") + } + slice130 := (payload).Attributes + length132 := uint32(len(slice130)) + result131 := witRuntime.Allocate(pinner, uintptr(length132*(5*4)), 4) + for index, element := range slice130 { + base := unsafe.Add(result131, index*(5*4)) + utf8128 := unsafe.Pointer(unsafe.StringData((element).Key)) + pinner.Pin(utf8128) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Key))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8128))) + + switch (element).Value.Tag() { + case golem_api_context.AttributeValueString: + payload := (element).Value.String() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + utf8129 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8129) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8129))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4))) = uint32(length132) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4))) = uint32(uintptr(uintptr(result131))) + + case OplogEntryFinishSpan: + payload := (element).F1.FinishSpan() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf8133 := unsafe.Pointer(unsafe.StringData((payload).SpanId)) + pinner.Pin(utf8133) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).SpanId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf8133))) + + case OplogEntrySetSpanAttribute: + payload := (element).F1.SetSpanAttribute() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(30)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf8134 := unsafe.Pointer(unsafe.StringData((payload).SpanId)) + pinner.Pin(utf8134) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).SpanId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf8134))) + utf8135 := unsafe.Pointer(unsafe.StringData((payload).Key)) + pinner.Pin(utf8135) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))) = uint32(uint32(len((payload).Key))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = uint32(uintptr(uintptr(utf8135))) + + switch (payload).Value.Tag() { + case golem_api_context.AttributeValueString: + payload := (payload).Value.String() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = int8(int32(0)) + utf8136 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8136) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4))) = uint32(uintptr(uintptr(utf8136))) + + default: + panic("unreachable") + } + + case OplogEntryChangePersistenceLevel: + payload := (element).F1.ChangePersistenceLevel() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(31)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).PersistenceLevel.Tag() { + case golem_api_host.PersistenceLevelPersistNothing: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + + case golem_api_host.PersistenceLevelPersistRemoteSideEffects: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + + case golem_api_host.PersistenceLevelSmart: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case OplogEntryBeginRemoteTransaction: + payload := (element).F1.BeginRemoteTransaction() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(32)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf8137 := unsafe.Pointer(unsafe.StringData((payload).TransactionId)) + pinner.Pin(utf8137) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).TransactionId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf8137))) + + switch (payload).OriginalBeginIndex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).OriginalBeginIndex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))) = int64(payload) + + default: + panic("unreachable") + } + + case OplogEntryPreCommitRemoteTransaction: + payload := (element).F1.PreCommitRemoteTransaction() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(33)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).BeginIndex) + + case OplogEntryPreRollbackRemoteTransaction: + payload := (element).F1.PreRollbackRemoteTransaction() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).BeginIndex) + + case OplogEntryCommittedRemoteTransaction: + payload := (element).F1.CommittedRemoteTransaction() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(35)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).BeginIndex) + + case OplogEntryRolledBackRemoteTransaction: + payload := (element).F1.RolledBackRemoteTransaction() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(36)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).BeginIndex) + + case OplogEntrySnapshot: + payload := (element).F1.Snapshot() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(37)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).Data.Tag() { + case OplogPayloadInline: + payload := (payload).Data.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + data138 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data138) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)) = uint32(uintptr(uintptr(data138))) + + case OplogPayloadExternal: + payload := (payload).Data.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64(((payload).PayloadId).LowBits) + data139 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data139) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 1*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 56)) = uint32(uintptr(uintptr(data139))) + + default: + panic("unreachable") + } + utf8140 := unsafe.Pointer(unsafe.StringData((payload).MimeType)) + pinner.Pin(utf8140) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4))) = uint32(uint32(len((payload).MimeType))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))) = uint32(uintptr(uintptr(utf8140))) + + case OplogEntryOplogProcessorCheckpoint: + payload := (element).F1.OplogProcessorCheckpoint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(38)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((((payload).PluginGrantId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).PluginGrantId).Uuid).LowBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64(((((payload).TargetAgentId).ComponentId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(((((payload).TargetAgentId).ComponentId).Uuid).LowBits) + utf8141 := unsafe.Pointer(unsafe.StringData(((payload).TargetAgentId).AgentId)) + pinner.Pin(utf8141) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uint32(len(((payload).TargetAgentId).AgentId))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 64)) = uint32(uintptr(uintptr(utf8141))) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = int64((payload).ConfirmedUpTo) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 2*4))) = int64((payload).SendingUpTo) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 2*4))) = int64((payload).LastBatchStart) + + case OplogEntrySetRetryPolicy: + payload := (element).F1.SetRetryPolicy() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(39)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf8142 := unsafe.Pointer(unsafe.StringData(((payload).Policy).Name)) + pinner.Pin(utf8142) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len(((payload).Policy).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf8142))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))) = int32(((payload).Policy).Priority) + slice174 := (((payload).Policy).Predicate).Nodes + length176 := uint32(len(slice174)) + result175 := witRuntime.Allocate(pinner, uintptr(length176*(16+4*4)), 8) + for index, element := range slice174 { + base := unsafe.Add(result175, index*(16+4*4)) + + switch element.Tag() { + case golem_api_retry.PredicateNodePropEq: + payload := element.PropEq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8143 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8143) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8143))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8144 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8144) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8144))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result145 int32 + if payload { + result145 = 1 + } else { + result145 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result145) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropNeq: + payload := element.PropNeq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + utf8146 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8146) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8146))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8147 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8147) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8147))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result148 int32 + if payload { + result148 = 1 + } else { + result148 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result148) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropGt: + payload := element.PropGt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8149 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8149) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8149))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8150 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8150) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8150))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result151 int32 + if payload { + result151 = 1 + } else { + result151 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result151) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropGte: + payload := element.PropGte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8152 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8152) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8152))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8153 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8153) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8153))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result154 int32 + if payload { + result154 = 1 + } else { + result154 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result154) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropLt: + payload := element.PropLt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + utf8155 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8155) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8155))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8156 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8156) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8156))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result157 int32 + if payload { + result157 = 1 + } else { + result157 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result157) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropLte: + payload := element.PropLte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + utf8158 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8158) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8158))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8159 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8159) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8159))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result160 int32 + if payload { + result160 = 1 + } else { + result160 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result160) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropExists: + payload := element.PropExists() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf8161 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8161) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8161))) + + case golem_api_retry.PredicateNodePropIn: + payload := element.PropIn() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + utf8162 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8162) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8162))) + slice165 := (payload).Values + length167 := uint32(len(slice165)) + result166 := witRuntime.Allocate(pinner, uintptr(length167*(8+2*4)), 8) + for index, element := range slice165 { + base := unsafe.Add(result166, index*(8+2*4)) + + switch element.Tag() { + case golem_api_retry.PredicateValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8163 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8163) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8163))) + + case golem_api_retry.PredicateValueInteger: + payload := element.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + var result164 int32 + if payload { + result164 = 1 + } else { + result164 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result164) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length167) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result166))) + + case golem_api_retry.PredicateNodePropMatches: + payload := element.PropMatches() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf8168 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8168) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8168))) + utf8169 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf8169) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8169))) + + case golem_api_retry.PredicateNodePropStartsWith: + payload := element.PropStartsWith() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf8170 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8170) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8170))) + utf8171 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf8171) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8171))) + + case golem_api_retry.PredicateNodePropContains: + payload := element.PropContains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf8172 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8172) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8172))) + utf8173 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf8173) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8173))) + + case golem_api_retry.PredicateNodePredAnd: + payload := element.PredAnd() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case golem_api_retry.PredicateNodePredOr: + payload := element.PredOr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case golem_api_retry.PredicateNodePredNot: + payload := element.PredNot() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_api_retry.PredicateNodePredTrue: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + + case golem_api_retry.PredicateNodePredFalse: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))) = uint32(length176) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))) = uint32(uintptr(uintptr(result175))) + slice211 := (((payload).Policy).Policy).Nodes + length213 := uint32(len(slice211)) + result212 := witRuntime.Allocate(pinner, uintptr(length213*32), 8) + for index, element := range slice211 { + base := unsafe.Add(result212, index*32) + + switch element.Tag() { + case golem_api_retry.PolicyNodePeriodic: + payload := element.Periodic() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_api_retry.PolicyNodeExponential: + payload := element.Exponential() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).BaseDelay) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Factor + + case golem_api_retry.PolicyNodeFibonacci: + payload := element.Fibonacci() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).First) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).Second) + + case golem_api_retry.PolicyNodeImmediate: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + case golem_api_retry.PolicyNodeNever: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + case golem_api_retry.PolicyNodeCountBox: + payload := element.CountBox() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).MaxRetries) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Inner + + case golem_api_retry.PolicyNodeTimeBox: + payload := element.TimeBox() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).Limit) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Inner + + case golem_api_retry.PolicyNodeClampDelay: + payload := element.ClampDelay() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).MinDelay) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).MaxDelay) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Inner + + case golem_api_retry.PolicyNodeAddDelay: + payload := element.AddDelay() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).Delay) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Inner + + case golem_api_retry.PolicyNodeJitter: + payload := element.Jitter() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Factor + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Inner + + case golem_api_retry.PolicyNodeFilteredOn: + payload := element.FilteredOn() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + slice208 := ((payload).Predicate).Nodes + length210 := uint32(len(slice208)) + result209 := witRuntime.Allocate(pinner, uintptr(length210*(16+4*4)), 8) + for index, element := range slice208 { + base := unsafe.Add(result209, index*(16+4*4)) + + switch element.Tag() { + case golem_api_retry.PredicateNodePropEq: + payload := element.PropEq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8177 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8177) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8177))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8178 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8178) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8178))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result179 int32 + if payload { + result179 = 1 + } else { + result179 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result179) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropNeq: + payload := element.PropNeq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + utf8180 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8180) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8180))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8181 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8181) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8181))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result182 int32 + if payload { + result182 = 1 + } else { + result182 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result182) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropGt: + payload := element.PropGt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8183 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8183) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8183))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8184 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8184) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8184))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result185 int32 + if payload { + result185 = 1 + } else { + result185 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result185) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropGte: + payload := element.PropGte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8186 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8186) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8186))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8187 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8187) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8187))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result188 int32 + if payload { + result188 = 1 + } else { + result188 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result188) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropLt: + payload := element.PropLt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + utf8189 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8189) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8189))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8190 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8190) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8190))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result191 int32 + if payload { + result191 = 1 + } else { + result191 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result191) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropLte: + payload := element.PropLte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + utf8192 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8192) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8192))) + + switch (payload).Value.Tag() { + case golem_api_retry.PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf8193 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8193) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf8193))) + + case golem_api_retry.PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result194 int32 + if payload { + result194 = 1 + } else { + result194 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result194) + + default: + panic("unreachable") + } + + case golem_api_retry.PredicateNodePropExists: + payload := element.PropExists() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf8195 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8195) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8195))) + + case golem_api_retry.PredicateNodePropIn: + payload := element.PropIn() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + utf8196 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8196) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8196))) + slice199 := (payload).Values + length201 := uint32(len(slice199)) + result200 := witRuntime.Allocate(pinner, uintptr(length201*(8+2*4)), 8) + for index, element := range slice199 { + base := unsafe.Add(result200, index*(8+2*4)) + + switch element.Tag() { + case golem_api_retry.PredicateValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8197 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8197) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8197))) + + case golem_api_retry.PredicateValueInteger: + payload := element.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_api_retry.PredicateValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + var result198 int32 + if payload { + result198 = 1 + } else { + result198 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result198) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length201) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result200))) + + case golem_api_retry.PredicateNodePropMatches: + payload := element.PropMatches() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf8202 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8202) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8202))) + utf8203 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf8203) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8203))) + + case golem_api_retry.PredicateNodePropStartsWith: + payload := element.PropStartsWith() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf8204 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8204) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8204))) + utf8205 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf8205) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8205))) + + case golem_api_retry.PredicateNodePropContains: + payload := element.PropContains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf8206 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf8206) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8206))) + utf8207 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf8207) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8207))) + + case golem_api_retry.PredicateNodePredAnd: + payload := element.PredAnd() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case golem_api_retry.PredicateNodePredOr: + payload := element.PredOr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case golem_api_retry.PredicateNodePredNot: + payload := element.PredNot() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_api_retry.PredicateNodePredTrue: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + + case golem_api_retry.PredicateNodePredFalse: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length210) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result209))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Inner + + case golem_api_retry.PolicyNodeAndThen: + payload := element.AndThen() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case golem_api_retry.PolicyNodePolicyUnion: + payload := element.PolicyUnion() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case golem_api_retry.PolicyNodePolicyIntersect: + payload := element.PolicyIntersect() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = uint32(length213) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4))) = uint32(uintptr(uintptr(result212))) + + case OplogEntryRemoveRetryPolicy: + payload := (element).F1.RemoveRetryPolicy() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(40)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + utf8214 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf8214) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)) = uint32(uintptr(uintptr(utf8214))) + + case OplogEntryCardEventQueued: + payload := (element).F1.CardEventQueued() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(41)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).Event.Tag() { + case QueuedCardEventInstallTag: + payload := (payload).Event.Install() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).CardId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64((((payload).CardId).Uuid).LowBits) + + case QueuedCardEventRevokeTag: + payload := (payload).Event.Revoke() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).CardId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64((((payload).CardId).Uuid).LowBits) + + default: + panic("unreachable") + } + + case OplogEntryCardInstalled: + payload := (element).F1.CardInstalled() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(42)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + + switch (payload).QueuedEventIndex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).QueuedEventIndex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64(payload) + + default: + panic("unreachable") + } + data215 := unsafe.Pointer(unsafe.SliceData((payload).Card)) + pinner.Pin(data215) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4))) = uint32(uint32(len((payload).Card))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 48)) = uint32(uintptr(uintptr(data215))) + + case OplogEntryCardInstallFailed: + payload := (element).F1.CardInstallFailed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(43)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).QueuedEventIndex) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).CardId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64((((payload).CardId).Uuid).LowBits) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 56)) = int8(int32((payload).Reason)) + + case OplogEntryCardRevoked: + payload := (element).F1.CardRevoked() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(44)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).QueuedEventIndex) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).CardId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 48)) = int64((((payload).CardId).Uuid).LowBits) + + case OplogEntryCardExpired: + payload := (element).F1.CardExpired() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(45)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((((payload).CardId).Uuid).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 40)) = int64((((payload).CardId).Uuid).LowBits) + + case OplogEntryHostStreamFrame: + payload := (element).F1.HostStreamFrame() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(46)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).ParentStartIndex) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((payload).Kind)) + + switch (payload).Payload.Tag() { + case OplogPayloadInline: + payload := (payload).Payload.Inline() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + data216 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data216) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 56)) = uint32(uintptr(uintptr(data216))) + + case OplogPayloadExternal: + payload := (payload).Payload.External() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(((payload).PayloadId).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 64)) = int64(((payload).PayloadId).LowBits) + data217 := unsafe.Pointer(unsafe.SliceData((payload).Md5Hash)) + pinner.Pin(data217) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 1*4))) = uint32(uint32(len((payload).Md5Hash))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 72)) = uint32(uintptr(uintptr(data217))) + + default: + panic("unreachable") + } + + case OplogEntryCompletionDiscarded: + payload := (element).F1.CompletionDiscarded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(47)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = ((payload).Timestamp).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Timestamp).Nanoseconds) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64((payload).StartIndex) + + default: + panic("unreachable") + } + + } + + wasm_import_enrich_oplog_entries(int64(((environmentId).Uuid).HighBits), int64(((environmentId).Uuid).LowBits), int64((((agentId).ComponentId).Uuid).HighBits), int64((((agentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len((agentId).AgentId)), uintptr(result219), length220, int64(componentRevision), returnArea) + var result2696 witTypes.Result[[]PublicOplogEntry, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result2694 := make([]PublicOplogEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(168+10*4)) + var variant2693 PublicOplogEntry + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + result223 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))))), index*(4*4)) + value221 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result223 = append(result223, witTypes.Tuple2[string, string]{value221, value222}) + } + + var option witTypes.Option[golem_core_types.AgentId] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4)))) { + case 0: + + option = witTypes.None[golem_core_types.AgentId]() + case 1: + value224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (112 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (112 + 5*4)))) + + option = witTypes.Some[golem_core_types.AgentId](golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (96 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (104 + 4*4))))}}, value224}) + default: + panic("unreachable") + } + result230 := make([]PluginInstallationDescription, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 6*4))))), index*(24+6*4)) + value225 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + value226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4)))) + result229 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4))))), index*(4*4)) + value227 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result229 = append(result229, witTypes.Tuple2[string, string]{value227, value228}) + } + + result230 = append(result230, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value225, value226, result229}) + } + + result436 := make([]LocalAgentConfigEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 8*4))))), index*(10*4)) + result232 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(2*4)) + value231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result232 = append(result232, value231) + } + + result407 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))), index*(56+22*4)) + var variant395 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant395 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant395 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option238 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option238 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option233 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option233 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option233 = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option235 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option235 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant234 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant234 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant234 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant234 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option235 = witTypes.Some[golem_core_types.NumericBound](variant234) + default: + panic("unreachable") + } + var option237 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option237 = witTypes.None[string]() + case 1: + value236 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option237 = witTypes.Some[string](value236) + default: + panic("unreachable") + } + + option238 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option233, option235, option237}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyS8Type(option238) + + case 3: + var option245 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option245 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option240 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option240 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant239 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant239 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant239 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant239 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option240 = witTypes.Some[golem_core_types.NumericBound](variant239) + default: + panic("unreachable") + } + var option242 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option242 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant241 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant241 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant241 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant241 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option242 = witTypes.Some[golem_core_types.NumericBound](variant241) + default: + panic("unreachable") + } + var option244 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option244 = witTypes.None[string]() + case 1: + value243 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option244 = witTypes.Some[string](value243) + default: + panic("unreachable") + } + + option245 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option240, option242, option244}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyS16Type(option245) + + case 4: + var option252 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option252 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option247 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option247 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant246 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant246 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant246 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant246 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option247 = witTypes.Some[golem_core_types.NumericBound](variant246) + default: + panic("unreachable") + } + var option249 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option249 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant248 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant248 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant248 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant248 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option249 = witTypes.Some[golem_core_types.NumericBound](variant248) + default: + panic("unreachable") + } + var option251 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option251 = witTypes.None[string]() + case 1: + value250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option251 = witTypes.Some[string](value250) + default: + panic("unreachable") + } + + option252 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option247, option249, option251}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyS32Type(option252) + + case 5: + var option259 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option259 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option254 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option254 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant253 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant253 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant253 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant253 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option254 = witTypes.Some[golem_core_types.NumericBound](variant253) + default: + panic("unreachable") + } + var option256 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option256 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant255 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant255 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant255 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant255 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option256 = witTypes.Some[golem_core_types.NumericBound](variant255) + default: + panic("unreachable") + } + var option258 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option258 = witTypes.None[string]() + case 1: + value257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option258 = witTypes.Some[string](value257) + default: + panic("unreachable") + } + + option259 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option254, option256, option258}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyS64Type(option259) + + case 6: + var option266 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option266 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option261 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option261 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant260 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant260 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant260 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant260 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option261 = witTypes.Some[golem_core_types.NumericBound](variant260) + default: + panic("unreachable") + } + var option263 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option263 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant262 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant262 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant262 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant262 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option263 = witTypes.Some[golem_core_types.NumericBound](variant262) + default: + panic("unreachable") + } + var option265 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option265 = witTypes.None[string]() + case 1: + value264 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option265 = witTypes.Some[string](value264) + default: + panic("unreachable") + } + + option266 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option261, option263, option265}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyU8Type(option266) + + case 7: + var option273 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option273 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option268 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option268 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant267 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant267 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant267 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant267 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option268 = witTypes.Some[golem_core_types.NumericBound](variant267) + default: + panic("unreachable") + } + var option270 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option270 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant269 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant269 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant269 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant269 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option270 = witTypes.Some[golem_core_types.NumericBound](variant269) + default: + panic("unreachable") + } + var option272 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option272 = witTypes.None[string]() + case 1: + value271 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option272 = witTypes.Some[string](value271) + default: + panic("unreachable") + } + + option273 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option268, option270, option272}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyU16Type(option273) + + case 8: + var option280 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option280 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option275 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option275 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant274 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant274 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant274 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant274 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option275 = witTypes.Some[golem_core_types.NumericBound](variant274) + default: + panic("unreachable") + } + var option277 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option277 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant276 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant276 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant276 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant276 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option277 = witTypes.Some[golem_core_types.NumericBound](variant276) + default: + panic("unreachable") + } + var option279 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option279 = witTypes.None[string]() + case 1: + value278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option279 = witTypes.Some[string](value278) + default: + panic("unreachable") + } + + option280 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option275, option277, option279}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyU32Type(option280) + + case 9: + var option287 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option287 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option282 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option282 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant281 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant281 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant281 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant281 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option282 = witTypes.Some[golem_core_types.NumericBound](variant281) + default: + panic("unreachable") + } + var option284 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option284 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant283 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant283 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant283 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant283 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option284 = witTypes.Some[golem_core_types.NumericBound](variant283) + default: + panic("unreachable") + } + var option286 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option286 = witTypes.None[string]() + case 1: + value285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option286 = witTypes.Some[string](value285) + default: + panic("unreachable") + } + + option287 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option282, option284, option286}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyU64Type(option287) + + case 10: + var option294 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option294 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option289 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option289 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant288 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant288 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant288 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant288 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option289 = witTypes.Some[golem_core_types.NumericBound](variant288) + default: + panic("unreachable") + } + var option291 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option291 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant290 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant290 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant290 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant290 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option291 = witTypes.Some[golem_core_types.NumericBound](variant290) + default: + panic("unreachable") + } + var option293 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option293 = witTypes.None[string]() + case 1: + value292 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option293 = witTypes.Some[string](value292) + default: + panic("unreachable") + } + + option294 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option289, option291, option293}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyF32Type(option294) + + case 11: + var option301 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option301 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option296 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option296 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant295 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant295 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant295 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant295 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option296 = witTypes.Some[golem_core_types.NumericBound](variant295) + default: + panic("unreachable") + } + var option298 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option298 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant297 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant297 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant297 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant297 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option298 = witTypes.Some[golem_core_types.NumericBound](variant297) + default: + panic("unreachable") + } + var option300 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option300 = witTypes.None[string]() + case 1: + value299 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option300 = witTypes.Some[string](value299) + default: + panic("unreachable") + } + + option301 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option296, option298, option300}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyF64Type(option301) + + case 12: + + variant395 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant395 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result314 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value302 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option304 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option304 = witTypes.None[string]() + case 1: + value303 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option304 = witTypes.Some[string](value303) + default: + panic("unreachable") + } + result306 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value305 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result306 = append(result306, value305) + } + + result308 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value307 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result308 = append(result308, value307) + } + + var option310 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option310 = witTypes.None[string]() + case 1: + value309 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option310 = witTypes.Some[string](value309) + default: + panic("unreachable") + } + var option313 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option313 = witTypes.None[golem_core_types.Role]() + case 1: + var variant312 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant312 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant312 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant312 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value311 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant312 = golem_core_types.MakeRoleOther(value311) + + default: + panic("unreachable") + } + + option313 = witTypes.Some[golem_core_types.Role](variant312) + default: + panic("unreachable") + } + + result314 = append(result314, golem_core_types.NamedFieldType{value302, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option304, result306, result308, option310, option313}}) + } + + variant395 = golem_core_types.MakeSchemaTypeBodyRecordType(result314) + + case 15: + result328 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value315 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option316 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option316 = witTypes.None[int32]() + case 1: + + option316 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option318 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option318 = witTypes.None[string]() + case 1: + value317 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option318 = witTypes.Some[string](value317) + default: + panic("unreachable") + } + result320 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value319 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result320 = append(result320, value319) + } + + result322 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value321 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result322 = append(result322, value321) + } + + var option324 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option324 = witTypes.None[string]() + case 1: + value323 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option324 = witTypes.Some[string](value323) + default: + panic("unreachable") + } + var option327 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option327 = witTypes.None[golem_core_types.Role]() + case 1: + var variant326 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant326 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant326 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant326 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value325 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant326 = golem_core_types.MakeRoleOther(value325) + + default: + panic("unreachable") + } + + option327 = witTypes.Some[golem_core_types.Role](variant326) + default: + panic("unreachable") + } + + result328 = append(result328, golem_core_types.VariantCaseType{value315, option316, golem_core_types.MetadataEnvelope{option318, result320, result322, option324, option327}}) + } + + variant395 = golem_core_types.MakeSchemaTypeBodyVariantType(result328) + + case 16: + result330 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value329 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result330 = append(result330, value329) + } + + variant395 = golem_core_types.MakeSchemaTypeBodyEnumType(result330) + + case 17: + result332 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value331 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result332 = append(result332, value331) + } + + variant395 = golem_core_types.MakeSchemaTypeBodyFlagsType(result332) + + case 18: + result333 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result333 = append(result333, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant395 = golem_core_types.MakeSchemaTypeBodyTupleType(result333) + + case 19: + + variant395 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant395 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant395 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant395 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option334 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option334 = witTypes.None[int32]() + case 1: + + option334 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option335 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option335 = witTypes.None[int32]() + case 1: + + option335 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option334, option335}) + + case 24: + var option338 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option338 = witTypes.None[[]string]() + case 1: + result337 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value336 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result337 = append(result337, value336) + } + + option338 = witTypes.Some[[]string](result337) + default: + panic("unreachable") + } + var option339 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option339 = witTypes.None[uint32]() + case 1: + + option339 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option340 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option340 = witTypes.None[uint32]() + case 1: + + option340 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option342 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option342 = witTypes.None[string]() + case 1: + value341 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option342 = witTypes.Some[string](value341) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option338, option339, option340, option342}) + + case 25: + var option345 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option345 = witTypes.None[[]string]() + case 1: + result344 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value343 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result344 = append(result344, value343) + } + + option345 = witTypes.Some[[]string](result344) + default: + panic("unreachable") + } + var option346 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option346 = witTypes.None[uint32]() + case 1: + + option346 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option347 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option347 = witTypes.None[uint32]() + case 1: + + option347 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option345, option346, option347}) + + case 26: + var option350 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option350 = witTypes.None[[]string]() + case 1: + result349 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value348 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result349 = append(result349, value348) + } + + option350 = witTypes.Some[[]string](result349) + default: + panic("unreachable") + } + var option353 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option353 = witTypes.None[[]string]() + case 1: + result352 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result352 = append(result352, value351) + } + + option353 = witTypes.Some[[]string](result352) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option350, option353}) + + case 27: + var option356 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option356 = witTypes.None[[]string]() + case 1: + result355 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result355 = append(result355, value354) + } + + option356 = witTypes.Some[[]string](result355) + default: + panic("unreachable") + } + var option359 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option359 = witTypes.None[[]string]() + case 1: + result358 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value357 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result358 = append(result358, value357) + } + + option359 = witTypes.Some[[]string](result358) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option356, option359}) + + case 28: + + variant395 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant395 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value360 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result362 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value361 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result362 = append(result362, value361) + } + + var option364 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option364 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value363 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option364 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value363}) + default: + panic("unreachable") + } + var option366 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option366 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value365 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option366 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value365}) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value360, result362, option364, option366}) + + case 31: + result388 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value367 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant376 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value368 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant376 = golem_core_types.MakeDiscriminatorRulePrefix(value368) + + case 1: + value369 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant376 = golem_core_types.MakeDiscriminatorRuleSuffix(value369) + + case 2: + value370 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant376 = golem_core_types.MakeDiscriminatorRuleContains(value370) + + case 3: + value371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant376 = golem_core_types.MakeDiscriminatorRuleRegex(value371) + + case 4: + value372 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option374 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option374 = witTypes.None[string]() + case 1: + value373 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option374 = witTypes.Some[string](value373) + default: + panic("unreachable") + } + + variant376 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value372, option374}) + + case 5: + value375 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant376 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value375) + + default: + panic("unreachable") + } + var option378 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option378 = witTypes.None[string]() + case 1: + value377 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option378 = witTypes.Some[string](value377) + default: + panic("unreachable") + } + result380 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value379 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result380 = append(result380, value379) + } + + result382 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value381 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result382 = append(result382, value381) + } + + var option384 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option384 = witTypes.None[string]() + case 1: + value383 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option384 = witTypes.Some[string](value383) + default: + panic("unreachable") + } + var option387 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option387 = witTypes.None[golem_core_types.Role]() + case 1: + var variant386 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant386 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant386 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant386 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value385 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant386 = golem_core_types.MakeRoleOther(value385) + + default: + panic("unreachable") + } + + option387 = witTypes.Some[golem_core_types.Role](variant386) + default: + panic("unreachable") + } + + result388 = append(result388, golem_core_types.UnionBranch{value367, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant376, golem_core_types.MetadataEnvelope{option378, result380, result382, option384, option387}}) + } + + variant395 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result388}) + + case 32: + var option390 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option390 = witTypes.None[string]() + case 1: + value389 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option390 = witTypes.Some[string](value389) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option390}) + + case 33: + var option392 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option392 = witTypes.None[string]() + case 1: + value391 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option392 = witTypes.Some[string](value391) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option392}) + + case 34: + var option393 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option393 = witTypes.None[int32]() + case 1: + + option393 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyFutureType(option393) + + case 35: + var option394 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option394 = witTypes.None[int32]() + case 1: + + option394 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant395 = golem_core_types.MakeSchemaTypeBodyStreamType(option394) + + default: + panic("unreachable") + } + var option397 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option397 = witTypes.None[string]() + case 1: + value396 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option397 = witTypes.Some[string](value396) + default: + panic("unreachable") + } + result399 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value398 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result399 = append(result399, value398) + } + + result401 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value400 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result401 = append(result401, value400) + } + + var option403 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option403 = witTypes.None[string]() + case 1: + value402 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option403 = witTypes.Some[string](value402) + default: + panic("unreachable") + } + var option406 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option406 = witTypes.None[golem_core_types.Role]() + case 1: + var variant405 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant405 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant405 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant405 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value404 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant405 = golem_core_types.MakeRoleOther(value404) + + default: + panic("unreachable") + } + + option406 = witTypes.Some[golem_core_types.Role](variant405) + default: + panic("unreachable") + } + + result407 = append(result407, golem_core_types.SchemaTypeNode{variant395, golem_core_types.MetadataEnvelope{option397, result399, result401, option403, option406}}) + } + + result411 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))))), index*(6*4)) + value408 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option410 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option410 = witTypes.None[string]() + case 1: + value409 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option410 = witTypes.Some[string](value409) + default: + panic("unreachable") + } + + result411 = append(result411, golem_core_types.SchemaTypeDef{value408, option410, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result435 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(16+4*4)) + var variant434 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant434 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant434 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant434 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant434 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant434 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant434 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant434 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant434 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant434 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant434 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant434 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant434 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant434 = golem_core_types.MakeSchemaValueNodeStringValue(value412) + + case 13: + result413 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result413 = append(result413, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant434 = golem_core_types.MakeSchemaValueNodeRecordValue(result413) + + case 14: + var option414 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option414 = witTypes.None[int32]() + case 1: + + option414 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant434 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option414}) + + case 15: + + variant434 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result415 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result415 = append(result415, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant434 = golem_core_types.MakeSchemaValueNodeFlagsValue(result415) + + case 17: + result416 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result416 = append(result416, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant434 = golem_core_types.MakeSchemaValueNodeTupleValue(result416) + + case 18: + result417 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result417 = append(result417, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant434 = golem_core_types.MakeSchemaValueNodeListValue(result417) + + case 19: + result418 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result418 = append(result418, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant434 = golem_core_types.MakeSchemaValueNodeFixedListValue(result418) + + case 20: + result419 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result419 = append(result419, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant434 = golem_core_types.MakeSchemaValueNodeMapValue(result419) + + case 21: + var option420 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option420 = witTypes.None[int32]() + case 1: + + option420 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant434 = golem_core_types.MakeSchemaValueNodeOptionValue(option420) + + case 22: + var variant423 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option421 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option421 = witTypes.None[int32]() + case 1: + + option421 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant423 = golem_core_types.MakeResultValuePayloadOkValue(option421) + + case 1: + var option422 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option422 = witTypes.None[int32]() + case 1: + + option422 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant423 = golem_core_types.MakeResultValuePayloadErrValue(option422) + + default: + panic("unreachable") + } + + variant434 = golem_core_types.MakeSchemaValueNodeResultValue(variant423) + + case 23: + value424 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option426 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option426 = witTypes.None[string]() + case 1: + value425 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option426 = witTypes.Some[string](value425) + default: + panic("unreachable") + } + + variant434 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value424, option426}) + + case 24: + value427 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option429 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option429 = witTypes.None[string]() + case 1: + value428 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option429 = witTypes.Some[string](value428) + default: + panic("unreachable") + } + + variant434 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value427, option429}) + + case 25: + value430 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant434 = golem_core_types.MakeSchemaValueNodePathValue(value430) + + case 26: + value431 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant434 = golem_core_types.MakeSchemaValueNodeUrlValue(value431) + + case 27: + + variant434 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant434 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value432 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant434 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value432}) + + case 30: + value433 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant434 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value433, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant434 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant434 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result435 = append(result435, variant434) + } + + result436 = append(result436, LocalAgentConfigEntry{result232, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result407, result411, *(*int32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))}, golem_core_types.SchemaValueTree{result435, *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))}}}) + } + + var option437 witTypes.Option[golem_core_types.Uuid] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 10*4)))) { + case 0: + + option437 = witTypes.None[golem_core_types.Uuid]() + case 1: + + option437 = witTypes.Some[golem_core_types.Uuid](golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (136 + 10*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (144 + 10*4))))}) + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryCreate(CreateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, value}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4)))), result223, golem_core_types.AccountId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 4*4))))}}, golem_api_host.EnvironmentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))))}}, option, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (112 + 6*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (120 + 6*4)))), result230, result436, option437, golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (152 + 10*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (160 + 10*4))))}}) + + case 1: + var option438 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + option438 = witTypes.None[uint64]() + case 1: + + option438 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + default: + panic("unreachable") + } + value439 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + var option644 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) { + case 0: + + option644 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result615 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))))), index*(56+22*4)) + var variant603 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant603 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant603 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option446 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option446 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option441 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option441 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant440 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant440 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant440 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant440 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option441 = witTypes.Some[golem_core_types.NumericBound](variant440) + default: + panic("unreachable") + } + var option443 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option443 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant442 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant442 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant442 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant442 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option443 = witTypes.Some[golem_core_types.NumericBound](variant442) + default: + panic("unreachable") + } + var option445 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option445 = witTypes.None[string]() + case 1: + value444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option445 = witTypes.Some[string](value444) + default: + panic("unreachable") + } + + option446 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option441, option443, option445}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyS8Type(option446) + + case 3: + var option453 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option453 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option448 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option448 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant447 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant447 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant447 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant447 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option448 = witTypes.Some[golem_core_types.NumericBound](variant447) + default: + panic("unreachable") + } + var option450 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option450 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant449 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant449 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant449 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant449 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option450 = witTypes.Some[golem_core_types.NumericBound](variant449) + default: + panic("unreachable") + } + var option452 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option452 = witTypes.None[string]() + case 1: + value451 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option452 = witTypes.Some[string](value451) + default: + panic("unreachable") + } + + option453 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option448, option450, option452}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyS16Type(option453) + + case 4: + var option460 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option460 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option455 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option455 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant454 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant454 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant454 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant454 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option455 = witTypes.Some[golem_core_types.NumericBound](variant454) + default: + panic("unreachable") + } + var option457 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option457 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant456 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant456 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant456 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant456 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option457 = witTypes.Some[golem_core_types.NumericBound](variant456) + default: + panic("unreachable") + } + var option459 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option459 = witTypes.None[string]() + case 1: + value458 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option459 = witTypes.Some[string](value458) + default: + panic("unreachable") + } + + option460 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option455, option457, option459}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyS32Type(option460) + + case 5: + var option467 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option467 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option462 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option462 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant461 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant461 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant461 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant461 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option462 = witTypes.Some[golem_core_types.NumericBound](variant461) + default: + panic("unreachable") + } + var option464 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option464 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant463 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant463 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant463 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant463 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option464 = witTypes.Some[golem_core_types.NumericBound](variant463) + default: + panic("unreachable") + } + var option466 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option466 = witTypes.None[string]() + case 1: + value465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option466 = witTypes.Some[string](value465) + default: + panic("unreachable") + } + + option467 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option462, option464, option466}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyS64Type(option467) + + case 6: + var option474 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option474 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option469 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option469 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant468 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant468 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant468 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant468 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option469 = witTypes.Some[golem_core_types.NumericBound](variant468) + default: + panic("unreachable") + } + var option471 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option471 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant470 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant470 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant470 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant470 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option471 = witTypes.Some[golem_core_types.NumericBound](variant470) + default: + panic("unreachable") + } + var option473 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option473 = witTypes.None[string]() + case 1: + value472 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option473 = witTypes.Some[string](value472) + default: + panic("unreachable") + } + + option474 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option469, option471, option473}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyU8Type(option474) + + case 7: + var option481 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option481 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option476 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option476 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant475 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant475 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant475 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant475 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option476 = witTypes.Some[golem_core_types.NumericBound](variant475) + default: + panic("unreachable") + } + var option478 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option478 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant477 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant477 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant477 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant477 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option478 = witTypes.Some[golem_core_types.NumericBound](variant477) + default: + panic("unreachable") + } + var option480 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option480 = witTypes.None[string]() + case 1: + value479 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option480 = witTypes.Some[string](value479) + default: + panic("unreachable") + } + + option481 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option476, option478, option480}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyU16Type(option481) + + case 8: + var option488 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option488 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option483 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option483 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant482 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant482 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant482 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant482 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option483 = witTypes.Some[golem_core_types.NumericBound](variant482) + default: + panic("unreachable") + } + var option485 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option485 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant484 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant484 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant484 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant484 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option485 = witTypes.Some[golem_core_types.NumericBound](variant484) + default: + panic("unreachable") + } + var option487 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option487 = witTypes.None[string]() + case 1: + value486 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option487 = witTypes.Some[string](value486) + default: + panic("unreachable") + } + + option488 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option483, option485, option487}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyU32Type(option488) + + case 9: + var option495 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option495 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option490 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option490 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant489 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant489 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant489 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant489 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option490 = witTypes.Some[golem_core_types.NumericBound](variant489) + default: + panic("unreachable") + } + var option492 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option492 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant491 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant491 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant491 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant491 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option492 = witTypes.Some[golem_core_types.NumericBound](variant491) + default: + panic("unreachable") + } + var option494 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option494 = witTypes.None[string]() + case 1: + value493 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option494 = witTypes.Some[string](value493) + default: + panic("unreachable") + } + + option495 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option490, option492, option494}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyU64Type(option495) + + case 10: + var option502 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option502 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option497 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option497 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant496 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant496 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant496 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant496 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option497 = witTypes.Some[golem_core_types.NumericBound](variant496) + default: + panic("unreachable") + } + var option499 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option499 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant498 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant498 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant498 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant498 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option499 = witTypes.Some[golem_core_types.NumericBound](variant498) + default: + panic("unreachable") + } + var option501 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option501 = witTypes.None[string]() + case 1: + value500 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option501 = witTypes.Some[string](value500) + default: + panic("unreachable") + } + + option502 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option497, option499, option501}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyF32Type(option502) + + case 11: + var option509 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option509 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option504 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option504 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant503 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant503 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant503 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant503 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option504 = witTypes.Some[golem_core_types.NumericBound](variant503) + default: + panic("unreachable") + } + var option506 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option506 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant505 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant505 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant505 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant505 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option506 = witTypes.Some[golem_core_types.NumericBound](variant505) + default: + panic("unreachable") + } + var option508 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option508 = witTypes.None[string]() + case 1: + value507 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option508 = witTypes.Some[string](value507) + default: + panic("unreachable") + } + + option509 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option504, option506, option508}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyF64Type(option509) + + case 12: + + variant603 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant603 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result522 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value510 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option512 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option512 = witTypes.None[string]() + case 1: + value511 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option512 = witTypes.Some[string](value511) + default: + panic("unreachable") + } + result514 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value513 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result514 = append(result514, value513) + } + + result516 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value515 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result516 = append(result516, value515) + } + + var option518 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option518 = witTypes.None[string]() + case 1: + value517 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option518 = witTypes.Some[string](value517) + default: + panic("unreachable") + } + var option521 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option521 = witTypes.None[golem_core_types.Role]() + case 1: + var variant520 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant520 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant520 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant520 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value519 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant520 = golem_core_types.MakeRoleOther(value519) + + default: + panic("unreachable") + } + + option521 = witTypes.Some[golem_core_types.Role](variant520) + default: + panic("unreachable") + } + + result522 = append(result522, golem_core_types.NamedFieldType{value510, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option512, result514, result516, option518, option521}}) + } + + variant603 = golem_core_types.MakeSchemaTypeBodyRecordType(result522) + + case 15: + result536 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value523 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option524 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option524 = witTypes.None[int32]() + case 1: + + option524 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option526 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option526 = witTypes.None[string]() + case 1: + value525 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option526 = witTypes.Some[string](value525) + default: + panic("unreachable") + } + result528 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value527 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result528 = append(result528, value527) + } + + result530 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value529 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result530 = append(result530, value529) + } + + var option532 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option532 = witTypes.None[string]() + case 1: + value531 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option532 = witTypes.Some[string](value531) + default: + panic("unreachable") + } + var option535 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option535 = witTypes.None[golem_core_types.Role]() + case 1: + var variant534 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant534 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant534 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant534 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value533 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant534 = golem_core_types.MakeRoleOther(value533) + + default: + panic("unreachable") + } + + option535 = witTypes.Some[golem_core_types.Role](variant534) + default: + panic("unreachable") + } + + result536 = append(result536, golem_core_types.VariantCaseType{value523, option524, golem_core_types.MetadataEnvelope{option526, result528, result530, option532, option535}}) + } + + variant603 = golem_core_types.MakeSchemaTypeBodyVariantType(result536) + + case 16: + result538 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value537 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result538 = append(result538, value537) + } + + variant603 = golem_core_types.MakeSchemaTypeBodyEnumType(result538) + + case 17: + result540 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value539 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result540 = append(result540, value539) + } + + variant603 = golem_core_types.MakeSchemaTypeBodyFlagsType(result540) + + case 18: + result541 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result541 = append(result541, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant603 = golem_core_types.MakeSchemaTypeBodyTupleType(result541) + + case 19: + + variant603 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant603 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant603 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant603 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option542 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option542 = witTypes.None[int32]() + case 1: + + option542 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option543 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option543 = witTypes.None[int32]() + case 1: + + option543 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option542, option543}) + + case 24: + var option546 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option546 = witTypes.None[[]string]() + case 1: + result545 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value544 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result545 = append(result545, value544) + } + + option546 = witTypes.Some[[]string](result545) + default: + panic("unreachable") + } + var option547 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option547 = witTypes.None[uint32]() + case 1: + + option547 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option548 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option548 = witTypes.None[uint32]() + case 1: + + option548 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option550 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option550 = witTypes.None[string]() + case 1: + value549 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option550 = witTypes.Some[string](value549) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option546, option547, option548, option550}) + + case 25: + var option553 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option553 = witTypes.None[[]string]() + case 1: + result552 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value551 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result552 = append(result552, value551) + } + + option553 = witTypes.Some[[]string](result552) + default: + panic("unreachable") + } + var option554 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option554 = witTypes.None[uint32]() + case 1: + + option554 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option555 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option555 = witTypes.None[uint32]() + case 1: + + option555 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option553, option554, option555}) + + case 26: + var option558 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option558 = witTypes.None[[]string]() + case 1: + result557 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value556 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result557 = append(result557, value556) + } + + option558 = witTypes.Some[[]string](result557) + default: + panic("unreachable") + } + var option561 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option561 = witTypes.None[[]string]() + case 1: + result560 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value559 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result560 = append(result560, value559) + } + + option561 = witTypes.Some[[]string](result560) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option558, option561}) + + case 27: + var option564 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option564 = witTypes.None[[]string]() + case 1: + result563 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value562 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result563 = append(result563, value562) + } + + option564 = witTypes.Some[[]string](result563) + default: + panic("unreachable") + } + var option567 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option567 = witTypes.None[[]string]() + case 1: + result566 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value565 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result566 = append(result566, value565) + } + + option567 = witTypes.Some[[]string](result566) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option564, option567}) + + case 28: + + variant603 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant603 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value568 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result570 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value569 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result570 = append(result570, value569) + } + + var option572 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option572 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value571 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option572 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value571}) + default: + panic("unreachable") + } + var option574 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option574 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value573 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option574 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value573}) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value568, result570, option572, option574}) + + case 31: + result596 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value575 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant584 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value576 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant584 = golem_core_types.MakeDiscriminatorRulePrefix(value576) + + case 1: + value577 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant584 = golem_core_types.MakeDiscriminatorRuleSuffix(value577) + + case 2: + value578 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant584 = golem_core_types.MakeDiscriminatorRuleContains(value578) + + case 3: + value579 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant584 = golem_core_types.MakeDiscriminatorRuleRegex(value579) + + case 4: + value580 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option582 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option582 = witTypes.None[string]() + case 1: + value581 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option582 = witTypes.Some[string](value581) + default: + panic("unreachable") + } + + variant584 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value580, option582}) + + case 5: + value583 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant584 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value583) + + default: + panic("unreachable") + } + var option586 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option586 = witTypes.None[string]() + case 1: + value585 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option586 = witTypes.Some[string](value585) + default: + panic("unreachable") + } + result588 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value587 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result588 = append(result588, value587) + } + + result590 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value589 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result590 = append(result590, value589) + } + + var option592 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option592 = witTypes.None[string]() + case 1: + value591 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option592 = witTypes.Some[string](value591) + default: + panic("unreachable") + } + var option595 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option595 = witTypes.None[golem_core_types.Role]() + case 1: + var variant594 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant594 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant594 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant594 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value593 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant594 = golem_core_types.MakeRoleOther(value593) + + default: + panic("unreachable") + } + + option595 = witTypes.Some[golem_core_types.Role](variant594) + default: + panic("unreachable") + } + + result596 = append(result596, golem_core_types.UnionBranch{value575, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant584, golem_core_types.MetadataEnvelope{option586, result588, result590, option592, option595}}) + } + + variant603 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result596}) + + case 32: + var option598 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option598 = witTypes.None[string]() + case 1: + value597 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option598 = witTypes.Some[string](value597) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option598}) + + case 33: + var option600 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option600 = witTypes.None[string]() + case 1: + value599 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option600 = witTypes.Some[string](value599) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option600}) + + case 34: + var option601 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option601 = witTypes.None[int32]() + case 1: + + option601 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyFutureType(option601) + + case 35: + var option602 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option602 = witTypes.None[int32]() + case 1: + + option602 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant603 = golem_core_types.MakeSchemaTypeBodyStreamType(option602) + + default: + panic("unreachable") + } + var option605 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option605 = witTypes.None[string]() + case 1: + value604 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option605 = witTypes.Some[string](value604) + default: + panic("unreachable") + } + result607 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value606 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result607 = append(result607, value606) + } + + result609 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value608 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result609 = append(result609, value608) + } + + var option611 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option611 = witTypes.None[string]() + case 1: + value610 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option611 = witTypes.Some[string](value610) + default: + panic("unreachable") + } + var option614 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option614 = witTypes.None[golem_core_types.Role]() + case 1: + var variant613 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant613 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant613 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant613 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value612 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant613 = golem_core_types.MakeRoleOther(value612) + + default: + panic("unreachable") + } + + option614 = witTypes.Some[golem_core_types.Role](variant613) + default: + panic("unreachable") + } + + result615 = append(result615, golem_core_types.SchemaTypeNode{variant603, golem_core_types.MetadataEnvelope{option605, result607, result609, option611, option614}}) + } + + result619 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(6*4)) + value616 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option618 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option618 = witTypes.None[string]() + case 1: + value617 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option618 = witTypes.Some[string](value617) + default: + panic("unreachable") + } + + result619 = append(result619, golem_core_types.SchemaTypeDef{value616, option618, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result643 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4))))), index*(16+4*4)) + var variant642 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant642 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant642 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant642 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant642 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant642 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant642 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant642 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant642 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant642 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant642 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant642 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant642 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value620 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant642 = golem_core_types.MakeSchemaValueNodeStringValue(value620) + + case 13: + result621 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result621 = append(result621, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant642 = golem_core_types.MakeSchemaValueNodeRecordValue(result621) + + case 14: + var option622 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option622 = witTypes.None[int32]() + case 1: + + option622 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant642 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option622}) + + case 15: + + variant642 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result623 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result623 = append(result623, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant642 = golem_core_types.MakeSchemaValueNodeFlagsValue(result623) + + case 17: + result624 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result624 = append(result624, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant642 = golem_core_types.MakeSchemaValueNodeTupleValue(result624) + + case 18: + result625 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result625 = append(result625, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant642 = golem_core_types.MakeSchemaValueNodeListValue(result625) + + case 19: + result626 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result626 = append(result626, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant642 = golem_core_types.MakeSchemaValueNodeFixedListValue(result626) + + case 20: + result627 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result627 = append(result627, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant642 = golem_core_types.MakeSchemaValueNodeMapValue(result627) + + case 21: + var option628 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option628 = witTypes.None[int32]() + case 1: + + option628 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant642 = golem_core_types.MakeSchemaValueNodeOptionValue(option628) + + case 22: + var variant631 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option629 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option629 = witTypes.None[int32]() + case 1: + + option629 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant631 = golem_core_types.MakeResultValuePayloadOkValue(option629) + + case 1: + var option630 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option630 = witTypes.None[int32]() + case 1: + + option630 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant631 = golem_core_types.MakeResultValuePayloadErrValue(option630) + + default: + panic("unreachable") + } + + variant642 = golem_core_types.MakeSchemaValueNodeResultValue(variant631) + + case 23: + value632 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option634 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option634 = witTypes.None[string]() + case 1: + value633 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option634 = witTypes.Some[string](value633) + default: + panic("unreachable") + } + + variant642 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value632, option634}) + + case 24: + value635 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option637 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option637 = witTypes.None[string]() + case 1: + value636 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option637 = witTypes.Some[string](value636) + default: + panic("unreachable") + } + + variant642 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value635, option637}) + + case 25: + value638 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant642 = golem_core_types.MakeSchemaValueNodePathValue(value638) + + case 26: + value639 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant642 = golem_core_types.MakeSchemaValueNodeUrlValue(value639) + + case 27: + + variant642 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant642 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value640 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant642 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value640}) + + case 30: + value641 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant642 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value641, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant642 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant642 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result643 = append(result643, variant642) + } + + option644 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result615, result619, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))}, golem_core_types.SchemaValueTree{result643, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))}}) + default: + panic("unreachable") + } + var variant647 WrappedFunctionType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 10*4)))) { + case 0: + + variant647 = MakeWrappedFunctionTypeReadLocal() + + case 1: + + variant647 = MakeWrappedFunctionTypeWriteLocal() + + case 2: + + variant647 = MakeWrappedFunctionTypeReadRemote() + + case 3: + + variant647 = MakeWrappedFunctionTypeWriteRemote() + + case 4: + var option645 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) { + case 0: + + option645 = witTypes.None[uint64]() + case 1: + + option645 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 10*4))))) + default: + panic("unreachable") + } + + variant647 = MakeWrappedFunctionTypeWriteRemoteBatched(option645) + + case 5: + var option646 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) { + case 0: + + option646 = witTypes.None[uint64]() + case 1: + + option646 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 10*4))))) + default: + panic("unreachable") + } + + variant647 = MakeWrappedFunctionTypeWriteRemoteTransaction(option646) + + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryStart(StartParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, option438, value439, option644, variant647}) + + case 2: + var option852 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option852 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result823 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant811 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant811 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant811 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option654 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option654 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option649 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option649 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant648 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant648 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant648 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant648 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option649 = witTypes.Some[golem_core_types.NumericBound](variant648) + default: + panic("unreachable") + } + var option651 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option651 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant650 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant650 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant650 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant650 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option651 = witTypes.Some[golem_core_types.NumericBound](variant650) + default: + panic("unreachable") + } + var option653 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option653 = witTypes.None[string]() + case 1: + value652 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option653 = witTypes.Some[string](value652) + default: + panic("unreachable") + } + + option654 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option649, option651, option653}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyS8Type(option654) + + case 3: + var option661 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option661 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option656 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option656 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant655 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant655 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant655 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant655 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option656 = witTypes.Some[golem_core_types.NumericBound](variant655) + default: + panic("unreachable") + } + var option658 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option658 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant657 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant657 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant657 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant657 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option658 = witTypes.Some[golem_core_types.NumericBound](variant657) + default: + panic("unreachable") + } + var option660 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option660 = witTypes.None[string]() + case 1: + value659 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option660 = witTypes.Some[string](value659) + default: + panic("unreachable") + } + + option661 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option656, option658, option660}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyS16Type(option661) + + case 4: + var option668 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option668 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option663 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option663 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant662 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant662 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant662 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant662 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option663 = witTypes.Some[golem_core_types.NumericBound](variant662) + default: + panic("unreachable") + } + var option665 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option665 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant664 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant664 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant664 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant664 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option665 = witTypes.Some[golem_core_types.NumericBound](variant664) + default: + panic("unreachable") + } + var option667 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option667 = witTypes.None[string]() + case 1: + value666 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option667 = witTypes.Some[string](value666) + default: + panic("unreachable") + } + + option668 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option663, option665, option667}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyS32Type(option668) + + case 5: + var option675 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option675 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option670 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option670 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant669 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant669 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant669 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant669 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option670 = witTypes.Some[golem_core_types.NumericBound](variant669) + default: + panic("unreachable") + } + var option672 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option672 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant671 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant671 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant671 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant671 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option672 = witTypes.Some[golem_core_types.NumericBound](variant671) + default: + panic("unreachable") + } + var option674 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option674 = witTypes.None[string]() + case 1: + value673 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option674 = witTypes.Some[string](value673) + default: + panic("unreachable") + } + + option675 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option670, option672, option674}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyS64Type(option675) + + case 6: + var option682 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option682 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option677 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option677 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant676 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant676 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant676 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant676 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option677 = witTypes.Some[golem_core_types.NumericBound](variant676) + default: + panic("unreachable") + } + var option679 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option679 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant678 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant678 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant678 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant678 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option679 = witTypes.Some[golem_core_types.NumericBound](variant678) + default: + panic("unreachable") + } + var option681 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option681 = witTypes.None[string]() + case 1: + value680 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option681 = witTypes.Some[string](value680) + default: + panic("unreachable") + } + + option682 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option677, option679, option681}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyU8Type(option682) + + case 7: + var option689 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option689 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option684 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option684 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant683 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant683 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant683 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant683 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option684 = witTypes.Some[golem_core_types.NumericBound](variant683) + default: + panic("unreachable") + } + var option686 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option686 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant685 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant685 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant685 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant685 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option686 = witTypes.Some[golem_core_types.NumericBound](variant685) + default: + panic("unreachable") + } + var option688 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option688 = witTypes.None[string]() + case 1: + value687 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option688 = witTypes.Some[string](value687) + default: + panic("unreachable") + } + + option689 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option684, option686, option688}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyU16Type(option689) + + case 8: + var option696 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option696 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option691 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option691 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant690 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant690 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant690 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant690 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option691 = witTypes.Some[golem_core_types.NumericBound](variant690) + default: + panic("unreachable") + } + var option693 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option693 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant692 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant692 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant692 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant692 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option693 = witTypes.Some[golem_core_types.NumericBound](variant692) + default: + panic("unreachable") + } + var option695 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option695 = witTypes.None[string]() + case 1: + value694 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option695 = witTypes.Some[string](value694) + default: + panic("unreachable") + } + + option696 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option691, option693, option695}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyU32Type(option696) + + case 9: + var option703 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option703 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option698 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option698 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant697 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant697 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant697 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant697 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option698 = witTypes.Some[golem_core_types.NumericBound](variant697) + default: + panic("unreachable") + } + var option700 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option700 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant699 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant699 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant699 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant699 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option700 = witTypes.Some[golem_core_types.NumericBound](variant699) + default: + panic("unreachable") + } + var option702 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option702 = witTypes.None[string]() + case 1: + value701 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option702 = witTypes.Some[string](value701) + default: + panic("unreachable") + } + + option703 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option698, option700, option702}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyU64Type(option703) + + case 10: + var option710 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option710 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option705 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option705 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant704 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant704 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant704 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant704 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option705 = witTypes.Some[golem_core_types.NumericBound](variant704) + default: + panic("unreachable") + } + var option707 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option707 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant706 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant706 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant706 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant706 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option707 = witTypes.Some[golem_core_types.NumericBound](variant706) + default: + panic("unreachable") + } + var option709 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option709 = witTypes.None[string]() + case 1: + value708 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option709 = witTypes.Some[string](value708) + default: + panic("unreachable") + } + + option710 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option705, option707, option709}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyF32Type(option710) + + case 11: + var option717 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option717 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option712 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option712 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant711 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant711 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant711 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant711 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option712 = witTypes.Some[golem_core_types.NumericBound](variant711) + default: + panic("unreachable") + } + var option714 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option714 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant713 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant713 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant713 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant713 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option714 = witTypes.Some[golem_core_types.NumericBound](variant713) + default: + panic("unreachable") + } + var option716 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option716 = witTypes.None[string]() + case 1: + value715 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option716 = witTypes.Some[string](value715) + default: + panic("unreachable") + } + + option717 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option712, option714, option716}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyF64Type(option717) + + case 12: + + variant811 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant811 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result730 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value718 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option720 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option720 = witTypes.None[string]() + case 1: + value719 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option720 = witTypes.Some[string](value719) + default: + panic("unreachable") + } + result722 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value721 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result722 = append(result722, value721) + } + + result724 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value723 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result724 = append(result724, value723) + } + + var option726 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option726 = witTypes.None[string]() + case 1: + value725 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option726 = witTypes.Some[string](value725) + default: + panic("unreachable") + } + var option729 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option729 = witTypes.None[golem_core_types.Role]() + case 1: + var variant728 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant728 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant728 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant728 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value727 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant728 = golem_core_types.MakeRoleOther(value727) + + default: + panic("unreachable") + } + + option729 = witTypes.Some[golem_core_types.Role](variant728) + default: + panic("unreachable") + } + + result730 = append(result730, golem_core_types.NamedFieldType{value718, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option720, result722, result724, option726, option729}}) + } + + variant811 = golem_core_types.MakeSchemaTypeBodyRecordType(result730) + + case 15: + result744 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value731 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option732 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option732 = witTypes.None[int32]() + case 1: + + option732 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option734 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option734 = witTypes.None[string]() + case 1: + value733 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option734 = witTypes.Some[string](value733) + default: + panic("unreachable") + } + result736 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value735 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result736 = append(result736, value735) + } + + result738 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value737 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result738 = append(result738, value737) + } + + var option740 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option740 = witTypes.None[string]() + case 1: + value739 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option740 = witTypes.Some[string](value739) + default: + panic("unreachable") + } + var option743 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option743 = witTypes.None[golem_core_types.Role]() + case 1: + var variant742 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant742 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant742 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant742 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value741 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant742 = golem_core_types.MakeRoleOther(value741) + + default: + panic("unreachable") + } + + option743 = witTypes.Some[golem_core_types.Role](variant742) + default: + panic("unreachable") + } + + result744 = append(result744, golem_core_types.VariantCaseType{value731, option732, golem_core_types.MetadataEnvelope{option734, result736, result738, option740, option743}}) + } + + variant811 = golem_core_types.MakeSchemaTypeBodyVariantType(result744) + + case 16: + result746 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value745 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result746 = append(result746, value745) + } + + variant811 = golem_core_types.MakeSchemaTypeBodyEnumType(result746) + + case 17: + result748 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value747 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result748 = append(result748, value747) + } + + variant811 = golem_core_types.MakeSchemaTypeBodyFlagsType(result748) + + case 18: + result749 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result749 = append(result749, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant811 = golem_core_types.MakeSchemaTypeBodyTupleType(result749) + + case 19: + + variant811 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant811 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant811 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant811 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option750 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option750 = witTypes.None[int32]() + case 1: + + option750 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option751 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option751 = witTypes.None[int32]() + case 1: + + option751 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option750, option751}) + + case 24: + var option754 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option754 = witTypes.None[[]string]() + case 1: + result753 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value752 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result753 = append(result753, value752) + } + + option754 = witTypes.Some[[]string](result753) + default: + panic("unreachable") + } + var option755 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option755 = witTypes.None[uint32]() + case 1: + + option755 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option756 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option756 = witTypes.None[uint32]() + case 1: + + option756 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option758 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option758 = witTypes.None[string]() + case 1: + value757 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option758 = witTypes.Some[string](value757) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option754, option755, option756, option758}) + + case 25: + var option761 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option761 = witTypes.None[[]string]() + case 1: + result760 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value759 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result760 = append(result760, value759) + } + + option761 = witTypes.Some[[]string](result760) + default: + panic("unreachable") + } + var option762 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option762 = witTypes.None[uint32]() + case 1: + + option762 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option763 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option763 = witTypes.None[uint32]() + case 1: + + option763 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option761, option762, option763}) + + case 26: + var option766 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option766 = witTypes.None[[]string]() + case 1: + result765 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value764 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result765 = append(result765, value764) + } + + option766 = witTypes.Some[[]string](result765) + default: + panic("unreachable") + } + var option769 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option769 = witTypes.None[[]string]() + case 1: + result768 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value767 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result768 = append(result768, value767) + } + + option769 = witTypes.Some[[]string](result768) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option766, option769}) + + case 27: + var option772 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option772 = witTypes.None[[]string]() + case 1: + result771 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value770 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result771 = append(result771, value770) + } + + option772 = witTypes.Some[[]string](result771) + default: + panic("unreachable") + } + var option775 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option775 = witTypes.None[[]string]() + case 1: + result774 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value773 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result774 = append(result774, value773) + } + + option775 = witTypes.Some[[]string](result774) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option772, option775}) + + case 28: + + variant811 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant811 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value776 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result778 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value777 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result778 = append(result778, value777) + } + + var option780 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option780 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value779 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option780 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value779}) + default: + panic("unreachable") + } + var option782 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option782 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value781 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option782 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value781}) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value776, result778, option780, option782}) + + case 31: + result804 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value783 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant792 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value784 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant792 = golem_core_types.MakeDiscriminatorRulePrefix(value784) + + case 1: + value785 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant792 = golem_core_types.MakeDiscriminatorRuleSuffix(value785) + + case 2: + value786 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant792 = golem_core_types.MakeDiscriminatorRuleContains(value786) + + case 3: + value787 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant792 = golem_core_types.MakeDiscriminatorRuleRegex(value787) + + case 4: + value788 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option790 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option790 = witTypes.None[string]() + case 1: + value789 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option790 = witTypes.Some[string](value789) + default: + panic("unreachable") + } + + variant792 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value788, option790}) + + case 5: + value791 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant792 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value791) + + default: + panic("unreachable") + } + var option794 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option794 = witTypes.None[string]() + case 1: + value793 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option794 = witTypes.Some[string](value793) + default: + panic("unreachable") + } + result796 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value795 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result796 = append(result796, value795) + } + + result798 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value797 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result798 = append(result798, value797) + } + + var option800 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option800 = witTypes.None[string]() + case 1: + value799 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option800 = witTypes.Some[string](value799) + default: + panic("unreachable") + } + var option803 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option803 = witTypes.None[golem_core_types.Role]() + case 1: + var variant802 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant802 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant802 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant802 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value801 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant802 = golem_core_types.MakeRoleOther(value801) + + default: + panic("unreachable") + } + + option803 = witTypes.Some[golem_core_types.Role](variant802) + default: + panic("unreachable") + } + + result804 = append(result804, golem_core_types.UnionBranch{value783, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant792, golem_core_types.MetadataEnvelope{option794, result796, result798, option800, option803}}) + } + + variant811 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result804}) + + case 32: + var option806 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option806 = witTypes.None[string]() + case 1: + value805 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option806 = witTypes.Some[string](value805) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option806}) + + case 33: + var option808 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option808 = witTypes.None[string]() + case 1: + value807 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option808 = witTypes.Some[string](value807) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option808}) + + case 34: + var option809 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option809 = witTypes.None[int32]() + case 1: + + option809 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyFutureType(option809) + + case 35: + var option810 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option810 = witTypes.None[int32]() + case 1: + + option810 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant811 = golem_core_types.MakeSchemaTypeBodyStreamType(option810) + + default: + panic("unreachable") + } + var option813 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option813 = witTypes.None[string]() + case 1: + value812 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option813 = witTypes.Some[string](value812) + default: + panic("unreachable") + } + result815 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value814 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result815 = append(result815, value814) + } + + result817 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value816 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result817 = append(result817, value816) + } + + var option819 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option819 = witTypes.None[string]() + case 1: + value818 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option819 = witTypes.Some[string](value818) + default: + panic("unreachable") + } + var option822 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option822 = witTypes.None[golem_core_types.Role]() + case 1: + var variant821 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant821 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant821 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant821 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value820 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant821 = golem_core_types.MakeRoleOther(value820) + + default: + panic("unreachable") + } + + option822 = witTypes.Some[golem_core_types.Role](variant821) + default: + panic("unreachable") + } + + result823 = append(result823, golem_core_types.SchemaTypeNode{variant811, golem_core_types.MetadataEnvelope{option813, result815, result817, option819, option822}}) + } + + result827 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value824 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option826 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option826 = witTypes.None[string]() + case 1: + value825 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option826 = witTypes.Some[string](value825) + default: + panic("unreachable") + } + + result827 = append(result827, golem_core_types.SchemaTypeDef{value824, option826, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result851 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant850 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant850 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant850 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant850 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant850 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant850 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant850 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant850 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant850 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant850 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant850 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant850 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant850 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value828 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant850 = golem_core_types.MakeSchemaValueNodeStringValue(value828) + + case 13: + result829 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result829 = append(result829, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant850 = golem_core_types.MakeSchemaValueNodeRecordValue(result829) + + case 14: + var option830 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option830 = witTypes.None[int32]() + case 1: + + option830 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant850 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option830}) + + case 15: + + variant850 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result831 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result831 = append(result831, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant850 = golem_core_types.MakeSchemaValueNodeFlagsValue(result831) + + case 17: + result832 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result832 = append(result832, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant850 = golem_core_types.MakeSchemaValueNodeTupleValue(result832) + + case 18: + result833 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result833 = append(result833, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant850 = golem_core_types.MakeSchemaValueNodeListValue(result833) + + case 19: + result834 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result834 = append(result834, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant850 = golem_core_types.MakeSchemaValueNodeFixedListValue(result834) + + case 20: + result835 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result835 = append(result835, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant850 = golem_core_types.MakeSchemaValueNodeMapValue(result835) + + case 21: + var option836 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option836 = witTypes.None[int32]() + case 1: + + option836 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant850 = golem_core_types.MakeSchemaValueNodeOptionValue(option836) + + case 22: + var variant839 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option837 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option837 = witTypes.None[int32]() + case 1: + + option837 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant839 = golem_core_types.MakeResultValuePayloadOkValue(option837) + + case 1: + var option838 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option838 = witTypes.None[int32]() + case 1: + + option838 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant839 = golem_core_types.MakeResultValuePayloadErrValue(option838) + + default: + panic("unreachable") + } + + variant850 = golem_core_types.MakeSchemaValueNodeResultValue(variant839) + + case 23: + value840 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option842 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option842 = witTypes.None[string]() + case 1: + value841 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option842 = witTypes.Some[string](value841) + default: + panic("unreachable") + } + + variant850 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value840, option842}) + + case 24: + value843 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option845 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option845 = witTypes.None[string]() + case 1: + value844 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option845 = witTypes.Some[string](value844) + default: + panic("unreachable") + } + + variant850 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value843, option845}) + + case 25: + value846 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant850 = golem_core_types.MakeSchemaValueNodePathValue(value846) + + case 26: + value847 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant850 = golem_core_types.MakeSchemaValueNodeUrlValue(value847) + + case 27: + + variant850 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant850 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value848 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant850 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value848}) + + case 30: + value849 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant850 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value849, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant850 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant850 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result851 = append(result851, variant850) + } + + option852 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result823, result827, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result851, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}) + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryEnd(EndParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), option852, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))) != 0)}) + + case 3: + var option1057 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option1057 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result1028 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant1016 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1016 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1016 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option859 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option859 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option854 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option854 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant853 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant853 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant853 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant853 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option854 = witTypes.Some[golem_core_types.NumericBound](variant853) + default: + panic("unreachable") + } + var option856 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option856 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant855 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant855 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant855 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant855 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option856 = witTypes.Some[golem_core_types.NumericBound](variant855) + default: + panic("unreachable") + } + var option858 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option858 = witTypes.None[string]() + case 1: + value857 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option858 = witTypes.Some[string](value857) + default: + panic("unreachable") + } + + option859 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option854, option856, option858}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyS8Type(option859) + + case 3: + var option866 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option866 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option861 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option861 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant860 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant860 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant860 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant860 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option861 = witTypes.Some[golem_core_types.NumericBound](variant860) + default: + panic("unreachable") + } + var option863 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option863 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant862 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant862 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant862 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant862 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option863 = witTypes.Some[golem_core_types.NumericBound](variant862) + default: + panic("unreachable") + } + var option865 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option865 = witTypes.None[string]() + case 1: + value864 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option865 = witTypes.Some[string](value864) + default: + panic("unreachable") + } + + option866 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option861, option863, option865}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyS16Type(option866) + + case 4: + var option873 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option873 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option868 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option868 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant867 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant867 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant867 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant867 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option868 = witTypes.Some[golem_core_types.NumericBound](variant867) + default: + panic("unreachable") + } + var option870 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option870 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant869 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant869 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant869 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant869 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option870 = witTypes.Some[golem_core_types.NumericBound](variant869) + default: + panic("unreachable") + } + var option872 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option872 = witTypes.None[string]() + case 1: + value871 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option872 = witTypes.Some[string](value871) + default: + panic("unreachable") + } + + option873 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option868, option870, option872}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyS32Type(option873) + + case 5: + var option880 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option880 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option875 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option875 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant874 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant874 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant874 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant874 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option875 = witTypes.Some[golem_core_types.NumericBound](variant874) + default: + panic("unreachable") + } + var option877 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option877 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant876 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant876 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant876 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant876 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option877 = witTypes.Some[golem_core_types.NumericBound](variant876) + default: + panic("unreachable") + } + var option879 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option879 = witTypes.None[string]() + case 1: + value878 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option879 = witTypes.Some[string](value878) + default: + panic("unreachable") + } + + option880 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option875, option877, option879}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyS64Type(option880) + + case 6: + var option887 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option887 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option882 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option882 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant881 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant881 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant881 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant881 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option882 = witTypes.Some[golem_core_types.NumericBound](variant881) + default: + panic("unreachable") + } + var option884 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option884 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant883 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant883 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant883 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant883 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option884 = witTypes.Some[golem_core_types.NumericBound](variant883) + default: + panic("unreachable") + } + var option886 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option886 = witTypes.None[string]() + case 1: + value885 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option886 = witTypes.Some[string](value885) + default: + panic("unreachable") + } + + option887 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option882, option884, option886}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyU8Type(option887) + + case 7: + var option894 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option894 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option889 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option889 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant888 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant888 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant888 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant888 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option889 = witTypes.Some[golem_core_types.NumericBound](variant888) + default: + panic("unreachable") + } + var option891 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option891 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant890 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant890 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant890 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant890 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option891 = witTypes.Some[golem_core_types.NumericBound](variant890) + default: + panic("unreachable") + } + var option893 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option893 = witTypes.None[string]() + case 1: + value892 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option893 = witTypes.Some[string](value892) + default: + panic("unreachable") + } + + option894 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option889, option891, option893}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyU16Type(option894) + + case 8: + var option901 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option901 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option896 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option896 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant895 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant895 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant895 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant895 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option896 = witTypes.Some[golem_core_types.NumericBound](variant895) + default: + panic("unreachable") + } + var option898 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option898 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant897 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant897 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant897 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant897 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option898 = witTypes.Some[golem_core_types.NumericBound](variant897) + default: + panic("unreachable") + } + var option900 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option900 = witTypes.None[string]() + case 1: + value899 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option900 = witTypes.Some[string](value899) + default: + panic("unreachable") + } + + option901 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option896, option898, option900}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyU32Type(option901) + + case 9: + var option908 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option908 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option903 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option903 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant902 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant902 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant902 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant902 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option903 = witTypes.Some[golem_core_types.NumericBound](variant902) + default: + panic("unreachable") + } + var option905 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option905 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant904 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant904 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant904 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant904 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option905 = witTypes.Some[golem_core_types.NumericBound](variant904) + default: + panic("unreachable") + } + var option907 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option907 = witTypes.None[string]() + case 1: + value906 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option907 = witTypes.Some[string](value906) + default: + panic("unreachable") + } + + option908 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option903, option905, option907}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyU64Type(option908) + + case 10: + var option915 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option915 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option910 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option910 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant909 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant909 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant909 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant909 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option910 = witTypes.Some[golem_core_types.NumericBound](variant909) + default: + panic("unreachable") + } + var option912 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option912 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant911 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant911 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant911 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant911 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option912 = witTypes.Some[golem_core_types.NumericBound](variant911) + default: + panic("unreachable") + } + var option914 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option914 = witTypes.None[string]() + case 1: + value913 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option914 = witTypes.Some[string](value913) + default: + panic("unreachable") + } + + option915 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option910, option912, option914}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyF32Type(option915) + + case 11: + var option922 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option922 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option917 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option917 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant916 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant916 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant916 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant916 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option917 = witTypes.Some[golem_core_types.NumericBound](variant916) + default: + panic("unreachable") + } + var option919 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option919 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant918 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant918 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant918 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant918 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option919 = witTypes.Some[golem_core_types.NumericBound](variant918) + default: + panic("unreachable") + } + var option921 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option921 = witTypes.None[string]() + case 1: + value920 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option921 = witTypes.Some[string](value920) + default: + panic("unreachable") + } + + option922 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option917, option919, option921}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyF64Type(option922) + + case 12: + + variant1016 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1016 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result935 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value923 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option925 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option925 = witTypes.None[string]() + case 1: + value924 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option925 = witTypes.Some[string](value924) + default: + panic("unreachable") + } + result927 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value926 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result927 = append(result927, value926) + } + + result929 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value928 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result929 = append(result929, value928) + } + + var option931 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option931 = witTypes.None[string]() + case 1: + value930 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option931 = witTypes.Some[string](value930) + default: + panic("unreachable") + } + var option934 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option934 = witTypes.None[golem_core_types.Role]() + case 1: + var variant933 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant933 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant933 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant933 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value932 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant933 = golem_core_types.MakeRoleOther(value932) + + default: + panic("unreachable") + } + + option934 = witTypes.Some[golem_core_types.Role](variant933) + default: + panic("unreachable") + } + + result935 = append(result935, golem_core_types.NamedFieldType{value923, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option925, result927, result929, option931, option934}}) + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyRecordType(result935) + + case 15: + result949 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value936 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option937 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option937 = witTypes.None[int32]() + case 1: + + option937 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option939 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option939 = witTypes.None[string]() + case 1: + value938 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option939 = witTypes.Some[string](value938) + default: + panic("unreachable") + } + result941 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value940 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result941 = append(result941, value940) + } + + result943 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value942 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result943 = append(result943, value942) + } + + var option945 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option945 = witTypes.None[string]() + case 1: + value944 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option945 = witTypes.Some[string](value944) + default: + panic("unreachable") + } + var option948 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option948 = witTypes.None[golem_core_types.Role]() + case 1: + var variant947 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant947 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant947 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant947 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value946 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant947 = golem_core_types.MakeRoleOther(value946) + + default: + panic("unreachable") + } + + option948 = witTypes.Some[golem_core_types.Role](variant947) + default: + panic("unreachable") + } + + result949 = append(result949, golem_core_types.VariantCaseType{value936, option937, golem_core_types.MetadataEnvelope{option939, result941, result943, option945, option948}}) + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyVariantType(result949) + + case 16: + result951 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value950 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result951 = append(result951, value950) + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyEnumType(result951) + + case 17: + result953 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value952 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result953 = append(result953, value952) + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyFlagsType(result953) + + case 18: + result954 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result954 = append(result954, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyTupleType(result954) + + case 19: + + variant1016 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1016 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1016 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1016 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option955 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option955 = witTypes.None[int32]() + case 1: + + option955 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option956 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option956 = witTypes.None[int32]() + case 1: + + option956 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option955, option956}) + + case 24: + var option959 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option959 = witTypes.None[[]string]() + case 1: + result958 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value957 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result958 = append(result958, value957) + } + + option959 = witTypes.Some[[]string](result958) + default: + panic("unreachable") + } + var option960 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option960 = witTypes.None[uint32]() + case 1: + + option960 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option961 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option961 = witTypes.None[uint32]() + case 1: + + option961 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option963 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option963 = witTypes.None[string]() + case 1: + value962 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option963 = witTypes.Some[string](value962) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option959, option960, option961, option963}) + + case 25: + var option966 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option966 = witTypes.None[[]string]() + case 1: + result965 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value964 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result965 = append(result965, value964) + } + + option966 = witTypes.Some[[]string](result965) + default: + panic("unreachable") + } + var option967 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option967 = witTypes.None[uint32]() + case 1: + + option967 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option968 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option968 = witTypes.None[uint32]() + case 1: + + option968 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option966, option967, option968}) + + case 26: + var option971 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option971 = witTypes.None[[]string]() + case 1: + result970 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value969 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result970 = append(result970, value969) + } + + option971 = witTypes.Some[[]string](result970) + default: + panic("unreachable") + } + var option974 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option974 = witTypes.None[[]string]() + case 1: + result973 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value972 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result973 = append(result973, value972) + } + + option974 = witTypes.Some[[]string](result973) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option971, option974}) + + case 27: + var option977 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option977 = witTypes.None[[]string]() + case 1: + result976 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value975 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result976 = append(result976, value975) + } + + option977 = witTypes.Some[[]string](result976) + default: + panic("unreachable") + } + var option980 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option980 = witTypes.None[[]string]() + case 1: + result979 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value978 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result979 = append(result979, value978) + } + + option980 = witTypes.Some[[]string](result979) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option977, option980}) + + case 28: + + variant1016 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1016 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value981 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result983 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value982 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result983 = append(result983, value982) + } + + var option985 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option985 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value984 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option985 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value984}) + default: + panic("unreachable") + } + var option987 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option987 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value986 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option987 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value986}) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value981, result983, option985, option987}) + + case 31: + result1009 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value988 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant997 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value989 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant997 = golem_core_types.MakeDiscriminatorRulePrefix(value989) + + case 1: + value990 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant997 = golem_core_types.MakeDiscriminatorRuleSuffix(value990) + + case 2: + value991 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant997 = golem_core_types.MakeDiscriminatorRuleContains(value991) + + case 3: + value992 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant997 = golem_core_types.MakeDiscriminatorRuleRegex(value992) + + case 4: + value993 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option995 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option995 = witTypes.None[string]() + case 1: + value994 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option995 = witTypes.Some[string](value994) + default: + panic("unreachable") + } + + variant997 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value993, option995}) + + case 5: + value996 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant997 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value996) + + default: + panic("unreachable") + } + var option999 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option999 = witTypes.None[string]() + case 1: + value998 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option999 = witTypes.Some[string](value998) + default: + panic("unreachable") + } + result1001 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1000 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1001 = append(result1001, value1000) + } + + result1003 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1002 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1003 = append(result1003, value1002) + } + + var option1005 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1005 = witTypes.None[string]() + case 1: + value1004 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1005 = witTypes.Some[string](value1004) + default: + panic("unreachable") + } + var option1008 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1008 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1007 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1007 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1007 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1007 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1006 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1007 = golem_core_types.MakeRoleOther(value1006) + + default: + panic("unreachable") + } + + option1008 = witTypes.Some[golem_core_types.Role](variant1007) + default: + panic("unreachable") + } + + result1009 = append(result1009, golem_core_types.UnionBranch{value988, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant997, golem_core_types.MetadataEnvelope{option999, result1001, result1003, option1005, option1008}}) + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1009}) + + case 32: + var option1011 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1011 = witTypes.None[string]() + case 1: + value1010 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1011 = witTypes.Some[string](value1010) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1011}) + + case 33: + var option1013 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1013 = witTypes.None[string]() + case 1: + value1012 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1013 = witTypes.Some[string](value1012) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1013}) + + case 34: + var option1014 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1014 = witTypes.None[int32]() + case 1: + + option1014 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyFutureType(option1014) + + case 35: + var option1015 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1015 = witTypes.None[int32]() + case 1: + + option1015 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1016 = golem_core_types.MakeSchemaTypeBodyStreamType(option1015) + + default: + panic("unreachable") + } + var option1018 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1018 = witTypes.None[string]() + case 1: + value1017 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1018 = witTypes.Some[string](value1017) + default: + panic("unreachable") + } + result1020 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1019 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1020 = append(result1020, value1019) + } + + result1022 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1021 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1022 = append(result1022, value1021) + } + + var option1024 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1024 = witTypes.None[string]() + case 1: + value1023 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1024 = witTypes.Some[string](value1023) + default: + panic("unreachable") + } + var option1027 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1027 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1026 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1026 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1026 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1026 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1025 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1026 = golem_core_types.MakeRoleOther(value1025) + + default: + panic("unreachable") + } + + option1027 = witTypes.Some[golem_core_types.Role](variant1026) + default: + panic("unreachable") + } + + result1028 = append(result1028, golem_core_types.SchemaTypeNode{variant1016, golem_core_types.MetadataEnvelope{option1018, result1020, result1022, option1024, option1027}}) + } + + result1032 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value1029 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1031 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1031 = witTypes.None[string]() + case 1: + value1030 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1031 = witTypes.Some[string](value1030) + default: + panic("unreachable") + } + + result1032 = append(result1032, golem_core_types.SchemaTypeDef{value1029, option1031, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1056 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant1055 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1055 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1055 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1055 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1055 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1055 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1055 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1055 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1055 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1055 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1055 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1055 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1055 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1033 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1055 = golem_core_types.MakeSchemaValueNodeStringValue(value1033) + + case 13: + result1034 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1034 = append(result1034, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1055 = golem_core_types.MakeSchemaValueNodeRecordValue(result1034) + + case 14: + var option1035 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1035 = witTypes.None[int32]() + case 1: + + option1035 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1055 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1035}) + + case 15: + + variant1055 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1036 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1036 = append(result1036, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1055 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1036) + + case 17: + result1037 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1037 = append(result1037, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1055 = golem_core_types.MakeSchemaValueNodeTupleValue(result1037) + + case 18: + result1038 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1038 = append(result1038, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1055 = golem_core_types.MakeSchemaValueNodeListValue(result1038) + + case 19: + result1039 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1039 = append(result1039, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1055 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1039) + + case 20: + result1040 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1040 = append(result1040, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1055 = golem_core_types.MakeSchemaValueNodeMapValue(result1040) + + case 21: + var option1041 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1041 = witTypes.None[int32]() + case 1: + + option1041 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1055 = golem_core_types.MakeSchemaValueNodeOptionValue(option1041) + + case 22: + var variant1044 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1042 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1042 = witTypes.None[int32]() + case 1: + + option1042 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1044 = golem_core_types.MakeResultValuePayloadOkValue(option1042) + + case 1: + var option1043 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1043 = witTypes.None[int32]() + case 1: + + option1043 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1044 = golem_core_types.MakeResultValuePayloadErrValue(option1043) + + default: + panic("unreachable") + } + + variant1055 = golem_core_types.MakeSchemaValueNodeResultValue(variant1044) + + case 23: + value1045 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1047 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1047 = witTypes.None[string]() + case 1: + value1046 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1047 = witTypes.Some[string](value1046) + default: + panic("unreachable") + } + + variant1055 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1045, option1047}) + + case 24: + value1048 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1050 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1050 = witTypes.None[string]() + case 1: + value1049 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1050 = witTypes.Some[string](value1049) + default: + panic("unreachable") + } + + variant1055 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1048, option1050}) + + case 25: + value1051 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1055 = golem_core_types.MakeSchemaValueNodePathValue(value1051) + + case 26: + value1052 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1055 = golem_core_types.MakeSchemaValueNodeUrlValue(value1052) + + case 27: + + variant1055 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1055 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1053 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1055 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1053}) + + case 30: + value1054 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1055 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1054, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1055 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1055 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1056 = append(result1056, variant1055) + } + + option1057 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1028, result1032, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result1056, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}) + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryCancelled(CancelledParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), option1057}) + + case 4: + var variant1502 AgentInvocation + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + value1058 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + result1234 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))))), index*(56+22*4)) + var variant1222 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1222 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1222 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1065 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1065 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1060 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1060 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1059 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1059 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1059 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1059 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1060 = witTypes.Some[golem_core_types.NumericBound](variant1059) + default: + panic("unreachable") + } + var option1062 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1062 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1061 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1061 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1061 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1061 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1062 = witTypes.Some[golem_core_types.NumericBound](variant1061) + default: + panic("unreachable") + } + var option1064 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1064 = witTypes.None[string]() + case 1: + value1063 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1064 = witTypes.Some[string](value1063) + default: + panic("unreachable") + } + + option1065 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1060, option1062, option1064}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyS8Type(option1065) + + case 3: + var option1072 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1072 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1067 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1067 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1066 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1066 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1066 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1066 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1067 = witTypes.Some[golem_core_types.NumericBound](variant1066) + default: + panic("unreachable") + } + var option1069 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1069 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1068 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1068 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1068 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1068 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1069 = witTypes.Some[golem_core_types.NumericBound](variant1068) + default: + panic("unreachable") + } + var option1071 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1071 = witTypes.None[string]() + case 1: + value1070 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1071 = witTypes.Some[string](value1070) + default: + panic("unreachable") + } + + option1072 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1067, option1069, option1071}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyS16Type(option1072) + + case 4: + var option1079 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1079 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1074 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1074 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1073 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1073 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1073 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1073 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1074 = witTypes.Some[golem_core_types.NumericBound](variant1073) + default: + panic("unreachable") + } + var option1076 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1076 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1075 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1075 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1075 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1075 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1076 = witTypes.Some[golem_core_types.NumericBound](variant1075) + default: + panic("unreachable") + } + var option1078 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1078 = witTypes.None[string]() + case 1: + value1077 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1078 = witTypes.Some[string](value1077) + default: + panic("unreachable") + } + + option1079 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1074, option1076, option1078}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyS32Type(option1079) + + case 5: + var option1086 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1086 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1081 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1081 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1080 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1080 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1080 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1080 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1081 = witTypes.Some[golem_core_types.NumericBound](variant1080) + default: + panic("unreachable") + } + var option1083 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1083 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1082 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1082 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1082 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1082 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1083 = witTypes.Some[golem_core_types.NumericBound](variant1082) + default: + panic("unreachable") + } + var option1085 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1085 = witTypes.None[string]() + case 1: + value1084 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1085 = witTypes.Some[string](value1084) + default: + panic("unreachable") + } + + option1086 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1081, option1083, option1085}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyS64Type(option1086) + + case 6: + var option1093 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1093 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1088 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1088 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1087 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1087 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1087 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1087 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1088 = witTypes.Some[golem_core_types.NumericBound](variant1087) + default: + panic("unreachable") + } + var option1090 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1090 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1089 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1089 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1089 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1089 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1090 = witTypes.Some[golem_core_types.NumericBound](variant1089) + default: + panic("unreachable") + } + var option1092 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1092 = witTypes.None[string]() + case 1: + value1091 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1092 = witTypes.Some[string](value1091) + default: + panic("unreachable") + } + + option1093 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1088, option1090, option1092}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyU8Type(option1093) + + case 7: + var option1100 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1100 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1095 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1095 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1094 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1094 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1094 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1094 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1095 = witTypes.Some[golem_core_types.NumericBound](variant1094) + default: + panic("unreachable") + } + var option1097 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1097 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1096 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1096 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1096 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1096 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1097 = witTypes.Some[golem_core_types.NumericBound](variant1096) + default: + panic("unreachable") + } + var option1099 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1099 = witTypes.None[string]() + case 1: + value1098 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1099 = witTypes.Some[string](value1098) + default: + panic("unreachable") + } + + option1100 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1095, option1097, option1099}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyU16Type(option1100) + + case 8: + var option1107 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1107 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1102 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1102 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1101 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1101 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1101 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1101 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1102 = witTypes.Some[golem_core_types.NumericBound](variant1101) + default: + panic("unreachable") + } + var option1104 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1104 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1103 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1103 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1103 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1103 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1104 = witTypes.Some[golem_core_types.NumericBound](variant1103) + default: + panic("unreachable") + } + var option1106 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1106 = witTypes.None[string]() + case 1: + value1105 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1106 = witTypes.Some[string](value1105) + default: + panic("unreachable") + } + + option1107 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1102, option1104, option1106}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyU32Type(option1107) + + case 9: + var option1114 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1114 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1109 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1109 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1108 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1108 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1108 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1108 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1109 = witTypes.Some[golem_core_types.NumericBound](variant1108) + default: + panic("unreachable") + } + var option1111 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1111 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1110 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1110 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1110 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1110 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1111 = witTypes.Some[golem_core_types.NumericBound](variant1110) + default: + panic("unreachable") + } + var option1113 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1113 = witTypes.None[string]() + case 1: + value1112 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1113 = witTypes.Some[string](value1112) + default: + panic("unreachable") + } + + option1114 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1109, option1111, option1113}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyU64Type(option1114) + + case 10: + var option1121 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1121 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1116 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1116 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1115 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1115 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1115 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1115 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1116 = witTypes.Some[golem_core_types.NumericBound](variant1115) + default: + panic("unreachable") + } + var option1118 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1118 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1117 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1117 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1117 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1117 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1118 = witTypes.Some[golem_core_types.NumericBound](variant1117) + default: + panic("unreachable") + } + var option1120 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1120 = witTypes.None[string]() + case 1: + value1119 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1120 = witTypes.Some[string](value1119) + default: + panic("unreachable") + } + + option1121 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1116, option1118, option1120}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyF32Type(option1121) + + case 11: + var option1128 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1128 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1123 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1123 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1122 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1122 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1122 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1122 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1123 = witTypes.Some[golem_core_types.NumericBound](variant1122) + default: + panic("unreachable") + } + var option1125 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1125 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1124 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1124 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1124 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1124 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1125 = witTypes.Some[golem_core_types.NumericBound](variant1124) + default: + panic("unreachable") + } + var option1127 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1127 = witTypes.None[string]() + case 1: + value1126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1127 = witTypes.Some[string](value1126) + default: + panic("unreachable") + } + + option1128 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1123, option1125, option1127}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyF64Type(option1128) + + case 12: + + variant1222 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1222 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1141 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1131 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1131 = witTypes.None[string]() + case 1: + value1130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1131 = witTypes.Some[string](value1130) + default: + panic("unreachable") + } + result1133 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1133 = append(result1133, value1132) + } + + result1135 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1134 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1135 = append(result1135, value1134) + } + + var option1137 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1137 = witTypes.None[string]() + case 1: + value1136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1137 = witTypes.Some[string](value1136) + default: + panic("unreachable") + } + var option1140 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1140 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1139 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1139 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1139 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1139 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1139 = golem_core_types.MakeRoleOther(value1138) + + default: + panic("unreachable") + } + + option1140 = witTypes.Some[golem_core_types.Role](variant1139) + default: + panic("unreachable") + } + + result1141 = append(result1141, golem_core_types.NamedFieldType{value1129, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1131, result1133, result1135, option1137, option1140}}) + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyRecordType(result1141) + + case 15: + result1155 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1142 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1143 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1143 = witTypes.None[int32]() + case 1: + + option1143 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1145 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1145 = witTypes.None[string]() + case 1: + value1144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1145 = witTypes.Some[string](value1144) + default: + panic("unreachable") + } + result1147 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1147 = append(result1147, value1146) + } + + result1149 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1149 = append(result1149, value1148) + } + + var option1151 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1151 = witTypes.None[string]() + case 1: + value1150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1151 = witTypes.Some[string](value1150) + default: + panic("unreachable") + } + var option1154 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1154 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1153 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1153 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1153 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1153 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1152 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1153 = golem_core_types.MakeRoleOther(value1152) + + default: + panic("unreachable") + } + + option1154 = witTypes.Some[golem_core_types.Role](variant1153) + default: + panic("unreachable") + } + + result1155 = append(result1155, golem_core_types.VariantCaseType{value1142, option1143, golem_core_types.MetadataEnvelope{option1145, result1147, result1149, option1151, option1154}}) + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyVariantType(result1155) + + case 16: + result1157 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1156 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1157 = append(result1157, value1156) + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyEnumType(result1157) + + case 17: + result1159 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1158 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1159 = append(result1159, value1158) + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1159) + + case 18: + result1160 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1160 = append(result1160, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyTupleType(result1160) + + case 19: + + variant1222 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1222 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1222 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1222 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1161 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1161 = witTypes.None[int32]() + case 1: + + option1161 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1162 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1162 = witTypes.None[int32]() + case 1: + + option1162 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1161, option1162}) + + case 24: + var option1165 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1165 = witTypes.None[[]string]() + case 1: + result1164 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1164 = append(result1164, value1163) + } + + option1165 = witTypes.Some[[]string](result1164) + default: + panic("unreachable") + } + var option1166 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1166 = witTypes.None[uint32]() + case 1: + + option1166 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1167 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1167 = witTypes.None[uint32]() + case 1: + + option1167 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1169 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1169 = witTypes.None[string]() + case 1: + value1168 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1169 = witTypes.Some[string](value1168) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1165, option1166, option1167, option1169}) + + case 25: + var option1172 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1172 = witTypes.None[[]string]() + case 1: + result1171 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1170 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1171 = append(result1171, value1170) + } + + option1172 = witTypes.Some[[]string](result1171) + default: + panic("unreachable") + } + var option1173 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1173 = witTypes.None[uint32]() + case 1: + + option1173 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1174 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1174 = witTypes.None[uint32]() + case 1: + + option1174 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1172, option1173, option1174}) + + case 26: + var option1177 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1177 = witTypes.None[[]string]() + case 1: + result1176 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1175 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1176 = append(result1176, value1175) + } + + option1177 = witTypes.Some[[]string](result1176) + default: + panic("unreachable") + } + var option1180 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1180 = witTypes.None[[]string]() + case 1: + result1179 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1179 = append(result1179, value1178) + } + + option1180 = witTypes.Some[[]string](result1179) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1177, option1180}) + + case 27: + var option1183 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1183 = witTypes.None[[]string]() + case 1: + result1182 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1181 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1182 = append(result1182, value1181) + } + + option1183 = witTypes.Some[[]string](result1182) + default: + panic("unreachable") + } + var option1186 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1186 = witTypes.None[[]string]() + case 1: + result1185 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1184 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1185 = append(result1185, value1184) + } + + option1186 = witTypes.Some[[]string](result1185) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1183, option1186}) + + case 28: + + variant1222 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1222 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1187 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1189 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1188 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1189 = append(result1189, value1188) + } + + var option1191 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1191 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1191 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1190}) + default: + panic("unreachable") + } + var option1193 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1193 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1193 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1192}) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1187, result1189, option1191, option1193}) + + case 31: + result1215 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1203 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1203 = golem_core_types.MakeDiscriminatorRulePrefix(value1195) + + case 1: + value1196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1203 = golem_core_types.MakeDiscriminatorRuleSuffix(value1196) + + case 2: + value1197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1203 = golem_core_types.MakeDiscriminatorRuleContains(value1197) + + case 3: + value1198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1203 = golem_core_types.MakeDiscriminatorRuleRegex(value1198) + + case 4: + value1199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1201 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1201 = witTypes.None[string]() + case 1: + value1200 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1201 = witTypes.Some[string](value1200) + default: + panic("unreachable") + } + + variant1203 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1199, option1201}) + + case 5: + value1202 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1203 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1202) + + default: + panic("unreachable") + } + var option1205 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1205 = witTypes.None[string]() + case 1: + value1204 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1205 = witTypes.Some[string](value1204) + default: + panic("unreachable") + } + result1207 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1206 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1207 = append(result1207, value1206) + } + + result1209 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1208 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1209 = append(result1209, value1208) + } + + var option1211 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1211 = witTypes.None[string]() + case 1: + value1210 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1211 = witTypes.Some[string](value1210) + default: + panic("unreachable") + } + var option1214 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1214 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1213 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1213 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1213 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1213 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1212 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1213 = golem_core_types.MakeRoleOther(value1212) + + default: + panic("unreachable") + } + + option1214 = witTypes.Some[golem_core_types.Role](variant1213) + default: + panic("unreachable") + } + + result1215 = append(result1215, golem_core_types.UnionBranch{value1194, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1203, golem_core_types.MetadataEnvelope{option1205, result1207, result1209, option1211, option1214}}) + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1215}) + + case 32: + var option1217 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1217 = witTypes.None[string]() + case 1: + value1216 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1217 = witTypes.Some[string](value1216) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1217}) + + case 33: + var option1219 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1219 = witTypes.None[string]() + case 1: + value1218 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1219 = witTypes.Some[string](value1218) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1219}) + + case 34: + var option1220 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1220 = witTypes.None[int32]() + case 1: + + option1220 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyFutureType(option1220) + + case 35: + var option1221 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1221 = witTypes.None[int32]() + case 1: + + option1221 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1222 = golem_core_types.MakeSchemaTypeBodyStreamType(option1221) + + default: + panic("unreachable") + } + var option1224 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1224 = witTypes.None[string]() + case 1: + value1223 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1224 = witTypes.Some[string](value1223) + default: + panic("unreachable") + } + result1226 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1225 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1226 = append(result1226, value1225) + } + + result1228 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1227 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1228 = append(result1228, value1227) + } + + var option1230 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1230 = witTypes.None[string]() + case 1: + value1229 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1230 = witTypes.Some[string](value1229) + default: + panic("unreachable") + } + var option1233 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1233 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1232 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1232 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1232 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1232 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1232 = golem_core_types.MakeRoleOther(value1231) + + default: + panic("unreachable") + } + + option1233 = witTypes.Some[golem_core_types.Role](variant1232) + default: + panic("unreachable") + } + + result1234 = append(result1234, golem_core_types.SchemaTypeNode{variant1222, golem_core_types.MetadataEnvelope{option1224, result1226, result1228, option1230, option1233}}) + } + + result1238 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(6*4)) + value1235 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1237 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1237 = witTypes.None[string]() + case 1: + value1236 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1237 = witTypes.Some[string](value1236) + default: + panic("unreachable") + } + + result1238 = append(result1238, golem_core_types.SchemaTypeDef{value1235, option1237, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1262 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4))))), index*(16+4*4)) + var variant1261 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1261 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1261 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1261 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1261 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1261 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1261 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1261 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1261 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1261 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1261 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1261 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1261 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1239 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1261 = golem_core_types.MakeSchemaValueNodeStringValue(value1239) + + case 13: + result1240 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1240 = append(result1240, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1261 = golem_core_types.MakeSchemaValueNodeRecordValue(result1240) + + case 14: + var option1241 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1241 = witTypes.None[int32]() + case 1: + + option1241 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1261 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1241}) + + case 15: + + variant1261 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1242 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1242 = append(result1242, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1261 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1242) + + case 17: + result1243 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1243 = append(result1243, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1261 = golem_core_types.MakeSchemaValueNodeTupleValue(result1243) + + case 18: + result1244 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1244 = append(result1244, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1261 = golem_core_types.MakeSchemaValueNodeListValue(result1244) + + case 19: + result1245 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1245 = append(result1245, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1261 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1245) + + case 20: + result1246 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1246 = append(result1246, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1261 = golem_core_types.MakeSchemaValueNodeMapValue(result1246) + + case 21: + var option1247 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1247 = witTypes.None[int32]() + case 1: + + option1247 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1261 = golem_core_types.MakeSchemaValueNodeOptionValue(option1247) + + case 22: + var variant1250 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1248 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1248 = witTypes.None[int32]() + case 1: + + option1248 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1250 = golem_core_types.MakeResultValuePayloadOkValue(option1248) + + case 1: + var option1249 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1249 = witTypes.None[int32]() + case 1: + + option1249 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1250 = golem_core_types.MakeResultValuePayloadErrValue(option1249) + + default: + panic("unreachable") + } + + variant1261 = golem_core_types.MakeSchemaValueNodeResultValue(variant1250) + + case 23: + value1251 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1253 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1253 = witTypes.None[string]() + case 1: + value1252 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1253 = witTypes.Some[string](value1252) + default: + panic("unreachable") + } + + variant1261 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1251, option1253}) + + case 24: + value1254 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1256 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1256 = witTypes.None[string]() + case 1: + value1255 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1256 = witTypes.Some[string](value1255) + default: + panic("unreachable") + } + + variant1261 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1254, option1256}) + + case 25: + value1257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1261 = golem_core_types.MakeSchemaValueNodePathValue(value1257) + + case 26: + value1258 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1261 = golem_core_types.MakeSchemaValueNodeUrlValue(value1258) + + case 27: + + variant1261 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1261 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1259 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1261 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1259}) + + case 30: + value1260 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1261 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1260, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1261 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1261 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1262 = append(result1262, variant1261) + } + + value1263 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))) + result1265 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))))), index*(2*4)) + value1264 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1265 = append(result1265, value1264) + } + + result1277 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + result1276 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1275 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1266 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1268 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1268 = witTypes.None[string]() + case 1: + value1267 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1268 = witTypes.Some[string](value1267) + default: + panic("unreachable") + } + var option1269 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1269 = witTypes.None[uint64]() + case 1: + + option1269 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1273 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1270 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1272 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1271 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1272 = golem_api_context.MakeAttributeValueString(value1271) + + default: + panic("unreachable") + } + + result1273 = append(result1273, golem_api_context.Attribute{value1270, variant1272}) + } + + variant1275 = MakeSpanDataLocalSpan(LocalSpanData{value1266, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1268, option1269, result1273, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1274 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1275 = MakeSpanDataExternalSpan(ExternalSpanData{value1274}) + + default: + panic("unreachable") + } + + result1276 = append(result1276, variant1275) + } + + result1277 = append(result1277, result1276) + } + + variant1502 = MakeAgentInvocationAgentInitialization(AgentInitializationParameters{value1058, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1234, result1238, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))}, golem_core_types.SchemaValueTree{result1262, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))}}, value1263, result1265, result1277}) + + case 1: + value1278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value1279 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + result1455 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(56+22*4)) + var variant1443 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1443 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1443 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1286 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1286 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1281 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1281 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1280 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1280 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1280 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1280 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1281 = witTypes.Some[golem_core_types.NumericBound](variant1280) + default: + panic("unreachable") + } + var option1283 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1283 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1282 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1282 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1282 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1282 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1283 = witTypes.Some[golem_core_types.NumericBound](variant1282) + default: + panic("unreachable") + } + var option1285 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1285 = witTypes.None[string]() + case 1: + value1284 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1285 = witTypes.Some[string](value1284) + default: + panic("unreachable") + } + + option1286 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1281, option1283, option1285}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyS8Type(option1286) + + case 3: + var option1293 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1293 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1288 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1288 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1287 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1287 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1287 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1287 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1288 = witTypes.Some[golem_core_types.NumericBound](variant1287) + default: + panic("unreachable") + } + var option1290 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1290 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1289 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1289 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1289 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1289 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1290 = witTypes.Some[golem_core_types.NumericBound](variant1289) + default: + panic("unreachable") + } + var option1292 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1292 = witTypes.None[string]() + case 1: + value1291 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1292 = witTypes.Some[string](value1291) + default: + panic("unreachable") + } + + option1293 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1288, option1290, option1292}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyS16Type(option1293) + + case 4: + var option1300 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1300 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1295 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1295 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1294 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1294 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1294 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1294 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1295 = witTypes.Some[golem_core_types.NumericBound](variant1294) + default: + panic("unreachable") + } + var option1297 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1297 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1296 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1296 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1296 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1296 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1297 = witTypes.Some[golem_core_types.NumericBound](variant1296) + default: + panic("unreachable") + } + var option1299 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1299 = witTypes.None[string]() + case 1: + value1298 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1299 = witTypes.Some[string](value1298) + default: + panic("unreachable") + } + + option1300 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1295, option1297, option1299}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyS32Type(option1300) + + case 5: + var option1307 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1307 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1302 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1302 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1301 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1301 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1301 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1301 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1302 = witTypes.Some[golem_core_types.NumericBound](variant1301) + default: + panic("unreachable") + } + var option1304 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1304 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1303 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1303 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1303 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1303 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1304 = witTypes.Some[golem_core_types.NumericBound](variant1303) + default: + panic("unreachable") + } + var option1306 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1306 = witTypes.None[string]() + case 1: + value1305 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1306 = witTypes.Some[string](value1305) + default: + panic("unreachable") + } + + option1307 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1302, option1304, option1306}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyS64Type(option1307) + + case 6: + var option1314 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1314 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1309 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1309 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1308 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1308 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1308 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1308 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1309 = witTypes.Some[golem_core_types.NumericBound](variant1308) + default: + panic("unreachable") + } + var option1311 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1311 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1310 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1310 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1310 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1310 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1311 = witTypes.Some[golem_core_types.NumericBound](variant1310) + default: + panic("unreachable") + } + var option1313 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1313 = witTypes.None[string]() + case 1: + value1312 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1313 = witTypes.Some[string](value1312) + default: + panic("unreachable") + } + + option1314 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1309, option1311, option1313}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyU8Type(option1314) + + case 7: + var option1321 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1321 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1316 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1316 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1315 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1315 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1315 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1315 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1316 = witTypes.Some[golem_core_types.NumericBound](variant1315) + default: + panic("unreachable") + } + var option1318 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1318 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1317 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1317 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1317 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1317 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1318 = witTypes.Some[golem_core_types.NumericBound](variant1317) + default: + panic("unreachable") + } + var option1320 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1320 = witTypes.None[string]() + case 1: + value1319 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1320 = witTypes.Some[string](value1319) + default: + panic("unreachable") + } + + option1321 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1316, option1318, option1320}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyU16Type(option1321) + + case 8: + var option1328 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1328 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1323 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1323 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1322 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1322 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1322 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1322 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1323 = witTypes.Some[golem_core_types.NumericBound](variant1322) + default: + panic("unreachable") + } + var option1325 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1325 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1324 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1324 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1324 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1324 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1325 = witTypes.Some[golem_core_types.NumericBound](variant1324) + default: + panic("unreachable") + } + var option1327 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1327 = witTypes.None[string]() + case 1: + value1326 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1327 = witTypes.Some[string](value1326) + default: + panic("unreachable") + } + + option1328 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1323, option1325, option1327}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyU32Type(option1328) + + case 9: + var option1335 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1335 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1330 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1330 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1329 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1329 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1329 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1329 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1330 = witTypes.Some[golem_core_types.NumericBound](variant1329) + default: + panic("unreachable") + } + var option1332 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1332 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1331 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1331 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1331 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1331 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1332 = witTypes.Some[golem_core_types.NumericBound](variant1331) + default: + panic("unreachable") + } + var option1334 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1334 = witTypes.None[string]() + case 1: + value1333 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1334 = witTypes.Some[string](value1333) + default: + panic("unreachable") + } + + option1335 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1330, option1332, option1334}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyU64Type(option1335) + + case 10: + var option1342 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1342 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1337 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1337 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1336 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1336 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1336 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1336 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1337 = witTypes.Some[golem_core_types.NumericBound](variant1336) + default: + panic("unreachable") + } + var option1339 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1339 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1338 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1338 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1338 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1338 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1339 = witTypes.Some[golem_core_types.NumericBound](variant1338) + default: + panic("unreachable") + } + var option1341 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1341 = witTypes.None[string]() + case 1: + value1340 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1341 = witTypes.Some[string](value1340) + default: + panic("unreachable") + } + + option1342 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1337, option1339, option1341}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyF32Type(option1342) + + case 11: + var option1349 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1349 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1344 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1344 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1343 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1343 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1343 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1343 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1344 = witTypes.Some[golem_core_types.NumericBound](variant1343) + default: + panic("unreachable") + } + var option1346 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1346 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1345 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1345 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1345 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1345 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1346 = witTypes.Some[golem_core_types.NumericBound](variant1345) + default: + panic("unreachable") + } + var option1348 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1348 = witTypes.None[string]() + case 1: + value1347 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1348 = witTypes.Some[string](value1347) + default: + panic("unreachable") + } + + option1349 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1344, option1346, option1348}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyF64Type(option1349) + + case 12: + + variant1443 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1443 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1362 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1350 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1352 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1352 = witTypes.None[string]() + case 1: + value1351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1352 = witTypes.Some[string](value1351) + default: + panic("unreachable") + } + result1354 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1353 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1354 = append(result1354, value1353) + } + + result1356 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1355 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1356 = append(result1356, value1355) + } + + var option1358 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1358 = witTypes.None[string]() + case 1: + value1357 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1358 = witTypes.Some[string](value1357) + default: + panic("unreachable") + } + var option1361 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1361 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1360 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1360 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1360 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1360 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1359 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1360 = golem_core_types.MakeRoleOther(value1359) + + default: + panic("unreachable") + } + + option1361 = witTypes.Some[golem_core_types.Role](variant1360) + default: + panic("unreachable") + } + + result1362 = append(result1362, golem_core_types.NamedFieldType{value1350, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1352, result1354, result1356, option1358, option1361}}) + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyRecordType(result1362) + + case 15: + result1376 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1363 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1364 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1364 = witTypes.None[int32]() + case 1: + + option1364 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1366 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1366 = witTypes.None[string]() + case 1: + value1365 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1366 = witTypes.Some[string](value1365) + default: + panic("unreachable") + } + result1368 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1367 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1368 = append(result1368, value1367) + } + + result1370 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1369 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1370 = append(result1370, value1369) + } + + var option1372 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1372 = witTypes.None[string]() + case 1: + value1371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1372 = witTypes.Some[string](value1371) + default: + panic("unreachable") + } + var option1375 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1375 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1374 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1374 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1374 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1374 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1373 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1374 = golem_core_types.MakeRoleOther(value1373) + + default: + panic("unreachable") + } + + option1375 = witTypes.Some[golem_core_types.Role](variant1374) + default: + panic("unreachable") + } + + result1376 = append(result1376, golem_core_types.VariantCaseType{value1363, option1364, golem_core_types.MetadataEnvelope{option1366, result1368, result1370, option1372, option1375}}) + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyVariantType(result1376) + + case 16: + result1378 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1377 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1378 = append(result1378, value1377) + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyEnumType(result1378) + + case 17: + result1380 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1379 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1380 = append(result1380, value1379) + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1380) + + case 18: + result1381 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1381 = append(result1381, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyTupleType(result1381) + + case 19: + + variant1443 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1443 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1443 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1443 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1382 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1382 = witTypes.None[int32]() + case 1: + + option1382 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1383 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1383 = witTypes.None[int32]() + case 1: + + option1383 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1382, option1383}) + + case 24: + var option1386 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1386 = witTypes.None[[]string]() + case 1: + result1385 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1384 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1385 = append(result1385, value1384) + } + + option1386 = witTypes.Some[[]string](result1385) + default: + panic("unreachable") + } + var option1387 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1387 = witTypes.None[uint32]() + case 1: + + option1387 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1388 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1388 = witTypes.None[uint32]() + case 1: + + option1388 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1390 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1390 = witTypes.None[string]() + case 1: + value1389 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1390 = witTypes.Some[string](value1389) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1386, option1387, option1388, option1390}) + + case 25: + var option1393 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1393 = witTypes.None[[]string]() + case 1: + result1392 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1391 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1392 = append(result1392, value1391) + } + + option1393 = witTypes.Some[[]string](result1392) + default: + panic("unreachable") + } + var option1394 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1394 = witTypes.None[uint32]() + case 1: + + option1394 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1395 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1395 = witTypes.None[uint32]() + case 1: + + option1395 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1393, option1394, option1395}) + + case 26: + var option1398 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1398 = witTypes.None[[]string]() + case 1: + result1397 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1396 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1397 = append(result1397, value1396) + } + + option1398 = witTypes.Some[[]string](result1397) + default: + panic("unreachable") + } + var option1401 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1401 = witTypes.None[[]string]() + case 1: + result1400 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1399 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1400 = append(result1400, value1399) + } + + option1401 = witTypes.Some[[]string](result1400) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1398, option1401}) + + case 27: + var option1404 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1404 = witTypes.None[[]string]() + case 1: + result1403 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1402 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1403 = append(result1403, value1402) + } + + option1404 = witTypes.Some[[]string](result1403) + default: + panic("unreachable") + } + var option1407 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1407 = witTypes.None[[]string]() + case 1: + result1406 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1405 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1406 = append(result1406, value1405) + } + + option1407 = witTypes.Some[[]string](result1406) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1404, option1407}) + + case 28: + + variant1443 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1443 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1408 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1410 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1409 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1410 = append(result1410, value1409) + } + + var option1412 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1412 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1411 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1412 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1411}) + default: + panic("unreachable") + } + var option1414 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1414 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1413 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1414 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1413}) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1408, result1410, option1412, option1414}) + + case 31: + result1436 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1415 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1424 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1424 = golem_core_types.MakeDiscriminatorRulePrefix(value1416) + + case 1: + value1417 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1424 = golem_core_types.MakeDiscriminatorRuleSuffix(value1417) + + case 2: + value1418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1424 = golem_core_types.MakeDiscriminatorRuleContains(value1418) + + case 3: + value1419 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1424 = golem_core_types.MakeDiscriminatorRuleRegex(value1419) + + case 4: + value1420 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1422 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1422 = witTypes.None[string]() + case 1: + value1421 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1422 = witTypes.Some[string](value1421) + default: + panic("unreachable") + } + + variant1424 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1420, option1422}) + + case 5: + value1423 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1424 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1423) + + default: + panic("unreachable") + } + var option1426 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1426 = witTypes.None[string]() + case 1: + value1425 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1426 = witTypes.Some[string](value1425) + default: + panic("unreachable") + } + result1428 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1427 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1428 = append(result1428, value1427) + } + + result1430 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1429 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1430 = append(result1430, value1429) + } + + var option1432 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1432 = witTypes.None[string]() + case 1: + value1431 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1432 = witTypes.Some[string](value1431) + default: + panic("unreachable") + } + var option1435 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1435 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1434 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1434 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1434 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1434 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1433 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1434 = golem_core_types.MakeRoleOther(value1433) + + default: + panic("unreachable") + } + + option1435 = witTypes.Some[golem_core_types.Role](variant1434) + default: + panic("unreachable") + } + + result1436 = append(result1436, golem_core_types.UnionBranch{value1415, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1424, golem_core_types.MetadataEnvelope{option1426, result1428, result1430, option1432, option1435}}) + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1436}) + + case 32: + var option1438 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1438 = witTypes.None[string]() + case 1: + value1437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1438 = witTypes.Some[string](value1437) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1438}) + + case 33: + var option1440 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1440 = witTypes.None[string]() + case 1: + value1439 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1440 = witTypes.Some[string](value1439) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1440}) + + case 34: + var option1441 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1441 = witTypes.None[int32]() + case 1: + + option1441 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyFutureType(option1441) + + case 35: + var option1442 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1442 = witTypes.None[int32]() + case 1: + + option1442 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1443 = golem_core_types.MakeSchemaTypeBodyStreamType(option1442) + + default: + panic("unreachable") + } + var option1445 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1445 = witTypes.None[string]() + case 1: + value1444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1445 = witTypes.Some[string](value1444) + default: + panic("unreachable") + } + result1447 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1446 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1447 = append(result1447, value1446) + } + + result1449 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1448 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1449 = append(result1449, value1448) + } + + var option1451 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1451 = witTypes.None[string]() + case 1: + value1450 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1451 = witTypes.Some[string](value1450) + default: + panic("unreachable") + } + var option1454 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1454 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1453 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1453 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1453 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1453 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1452 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1453 = golem_core_types.MakeRoleOther(value1452) + + default: + panic("unreachable") + } + + option1454 = witTypes.Some[golem_core_types.Role](variant1453) + default: + panic("unreachable") + } + + result1455 = append(result1455, golem_core_types.SchemaTypeNode{variant1443, golem_core_types.MetadataEnvelope{option1445, result1447, result1449, option1451, option1454}}) + } + + result1459 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(6*4)) + value1456 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1458 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1458 = witTypes.None[string]() + case 1: + value1457 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1458 = witTypes.Some[string](value1457) + default: + panic("unreachable") + } + + result1459 = append(result1459, golem_core_types.SchemaTypeDef{value1456, option1458, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1483 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4))))), index*(16+4*4)) + var variant1482 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1482 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1482 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1482 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1482 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1482 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1482 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1482 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1482 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1482 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1482 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1482 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1482 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1460 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1482 = golem_core_types.MakeSchemaValueNodeStringValue(value1460) + + case 13: + result1461 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1461 = append(result1461, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1482 = golem_core_types.MakeSchemaValueNodeRecordValue(result1461) + + case 14: + var option1462 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1462 = witTypes.None[int32]() + case 1: + + option1462 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1482 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1462}) + + case 15: + + variant1482 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1463 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1463 = append(result1463, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1482 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1463) + + case 17: + result1464 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1464 = append(result1464, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1482 = golem_core_types.MakeSchemaValueNodeTupleValue(result1464) + + case 18: + result1465 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1465 = append(result1465, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1482 = golem_core_types.MakeSchemaValueNodeListValue(result1465) + + case 19: + result1466 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1466 = append(result1466, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1482 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1466) + + case 20: + result1467 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1467 = append(result1467, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1482 = golem_core_types.MakeSchemaValueNodeMapValue(result1467) + + case 21: + var option1468 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1468 = witTypes.None[int32]() + case 1: + + option1468 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1482 = golem_core_types.MakeSchemaValueNodeOptionValue(option1468) + + case 22: + var variant1471 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1469 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1469 = witTypes.None[int32]() + case 1: + + option1469 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1471 = golem_core_types.MakeResultValuePayloadOkValue(option1469) + + case 1: + var option1470 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1470 = witTypes.None[int32]() + case 1: + + option1470 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1471 = golem_core_types.MakeResultValuePayloadErrValue(option1470) + + default: + panic("unreachable") + } + + variant1482 = golem_core_types.MakeSchemaValueNodeResultValue(variant1471) + + case 23: + value1472 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1474 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1474 = witTypes.None[string]() + case 1: + value1473 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1474 = witTypes.Some[string](value1473) + default: + panic("unreachable") + } + + variant1482 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1472, option1474}) + + case 24: + value1475 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1477 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1477 = witTypes.None[string]() + case 1: + value1476 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1477 = witTypes.Some[string](value1476) + default: + panic("unreachable") + } + + variant1482 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1475, option1477}) + + case 25: + value1478 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1482 = golem_core_types.MakeSchemaValueNodePathValue(value1478) + + case 26: + value1479 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1482 = golem_core_types.MakeSchemaValueNodeUrlValue(value1479) + + case 27: + + variant1482 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1482 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1480 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1482 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1480}) + + case 30: + value1481 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1482 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1481, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1482 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1482 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1483 = append(result1483, variant1482) + } + + value1484 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + result1486 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + value1485 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1486 = append(result1486, value1485) + } + + result1498 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 16*4))))), index*(2*4)) + result1497 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1496 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1487 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1489 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1489 = witTypes.None[string]() + case 1: + value1488 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1489 = witTypes.Some[string](value1488) + default: + panic("unreachable") + } + var option1490 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1490 = witTypes.None[uint64]() + case 1: + + option1490 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1494 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1491 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1493 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1492 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1493 = golem_api_context.MakeAttributeValueString(value1492) + + default: + panic("unreachable") + } + + result1494 = append(result1494, golem_api_context.Attribute{value1491, variant1493}) + } + + variant1496 = MakeSpanDataLocalSpan(LocalSpanData{value1487, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1489, option1490, result1494, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1495 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1496 = MakeSpanDataExternalSpan(ExternalSpanData{value1495}) + + default: + panic("unreachable") + } + + result1497 = append(result1497, variant1496) + } + + result1498 = append(result1498, result1497) + } + + variant1502 = MakeAgentInvocationAgentMethodInvocation(AgentMethodInvocationParameters{value1278, value1279, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1455, result1459, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}, golem_core_types.SchemaValueTree{result1483, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))}}, value1484, result1486, result1498}) + + case 2: + + variant1502 = MakeAgentInvocationSaveSnapshot() + + case 3: + value1499 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value1500 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant1502 = MakeAgentInvocationLoadSnapshot(LoadSnapshotParameters{SnapshotData{value1499, value1500}}) + + case 4: + value1501 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant1502 = MakeAgentInvocationProcessOplogEntries(ProcessOplogEntriesParameters{value1501}) + + case 5: + + variant1502 = MakeAgentInvocationManualUpdate(ManualUpdateParameters{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryAgentInvocationStarted(AgentInvocationStartedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant1502}) + + case 5: + var variant1917 AgentInvocationResult + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + result1678 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4))))), index*(56+22*4)) + var variant1666 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1666 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1666 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1509 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1509 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1504 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1504 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1503 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1503 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1503 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1503 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1504 = witTypes.Some[golem_core_types.NumericBound](variant1503) + default: + panic("unreachable") + } + var option1506 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1506 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1505 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1505 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1505 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1505 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1506 = witTypes.Some[golem_core_types.NumericBound](variant1505) + default: + panic("unreachable") + } + var option1508 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1508 = witTypes.None[string]() + case 1: + value1507 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1508 = witTypes.Some[string](value1507) + default: + panic("unreachable") + } + + option1509 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1504, option1506, option1508}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyS8Type(option1509) + + case 3: + var option1516 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1516 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1511 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1511 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1510 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1510 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1510 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1510 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1511 = witTypes.Some[golem_core_types.NumericBound](variant1510) + default: + panic("unreachable") + } + var option1513 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1513 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1512 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1512 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1512 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1512 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1513 = witTypes.Some[golem_core_types.NumericBound](variant1512) + default: + panic("unreachable") + } + var option1515 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1515 = witTypes.None[string]() + case 1: + value1514 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1515 = witTypes.Some[string](value1514) + default: + panic("unreachable") + } + + option1516 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1511, option1513, option1515}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyS16Type(option1516) + + case 4: + var option1523 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1523 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1518 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1518 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1517 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1517 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1517 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1517 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1518 = witTypes.Some[golem_core_types.NumericBound](variant1517) + default: + panic("unreachable") + } + var option1520 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1520 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1519 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1519 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1519 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1519 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1520 = witTypes.Some[golem_core_types.NumericBound](variant1519) + default: + panic("unreachable") + } + var option1522 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1522 = witTypes.None[string]() + case 1: + value1521 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1522 = witTypes.Some[string](value1521) + default: + panic("unreachable") + } + + option1523 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1518, option1520, option1522}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyS32Type(option1523) + + case 5: + var option1530 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1530 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1525 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1525 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1524 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1524 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1524 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1524 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1525 = witTypes.Some[golem_core_types.NumericBound](variant1524) + default: + panic("unreachable") + } + var option1527 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1527 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1526 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1526 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1526 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1526 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1527 = witTypes.Some[golem_core_types.NumericBound](variant1526) + default: + panic("unreachable") + } + var option1529 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1529 = witTypes.None[string]() + case 1: + value1528 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1529 = witTypes.Some[string](value1528) + default: + panic("unreachable") + } + + option1530 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1525, option1527, option1529}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyS64Type(option1530) + + case 6: + var option1537 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1537 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1532 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1532 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1531 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1531 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1531 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1531 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1532 = witTypes.Some[golem_core_types.NumericBound](variant1531) + default: + panic("unreachable") + } + var option1534 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1534 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1533 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1533 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1533 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1533 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1534 = witTypes.Some[golem_core_types.NumericBound](variant1533) + default: + panic("unreachable") + } + var option1536 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1536 = witTypes.None[string]() + case 1: + value1535 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1536 = witTypes.Some[string](value1535) + default: + panic("unreachable") + } + + option1537 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1532, option1534, option1536}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyU8Type(option1537) + + case 7: + var option1544 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1544 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1539 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1539 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1538 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1538 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1538 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1538 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1539 = witTypes.Some[golem_core_types.NumericBound](variant1538) + default: + panic("unreachable") + } + var option1541 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1541 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1540 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1540 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1540 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1540 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1541 = witTypes.Some[golem_core_types.NumericBound](variant1540) + default: + panic("unreachable") + } + var option1543 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1543 = witTypes.None[string]() + case 1: + value1542 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1543 = witTypes.Some[string](value1542) + default: + panic("unreachable") + } + + option1544 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1539, option1541, option1543}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyU16Type(option1544) + + case 8: + var option1551 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1551 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1546 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1546 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1545 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1545 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1545 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1545 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1546 = witTypes.Some[golem_core_types.NumericBound](variant1545) + default: + panic("unreachable") + } + var option1548 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1548 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1547 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1547 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1547 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1547 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1548 = witTypes.Some[golem_core_types.NumericBound](variant1547) + default: + panic("unreachable") + } + var option1550 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1550 = witTypes.None[string]() + case 1: + value1549 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1550 = witTypes.Some[string](value1549) + default: + panic("unreachable") + } + + option1551 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1546, option1548, option1550}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyU32Type(option1551) + + case 9: + var option1558 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1558 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1553 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1553 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1552 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1552 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1552 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1552 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1553 = witTypes.Some[golem_core_types.NumericBound](variant1552) + default: + panic("unreachable") + } + var option1555 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1555 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1554 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1554 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1554 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1554 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1555 = witTypes.Some[golem_core_types.NumericBound](variant1554) + default: + panic("unreachable") + } + var option1557 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1557 = witTypes.None[string]() + case 1: + value1556 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1557 = witTypes.Some[string](value1556) + default: + panic("unreachable") + } + + option1558 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1553, option1555, option1557}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyU64Type(option1558) + + case 10: + var option1565 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1565 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1560 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1560 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1559 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1559 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1559 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1559 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1560 = witTypes.Some[golem_core_types.NumericBound](variant1559) + default: + panic("unreachable") + } + var option1562 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1562 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1561 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1561 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1561 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1561 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1562 = witTypes.Some[golem_core_types.NumericBound](variant1561) + default: + panic("unreachable") + } + var option1564 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1564 = witTypes.None[string]() + case 1: + value1563 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1564 = witTypes.Some[string](value1563) + default: + panic("unreachable") + } + + option1565 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1560, option1562, option1564}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyF32Type(option1565) + + case 11: + var option1572 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1572 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1567 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1567 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1566 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1566 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1566 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1566 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1567 = witTypes.Some[golem_core_types.NumericBound](variant1566) + default: + panic("unreachable") + } + var option1569 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1569 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1568 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1568 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1568 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1568 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1569 = witTypes.Some[golem_core_types.NumericBound](variant1568) + default: + panic("unreachable") + } + var option1571 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1571 = witTypes.None[string]() + case 1: + value1570 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1571 = witTypes.Some[string](value1570) + default: + panic("unreachable") + } + + option1572 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1567, option1569, option1571}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyF64Type(option1572) + + case 12: + + variant1666 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1666 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1585 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1573 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1575 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1575 = witTypes.None[string]() + case 1: + value1574 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1575 = witTypes.Some[string](value1574) + default: + panic("unreachable") + } + result1577 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1576 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1577 = append(result1577, value1576) + } + + result1579 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1578 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1579 = append(result1579, value1578) + } + + var option1581 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1581 = witTypes.None[string]() + case 1: + value1580 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1581 = witTypes.Some[string](value1580) + default: + panic("unreachable") + } + var option1584 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1584 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1583 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1583 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1583 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1583 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1582 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1583 = golem_core_types.MakeRoleOther(value1582) + + default: + panic("unreachable") + } + + option1584 = witTypes.Some[golem_core_types.Role](variant1583) + default: + panic("unreachable") + } + + result1585 = append(result1585, golem_core_types.NamedFieldType{value1573, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1575, result1577, result1579, option1581, option1584}}) + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyRecordType(result1585) + + case 15: + result1599 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1586 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1587 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1587 = witTypes.None[int32]() + case 1: + + option1587 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1589 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1589 = witTypes.None[string]() + case 1: + value1588 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1589 = witTypes.Some[string](value1588) + default: + panic("unreachable") + } + result1591 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1590 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1591 = append(result1591, value1590) + } + + result1593 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1592 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1593 = append(result1593, value1592) + } + + var option1595 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1595 = witTypes.None[string]() + case 1: + value1594 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1595 = witTypes.Some[string](value1594) + default: + panic("unreachable") + } + var option1598 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1598 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1597 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1597 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1597 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1597 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1596 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1597 = golem_core_types.MakeRoleOther(value1596) + + default: + panic("unreachable") + } + + option1598 = witTypes.Some[golem_core_types.Role](variant1597) + default: + panic("unreachable") + } + + result1599 = append(result1599, golem_core_types.VariantCaseType{value1586, option1587, golem_core_types.MetadataEnvelope{option1589, result1591, result1593, option1595, option1598}}) + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyVariantType(result1599) + + case 16: + result1601 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1600 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1601 = append(result1601, value1600) + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyEnumType(result1601) + + case 17: + result1603 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1602 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1603 = append(result1603, value1602) + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1603) + + case 18: + result1604 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1604 = append(result1604, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyTupleType(result1604) + + case 19: + + variant1666 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1666 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1666 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1666 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1605 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1605 = witTypes.None[int32]() + case 1: + + option1605 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1606 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1606 = witTypes.None[int32]() + case 1: + + option1606 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1605, option1606}) + + case 24: + var option1609 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1609 = witTypes.None[[]string]() + case 1: + result1608 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1607 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1608 = append(result1608, value1607) + } + + option1609 = witTypes.Some[[]string](result1608) + default: + panic("unreachable") + } + var option1610 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1610 = witTypes.None[uint32]() + case 1: + + option1610 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1611 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1611 = witTypes.None[uint32]() + case 1: + + option1611 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1613 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1613 = witTypes.None[string]() + case 1: + value1612 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1613 = witTypes.Some[string](value1612) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1609, option1610, option1611, option1613}) + + case 25: + var option1616 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1616 = witTypes.None[[]string]() + case 1: + result1615 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1614 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1615 = append(result1615, value1614) + } + + option1616 = witTypes.Some[[]string](result1615) + default: + panic("unreachable") + } + var option1617 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1617 = witTypes.None[uint32]() + case 1: + + option1617 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1618 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1618 = witTypes.None[uint32]() + case 1: + + option1618 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1616, option1617, option1618}) + + case 26: + var option1621 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1621 = witTypes.None[[]string]() + case 1: + result1620 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1619 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1620 = append(result1620, value1619) + } + + option1621 = witTypes.Some[[]string](result1620) + default: + panic("unreachable") + } + var option1624 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1624 = witTypes.None[[]string]() + case 1: + result1623 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1622 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1623 = append(result1623, value1622) + } + + option1624 = witTypes.Some[[]string](result1623) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1621, option1624}) + + case 27: + var option1627 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1627 = witTypes.None[[]string]() + case 1: + result1626 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1625 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1626 = append(result1626, value1625) + } + + option1627 = witTypes.Some[[]string](result1626) + default: + panic("unreachable") + } + var option1630 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1630 = witTypes.None[[]string]() + case 1: + result1629 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1628 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1629 = append(result1629, value1628) + } + + option1630 = witTypes.Some[[]string](result1629) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1627, option1630}) + + case 28: + + variant1666 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1666 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1631 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1633 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1632 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1633 = append(result1633, value1632) + } + + var option1635 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1635 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1634 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1635 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1634}) + default: + panic("unreachable") + } + var option1637 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1637 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1636 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1637 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1636}) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1631, result1633, option1635, option1637}) + + case 31: + result1659 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1638 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1647 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1639 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1647 = golem_core_types.MakeDiscriminatorRulePrefix(value1639) + + case 1: + value1640 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1647 = golem_core_types.MakeDiscriminatorRuleSuffix(value1640) + + case 2: + value1641 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1647 = golem_core_types.MakeDiscriminatorRuleContains(value1641) + + case 3: + value1642 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1647 = golem_core_types.MakeDiscriminatorRuleRegex(value1642) + + case 4: + value1643 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1645 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1645 = witTypes.None[string]() + case 1: + value1644 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1645 = witTypes.Some[string](value1644) + default: + panic("unreachable") + } + + variant1647 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1643, option1645}) + + case 5: + value1646 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1647 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1646) + + default: + panic("unreachable") + } + var option1649 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1649 = witTypes.None[string]() + case 1: + value1648 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1649 = witTypes.Some[string](value1648) + default: + panic("unreachable") + } + result1651 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1650 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1651 = append(result1651, value1650) + } + + result1653 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1652 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1653 = append(result1653, value1652) + } + + var option1655 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1655 = witTypes.None[string]() + case 1: + value1654 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1655 = witTypes.Some[string](value1654) + default: + panic("unreachable") + } + var option1658 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1658 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1657 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1657 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1657 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1657 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1656 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1657 = golem_core_types.MakeRoleOther(value1656) + + default: + panic("unreachable") + } + + option1658 = witTypes.Some[golem_core_types.Role](variant1657) + default: + panic("unreachable") + } + + result1659 = append(result1659, golem_core_types.UnionBranch{value1638, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1647, golem_core_types.MetadataEnvelope{option1649, result1651, result1653, option1655, option1658}}) + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1659}) + + case 32: + var option1661 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1661 = witTypes.None[string]() + case 1: + value1660 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1661 = witTypes.Some[string](value1660) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1661}) + + case 33: + var option1663 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1663 = witTypes.None[string]() + case 1: + value1662 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1663 = witTypes.Some[string](value1662) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1663}) + + case 34: + var option1664 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1664 = witTypes.None[int32]() + case 1: + + option1664 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyFutureType(option1664) + + case 35: + var option1665 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1665 = witTypes.None[int32]() + case 1: + + option1665 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1666 = golem_core_types.MakeSchemaTypeBodyStreamType(option1665) + + default: + panic("unreachable") + } + var option1668 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1668 = witTypes.None[string]() + case 1: + value1667 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1668 = witTypes.Some[string](value1667) + default: + panic("unreachable") + } + result1670 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1669 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1670 = append(result1670, value1669) + } + + result1672 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1671 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1672 = append(result1672, value1671) + } + + var option1674 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1674 = witTypes.None[string]() + case 1: + value1673 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1674 = witTypes.Some[string](value1673) + default: + panic("unreachable") + } + var option1677 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1677 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1676 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1676 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1676 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1676 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1675 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1676 = golem_core_types.MakeRoleOther(value1675) + + default: + panic("unreachable") + } + + option1677 = witTypes.Some[golem_core_types.Role](variant1676) + default: + panic("unreachable") + } + + result1678 = append(result1678, golem_core_types.SchemaTypeNode{variant1666, golem_core_types.MetadataEnvelope{option1668, result1670, result1672, option1674, option1677}}) + } + + result1682 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))))), index*(6*4)) + value1679 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1681 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1681 = witTypes.None[string]() + case 1: + value1680 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1681 = witTypes.Some[string](value1680) + default: + panic("unreachable") + } + + result1682 = append(result1682, golem_core_types.SchemaTypeDef{value1679, option1681, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1706 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))))), index*(16+4*4)) + var variant1705 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1705 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1705 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1705 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1705 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1705 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1705 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1705 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1705 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1705 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1705 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1705 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1705 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1683 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1705 = golem_core_types.MakeSchemaValueNodeStringValue(value1683) + + case 13: + result1684 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1684 = append(result1684, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1705 = golem_core_types.MakeSchemaValueNodeRecordValue(result1684) + + case 14: + var option1685 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1685 = witTypes.None[int32]() + case 1: + + option1685 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1705 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1685}) + + case 15: + + variant1705 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1686 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1686 = append(result1686, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1705 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1686) + + case 17: + result1687 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1687 = append(result1687, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1705 = golem_core_types.MakeSchemaValueNodeTupleValue(result1687) + + case 18: + result1688 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1688 = append(result1688, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1705 = golem_core_types.MakeSchemaValueNodeListValue(result1688) + + case 19: + result1689 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1689 = append(result1689, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1705 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1689) + + case 20: + result1690 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1690 = append(result1690, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1705 = golem_core_types.MakeSchemaValueNodeMapValue(result1690) + + case 21: + var option1691 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1691 = witTypes.None[int32]() + case 1: + + option1691 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1705 = golem_core_types.MakeSchemaValueNodeOptionValue(option1691) + + case 22: + var variant1694 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1692 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1692 = witTypes.None[int32]() + case 1: + + option1692 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1694 = golem_core_types.MakeResultValuePayloadOkValue(option1692) + + case 1: + var option1693 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1693 = witTypes.None[int32]() + case 1: + + option1693 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1694 = golem_core_types.MakeResultValuePayloadErrValue(option1693) + + default: + panic("unreachable") + } + + variant1705 = golem_core_types.MakeSchemaValueNodeResultValue(variant1694) + + case 23: + value1695 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1697 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1697 = witTypes.None[string]() + case 1: + value1696 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1697 = witTypes.Some[string](value1696) + default: + panic("unreachable") + } + + variant1705 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1695, option1697}) + + case 24: + value1698 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1700 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1700 = witTypes.None[string]() + case 1: + value1699 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1700 = witTypes.Some[string](value1699) + default: + panic("unreachable") + } + + variant1705 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1698, option1700}) + + case 25: + value1701 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1705 = golem_core_types.MakeSchemaValueNodePathValue(value1701) + + case 26: + value1702 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1705 = golem_core_types.MakeSchemaValueNodeUrlValue(value1702) + + case 27: + + variant1705 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1705 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1703 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1705 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1703}) + + case 30: + value1704 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1705 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1704, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1705 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1705 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1706 = append(result1706, variant1705) + } + + variant1917 = MakeAgentInvocationResultAgentInitialization(AgentInvocationOutputParameters{golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1678, result1682, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))}, golem_core_types.SchemaValueTree{result1706, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 8*4)))}}}) + + case 1: + result1882 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4))))), index*(56+22*4)) + var variant1870 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1870 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1870 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1713 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1713 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1708 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1708 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1707 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1707 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1707 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1707 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1708 = witTypes.Some[golem_core_types.NumericBound](variant1707) + default: + panic("unreachable") + } + var option1710 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1710 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1709 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1709 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1709 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1709 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1710 = witTypes.Some[golem_core_types.NumericBound](variant1709) + default: + panic("unreachable") + } + var option1712 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1712 = witTypes.None[string]() + case 1: + value1711 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1712 = witTypes.Some[string](value1711) + default: + panic("unreachable") + } + + option1713 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1708, option1710, option1712}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyS8Type(option1713) + + case 3: + var option1720 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1720 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1715 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1715 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1714 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1714 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1714 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1714 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1715 = witTypes.Some[golem_core_types.NumericBound](variant1714) + default: + panic("unreachable") + } + var option1717 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1717 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1716 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1716 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1716 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1716 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1717 = witTypes.Some[golem_core_types.NumericBound](variant1716) + default: + panic("unreachable") + } + var option1719 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1719 = witTypes.None[string]() + case 1: + value1718 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1719 = witTypes.Some[string](value1718) + default: + panic("unreachable") + } + + option1720 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1715, option1717, option1719}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyS16Type(option1720) + + case 4: + var option1727 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1727 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1722 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1722 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1721 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1721 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1721 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1721 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1722 = witTypes.Some[golem_core_types.NumericBound](variant1721) + default: + panic("unreachable") + } + var option1724 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1724 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1723 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1723 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1723 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1723 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1724 = witTypes.Some[golem_core_types.NumericBound](variant1723) + default: + panic("unreachable") + } + var option1726 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1726 = witTypes.None[string]() + case 1: + value1725 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1726 = witTypes.Some[string](value1725) + default: + panic("unreachable") + } + + option1727 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1722, option1724, option1726}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyS32Type(option1727) + + case 5: + var option1734 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1734 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1729 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1729 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1728 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1728 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1728 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1728 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1729 = witTypes.Some[golem_core_types.NumericBound](variant1728) + default: + panic("unreachable") + } + var option1731 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1731 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1730 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1730 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1730 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1730 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1731 = witTypes.Some[golem_core_types.NumericBound](variant1730) + default: + panic("unreachable") + } + var option1733 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1733 = witTypes.None[string]() + case 1: + value1732 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1733 = witTypes.Some[string](value1732) + default: + panic("unreachable") + } + + option1734 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1729, option1731, option1733}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyS64Type(option1734) + + case 6: + var option1741 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1741 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1736 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1736 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1735 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1735 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1735 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1735 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1736 = witTypes.Some[golem_core_types.NumericBound](variant1735) + default: + panic("unreachable") + } + var option1738 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1738 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1737 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1737 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1737 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1737 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1738 = witTypes.Some[golem_core_types.NumericBound](variant1737) + default: + panic("unreachable") + } + var option1740 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1740 = witTypes.None[string]() + case 1: + value1739 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1740 = witTypes.Some[string](value1739) + default: + panic("unreachable") + } + + option1741 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1736, option1738, option1740}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyU8Type(option1741) + + case 7: + var option1748 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1748 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1743 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1743 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1742 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1742 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1742 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1742 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1743 = witTypes.Some[golem_core_types.NumericBound](variant1742) + default: + panic("unreachable") + } + var option1745 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1745 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1744 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1744 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1744 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1744 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1745 = witTypes.Some[golem_core_types.NumericBound](variant1744) + default: + panic("unreachable") + } + var option1747 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1747 = witTypes.None[string]() + case 1: + value1746 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1747 = witTypes.Some[string](value1746) + default: + panic("unreachable") + } + + option1748 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1743, option1745, option1747}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyU16Type(option1748) + + case 8: + var option1755 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1755 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1750 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1750 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1749 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1749 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1749 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1749 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1750 = witTypes.Some[golem_core_types.NumericBound](variant1749) + default: + panic("unreachable") + } + var option1752 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1752 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1751 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1751 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1751 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1751 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1752 = witTypes.Some[golem_core_types.NumericBound](variant1751) + default: + panic("unreachable") + } + var option1754 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1754 = witTypes.None[string]() + case 1: + value1753 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1754 = witTypes.Some[string](value1753) + default: + panic("unreachable") + } + + option1755 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1750, option1752, option1754}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyU32Type(option1755) + + case 9: + var option1762 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1762 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1757 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1757 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1756 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1756 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1756 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1756 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1757 = witTypes.Some[golem_core_types.NumericBound](variant1756) + default: + panic("unreachable") + } + var option1759 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1759 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1758 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1758 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1758 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1758 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1759 = witTypes.Some[golem_core_types.NumericBound](variant1758) + default: + panic("unreachable") + } + var option1761 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1761 = witTypes.None[string]() + case 1: + value1760 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1761 = witTypes.Some[string](value1760) + default: + panic("unreachable") + } + + option1762 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1757, option1759, option1761}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyU64Type(option1762) + + case 10: + var option1769 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1769 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1764 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1764 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1763 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1763 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1763 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1763 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1764 = witTypes.Some[golem_core_types.NumericBound](variant1763) + default: + panic("unreachable") + } + var option1766 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1766 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1765 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1765 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1765 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1765 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1766 = witTypes.Some[golem_core_types.NumericBound](variant1765) + default: + panic("unreachable") + } + var option1768 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1768 = witTypes.None[string]() + case 1: + value1767 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1768 = witTypes.Some[string](value1767) + default: + panic("unreachable") + } + + option1769 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1764, option1766, option1768}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyF32Type(option1769) + + case 11: + var option1776 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1776 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1771 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1771 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1770 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1770 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1770 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1770 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1771 = witTypes.Some[golem_core_types.NumericBound](variant1770) + default: + panic("unreachable") + } + var option1773 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1773 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1772 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1772 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1772 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1772 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1773 = witTypes.Some[golem_core_types.NumericBound](variant1772) + default: + panic("unreachable") + } + var option1775 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1775 = witTypes.None[string]() + case 1: + value1774 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1775 = witTypes.Some[string](value1774) + default: + panic("unreachable") + } + + option1776 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1771, option1773, option1775}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyF64Type(option1776) + + case 12: + + variant1870 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1870 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1789 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1777 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1779 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1779 = witTypes.None[string]() + case 1: + value1778 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1779 = witTypes.Some[string](value1778) + default: + panic("unreachable") + } + result1781 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1780 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1781 = append(result1781, value1780) + } + + result1783 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1782 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1783 = append(result1783, value1782) + } + + var option1785 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1785 = witTypes.None[string]() + case 1: + value1784 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1785 = witTypes.Some[string](value1784) + default: + panic("unreachable") + } + var option1788 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1788 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1787 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1787 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1787 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1787 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1786 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1787 = golem_core_types.MakeRoleOther(value1786) + + default: + panic("unreachable") + } + + option1788 = witTypes.Some[golem_core_types.Role](variant1787) + default: + panic("unreachable") + } + + result1789 = append(result1789, golem_core_types.NamedFieldType{value1777, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1779, result1781, result1783, option1785, option1788}}) + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyRecordType(result1789) + + case 15: + result1803 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1790 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1791 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1791 = witTypes.None[int32]() + case 1: + + option1791 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1793 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1793 = witTypes.None[string]() + case 1: + value1792 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1793 = witTypes.Some[string](value1792) + default: + panic("unreachable") + } + result1795 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1794 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1795 = append(result1795, value1794) + } + + result1797 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1796 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1797 = append(result1797, value1796) + } + + var option1799 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1799 = witTypes.None[string]() + case 1: + value1798 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1799 = witTypes.Some[string](value1798) + default: + panic("unreachable") + } + var option1802 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1802 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1801 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1801 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1801 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1801 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1800 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1801 = golem_core_types.MakeRoleOther(value1800) + + default: + panic("unreachable") + } + + option1802 = witTypes.Some[golem_core_types.Role](variant1801) + default: + panic("unreachable") + } + + result1803 = append(result1803, golem_core_types.VariantCaseType{value1790, option1791, golem_core_types.MetadataEnvelope{option1793, result1795, result1797, option1799, option1802}}) + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyVariantType(result1803) + + case 16: + result1805 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1804 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1805 = append(result1805, value1804) + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyEnumType(result1805) + + case 17: + result1807 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1806 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1807 = append(result1807, value1806) + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1807) + + case 18: + result1808 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1808 = append(result1808, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyTupleType(result1808) + + case 19: + + variant1870 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1870 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1870 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1870 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1809 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1809 = witTypes.None[int32]() + case 1: + + option1809 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1810 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1810 = witTypes.None[int32]() + case 1: + + option1810 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1809, option1810}) + + case 24: + var option1813 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1813 = witTypes.None[[]string]() + case 1: + result1812 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1811 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1812 = append(result1812, value1811) + } + + option1813 = witTypes.Some[[]string](result1812) + default: + panic("unreachable") + } + var option1814 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1814 = witTypes.None[uint32]() + case 1: + + option1814 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1815 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1815 = witTypes.None[uint32]() + case 1: + + option1815 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1817 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1817 = witTypes.None[string]() + case 1: + value1816 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1817 = witTypes.Some[string](value1816) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1813, option1814, option1815, option1817}) + + case 25: + var option1820 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1820 = witTypes.None[[]string]() + case 1: + result1819 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1818 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1819 = append(result1819, value1818) + } + + option1820 = witTypes.Some[[]string](result1819) + default: + panic("unreachable") + } + var option1821 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1821 = witTypes.None[uint32]() + case 1: + + option1821 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1822 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1822 = witTypes.None[uint32]() + case 1: + + option1822 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1820, option1821, option1822}) + + case 26: + var option1825 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1825 = witTypes.None[[]string]() + case 1: + result1824 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1823 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1824 = append(result1824, value1823) + } + + option1825 = witTypes.Some[[]string](result1824) + default: + panic("unreachable") + } + var option1828 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1828 = witTypes.None[[]string]() + case 1: + result1827 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1826 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1827 = append(result1827, value1826) + } + + option1828 = witTypes.Some[[]string](result1827) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1825, option1828}) + + case 27: + var option1831 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1831 = witTypes.None[[]string]() + case 1: + result1830 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1829 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1830 = append(result1830, value1829) + } + + option1831 = witTypes.Some[[]string](result1830) + default: + panic("unreachable") + } + var option1834 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1834 = witTypes.None[[]string]() + case 1: + result1833 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1832 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1833 = append(result1833, value1832) + } + + option1834 = witTypes.Some[[]string](result1833) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1831, option1834}) + + case 28: + + variant1870 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1870 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1835 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1837 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1836 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1837 = append(result1837, value1836) + } + + var option1839 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1839 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1838 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1839 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1838}) + default: + panic("unreachable") + } + var option1841 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1841 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1840 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1841 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1840}) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1835, result1837, option1839, option1841}) + + case 31: + result1863 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1842 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1851 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1843 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1851 = golem_core_types.MakeDiscriminatorRulePrefix(value1843) + + case 1: + value1844 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1851 = golem_core_types.MakeDiscriminatorRuleSuffix(value1844) + + case 2: + value1845 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1851 = golem_core_types.MakeDiscriminatorRuleContains(value1845) + + case 3: + value1846 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1851 = golem_core_types.MakeDiscriminatorRuleRegex(value1846) + + case 4: + value1847 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1849 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1849 = witTypes.None[string]() + case 1: + value1848 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1849 = witTypes.Some[string](value1848) + default: + panic("unreachable") + } + + variant1851 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1847, option1849}) + + case 5: + value1850 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1851 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1850) + + default: + panic("unreachable") + } + var option1853 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1853 = witTypes.None[string]() + case 1: + value1852 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1853 = witTypes.Some[string](value1852) + default: + panic("unreachable") + } + result1855 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1854 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1855 = append(result1855, value1854) + } + + result1857 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1856 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1857 = append(result1857, value1856) + } + + var option1859 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1859 = witTypes.None[string]() + case 1: + value1858 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1859 = witTypes.Some[string](value1858) + default: + panic("unreachable") + } + var option1862 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1862 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1861 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1861 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1861 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1861 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1860 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1861 = golem_core_types.MakeRoleOther(value1860) + + default: + panic("unreachable") + } + + option1862 = witTypes.Some[golem_core_types.Role](variant1861) + default: + panic("unreachable") + } + + result1863 = append(result1863, golem_core_types.UnionBranch{value1842, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1851, golem_core_types.MetadataEnvelope{option1853, result1855, result1857, option1859, option1862}}) + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1863}) + + case 32: + var option1865 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1865 = witTypes.None[string]() + case 1: + value1864 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1865 = witTypes.Some[string](value1864) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1865}) + + case 33: + var option1867 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1867 = witTypes.None[string]() + case 1: + value1866 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1867 = witTypes.Some[string](value1866) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1867}) + + case 34: + var option1868 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1868 = witTypes.None[int32]() + case 1: + + option1868 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyFutureType(option1868) + + case 35: + var option1869 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1869 = witTypes.None[int32]() + case 1: + + option1869 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1870 = golem_core_types.MakeSchemaTypeBodyStreamType(option1869) + + default: + panic("unreachable") + } + var option1872 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1872 = witTypes.None[string]() + case 1: + value1871 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1872 = witTypes.Some[string](value1871) + default: + panic("unreachable") + } + result1874 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1873 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1874 = append(result1874, value1873) + } + + result1876 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1875 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1876 = append(result1876, value1875) + } + + var option1878 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1878 = witTypes.None[string]() + case 1: + value1877 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1878 = witTypes.Some[string](value1877) + default: + panic("unreachable") + } + var option1881 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1881 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1880 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1880 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1880 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1880 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1879 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1880 = golem_core_types.MakeRoleOther(value1879) + + default: + panic("unreachable") + } + + option1881 = witTypes.Some[golem_core_types.Role](variant1880) + default: + panic("unreachable") + } + + result1882 = append(result1882, golem_core_types.SchemaTypeNode{variant1870, golem_core_types.MetadataEnvelope{option1872, result1874, result1876, option1878, option1881}}) + } + + result1886 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))))), index*(6*4)) + value1883 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1885 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1885 = witTypes.None[string]() + case 1: + value1884 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1885 = witTypes.Some[string](value1884) + default: + panic("unreachable") + } + + result1886 = append(result1886, golem_core_types.SchemaTypeDef{value1883, option1885, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1910 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))))), index*(16+4*4)) + var variant1909 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1909 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1909 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1909 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1909 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1909 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1909 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1909 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1909 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1909 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1909 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1909 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1909 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1887 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1909 = golem_core_types.MakeSchemaValueNodeStringValue(value1887) + + case 13: + result1888 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1888 = append(result1888, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1909 = golem_core_types.MakeSchemaValueNodeRecordValue(result1888) + + case 14: + var option1889 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1889 = witTypes.None[int32]() + case 1: + + option1889 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1909 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1889}) + + case 15: + + variant1909 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1890 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1890 = append(result1890, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1909 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1890) + + case 17: + result1891 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1891 = append(result1891, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1909 = golem_core_types.MakeSchemaValueNodeTupleValue(result1891) + + case 18: + result1892 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1892 = append(result1892, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1909 = golem_core_types.MakeSchemaValueNodeListValue(result1892) + + case 19: + result1893 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1893 = append(result1893, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1909 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1893) + + case 20: + result1894 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1894 = append(result1894, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1909 = golem_core_types.MakeSchemaValueNodeMapValue(result1894) + + case 21: + var option1895 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1895 = witTypes.None[int32]() + case 1: + + option1895 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1909 = golem_core_types.MakeSchemaValueNodeOptionValue(option1895) + + case 22: + var variant1898 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1896 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1896 = witTypes.None[int32]() + case 1: + + option1896 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1898 = golem_core_types.MakeResultValuePayloadOkValue(option1896) + + case 1: + var option1897 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1897 = witTypes.None[int32]() + case 1: + + option1897 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1898 = golem_core_types.MakeResultValuePayloadErrValue(option1897) + + default: + panic("unreachable") + } + + variant1909 = golem_core_types.MakeSchemaValueNodeResultValue(variant1898) + + case 23: + value1899 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1901 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1901 = witTypes.None[string]() + case 1: + value1900 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1901 = witTypes.Some[string](value1900) + default: + panic("unreachable") + } + + variant1909 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1899, option1901}) + + case 24: + value1902 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1904 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1904 = witTypes.None[string]() + case 1: + value1903 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1904 = witTypes.Some[string](value1903) + default: + panic("unreachable") + } + + variant1909 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1902, option1904}) + + case 25: + value1905 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1909 = golem_core_types.MakeSchemaValueNodePathValue(value1905) + + case 26: + value1906 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1909 = golem_core_types.MakeSchemaValueNodeUrlValue(value1906) + + case 27: + + variant1909 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1909 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1907 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1909 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1907}) + + case 30: + value1908 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1909 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1908, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1909 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1909 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1910 = append(result1910, variant1909) + } + + variant1917 = MakeAgentInvocationResultAgentMethod(AgentInvocationOutputParameters{golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1882, result1886, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))}, golem_core_types.SchemaValueTree{result1910, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 8*4)))}}}) + + case 2: + + variant1917 = MakeAgentInvocationResultManualUpdate() + + case 3: + var option1912 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) { + case 0: + + option1912 = witTypes.None[string]() + case 1: + value1911 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + + option1912 = witTypes.Some[string](value1911) + default: + panic("unreachable") + } + + variant1917 = MakeAgentInvocationResultLoadSnapshot(FallibleResultParameters{option1912}) + + case 4: + value1913 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + value1914 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + variant1917 = MakeAgentInvocationResultSaveSnapshot(SaveSnapshotResultParameters{SnapshotData{value1913, value1914}}) + + case 5: + var option1916 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) { + case 0: + + option1916 = witTypes.None[string]() + case 1: + value1915 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + + option1916 = witTypes.Some[string](value1915) + default: + panic("unreachable") + } + + variant1917 = MakeAgentInvocationResultProcessOplogEntries(FallibleResultParameters{option1916}) + + default: + panic("unreachable") + } + var option1919 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 9*4)))) { + case 0: + + option1919 = witTypes.None[string]() + case 1: + value1918 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 11*4)))) + + option1919 = witTypes.Some[string](value1918) + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryAgentInvocationFinished(AgentInvocationFinishedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant1917, option1919, *(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))))}) + + case 6: + + variant2693 = MakePublicOplogEntrySuspend(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 7: + value1920 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + var option1923 witTypes.Option[RetryPolicyState] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) { + case 0: + + option1923 = witTypes.None[RetryPolicyState]() + case 1: + result1922 := make([]StateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*16) + var variant1921 StateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1921 = MakeStateNodeCounter(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)))) + + case 1: + + variant1921 = MakeStateNodeTerminal() + + case 2: + + variant1921 = MakeStateNodeWrapper(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4))) + + case 3: + + variant1921 = MakeStateNodeCountBox(CountBoxState{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 4: + + variant1921 = MakeStateNodeAndThen(AndThenState{*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) != 0)}) + + case 5: + + variant1921 = MakeStateNodePair(PairState{*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8))}) + + default: + panic("unreachable") + } + + result1922 = append(result1922, variant1921) + } + + option1923 = witTypes.Some[RetryPolicyState](RetryPolicyState{result1922}) + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryError(ErrorParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value1920, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))), (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) != 0), option1923}) + + case 8: + + variant2693 = MakePublicOplogEntryNoOp(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 9: + + variant2693 = MakePublicOplogEntryJump(JumpParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, OplogRegion{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}) + + case 10: + + variant2693 = MakePublicOplogEntryInterrupted(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 11: + + variant2693 = MakePublicOplogEntryExited(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 12: + + variant2693 = MakePublicOplogEntryBeginAtomicRegion(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 13: + + variant2693 = MakePublicOplogEntryEndAtomicRegion(EndAtomicRegionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 14: + var variant2368 AgentInvocation + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + value1924 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + result2100 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))))), index*(56+22*4)) + var variant2088 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2088 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant2088 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1931 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1931 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1926 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1926 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1925 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1925 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1925 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1925 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1926 = witTypes.Some[golem_core_types.NumericBound](variant1925) + default: + panic("unreachable") + } + var option1928 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1928 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1927 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1927 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1927 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1927 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1928 = witTypes.Some[golem_core_types.NumericBound](variant1927) + default: + panic("unreachable") + } + var option1930 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1930 = witTypes.None[string]() + case 1: + value1929 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1930 = witTypes.Some[string](value1929) + default: + panic("unreachable") + } + + option1931 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1926, option1928, option1930}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyS8Type(option1931) + + case 3: + var option1938 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1938 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1933 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1933 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1932 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1932 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1932 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1932 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1933 = witTypes.Some[golem_core_types.NumericBound](variant1932) + default: + panic("unreachable") + } + var option1935 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1935 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1934 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1934 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1934 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1934 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1935 = witTypes.Some[golem_core_types.NumericBound](variant1934) + default: + panic("unreachable") + } + var option1937 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1937 = witTypes.None[string]() + case 1: + value1936 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1937 = witTypes.Some[string](value1936) + default: + panic("unreachable") + } + + option1938 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1933, option1935, option1937}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyS16Type(option1938) + + case 4: + var option1945 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1945 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1940 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1940 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1939 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1939 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1939 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1939 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1940 = witTypes.Some[golem_core_types.NumericBound](variant1939) + default: + panic("unreachable") + } + var option1942 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1942 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1941 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1941 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1941 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1941 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1942 = witTypes.Some[golem_core_types.NumericBound](variant1941) + default: + panic("unreachable") + } + var option1944 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1944 = witTypes.None[string]() + case 1: + value1943 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1944 = witTypes.Some[string](value1943) + default: + panic("unreachable") + } + + option1945 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1940, option1942, option1944}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyS32Type(option1945) + + case 5: + var option1952 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1952 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1947 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1947 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1946 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1946 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1946 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1946 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1947 = witTypes.Some[golem_core_types.NumericBound](variant1946) + default: + panic("unreachable") + } + var option1949 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1949 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1948 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1948 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1948 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1948 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1949 = witTypes.Some[golem_core_types.NumericBound](variant1948) + default: + panic("unreachable") + } + var option1951 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1951 = witTypes.None[string]() + case 1: + value1950 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1951 = witTypes.Some[string](value1950) + default: + panic("unreachable") + } + + option1952 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1947, option1949, option1951}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyS64Type(option1952) + + case 6: + var option1959 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1959 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1954 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1954 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1953 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1953 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1953 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1953 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1954 = witTypes.Some[golem_core_types.NumericBound](variant1953) + default: + panic("unreachable") + } + var option1956 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1956 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1955 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1955 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1955 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1955 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1956 = witTypes.Some[golem_core_types.NumericBound](variant1955) + default: + panic("unreachable") + } + var option1958 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1958 = witTypes.None[string]() + case 1: + value1957 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1958 = witTypes.Some[string](value1957) + default: + panic("unreachable") + } + + option1959 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1954, option1956, option1958}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyU8Type(option1959) + + case 7: + var option1966 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1966 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1961 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1961 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1960 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1960 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1960 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1960 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1961 = witTypes.Some[golem_core_types.NumericBound](variant1960) + default: + panic("unreachable") + } + var option1963 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1963 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1962 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1962 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1962 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1962 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1963 = witTypes.Some[golem_core_types.NumericBound](variant1962) + default: + panic("unreachable") + } + var option1965 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1965 = witTypes.None[string]() + case 1: + value1964 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1965 = witTypes.Some[string](value1964) + default: + panic("unreachable") + } + + option1966 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1961, option1963, option1965}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyU16Type(option1966) + + case 8: + var option1973 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1973 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1968 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1968 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1967 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1967 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1967 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1967 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1968 = witTypes.Some[golem_core_types.NumericBound](variant1967) + default: + panic("unreachable") + } + var option1970 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1970 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1969 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1969 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1969 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1969 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1970 = witTypes.Some[golem_core_types.NumericBound](variant1969) + default: + panic("unreachable") + } + var option1972 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1972 = witTypes.None[string]() + case 1: + value1971 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1972 = witTypes.Some[string](value1971) + default: + panic("unreachable") + } + + option1973 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1968, option1970, option1972}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyU32Type(option1973) + + case 9: + var option1980 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1980 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1975 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1975 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1974 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1974 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1974 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1974 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1975 = witTypes.Some[golem_core_types.NumericBound](variant1974) + default: + panic("unreachable") + } + var option1977 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1977 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1976 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1976 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1976 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1976 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1977 = witTypes.Some[golem_core_types.NumericBound](variant1976) + default: + panic("unreachable") + } + var option1979 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1979 = witTypes.None[string]() + case 1: + value1978 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1979 = witTypes.Some[string](value1978) + default: + panic("unreachable") + } + + option1980 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1975, option1977, option1979}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyU64Type(option1980) + + case 10: + var option1987 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1987 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1982 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1982 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1981 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1981 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1981 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1981 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1982 = witTypes.Some[golem_core_types.NumericBound](variant1981) + default: + panic("unreachable") + } + var option1984 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1984 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1983 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1983 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1983 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1983 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1984 = witTypes.Some[golem_core_types.NumericBound](variant1983) + default: + panic("unreachable") + } + var option1986 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1986 = witTypes.None[string]() + case 1: + value1985 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1986 = witTypes.Some[string](value1985) + default: + panic("unreachable") + } + + option1987 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1982, option1984, option1986}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyF32Type(option1987) + + case 11: + var option1994 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1994 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1989 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1989 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1988 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1988 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1988 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1988 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1989 = witTypes.Some[golem_core_types.NumericBound](variant1988) + default: + panic("unreachable") + } + var option1991 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1991 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1990 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1990 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1990 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1990 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1991 = witTypes.Some[golem_core_types.NumericBound](variant1990) + default: + panic("unreachable") + } + var option1993 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1993 = witTypes.None[string]() + case 1: + value1992 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1993 = witTypes.Some[string](value1992) + default: + panic("unreachable") + } + + option1994 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1989, option1991, option1993}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyF64Type(option1994) + + case 12: + + variant2088 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant2088 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result2007 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1995 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1997 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1997 = witTypes.None[string]() + case 1: + value1996 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1997 = witTypes.Some[string](value1996) + default: + panic("unreachable") + } + result1999 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1998 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1999 = append(result1999, value1998) + } + + result2001 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value2000 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2001 = append(result2001, value2000) + } + + var option2003 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option2003 = witTypes.None[string]() + case 1: + value2002 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option2003 = witTypes.Some[string](value2002) + default: + panic("unreachable") + } + var option2006 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option2006 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2005 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant2005 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2005 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2005 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2004 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant2005 = golem_core_types.MakeRoleOther(value2004) + + default: + panic("unreachable") + } + + option2006 = witTypes.Some[golem_core_types.Role](variant2005) + default: + panic("unreachable") + } + + result2007 = append(result2007, golem_core_types.NamedFieldType{value1995, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1997, result1999, result2001, option2003, option2006}}) + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyRecordType(result2007) + + case 15: + result2021 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value2008 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2009 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2009 = witTypes.None[int32]() + case 1: + + option2009 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option2011 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2011 = witTypes.None[string]() + case 1: + value2010 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2011 = witTypes.Some[string](value2010) + default: + panic("unreachable") + } + result2013 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2012 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2013 = append(result2013, value2012) + } + + result2015 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value2014 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2015 = append(result2015, value2014) + } + + var option2017 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option2017 = witTypes.None[string]() + case 1: + value2016 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option2017 = witTypes.Some[string](value2016) + default: + panic("unreachable") + } + var option2020 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option2020 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2019 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant2019 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2019 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2019 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2018 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant2019 = golem_core_types.MakeRoleOther(value2018) + + default: + panic("unreachable") + } + + option2020 = witTypes.Some[golem_core_types.Role](variant2019) + default: + panic("unreachable") + } + + result2021 = append(result2021, golem_core_types.VariantCaseType{value2008, option2009, golem_core_types.MetadataEnvelope{option2011, result2013, result2015, option2017, option2020}}) + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyVariantType(result2021) + + case 16: + result2023 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2022 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2023 = append(result2023, value2022) + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyEnumType(result2023) + + case 17: + result2025 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2024 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2025 = append(result2025, value2024) + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyFlagsType(result2025) + + case 18: + result2026 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2026 = append(result2026, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyTupleType(result2026) + + case 19: + + variant2088 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant2088 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant2088 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant2088 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option2027 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2027 = witTypes.None[int32]() + case 1: + + option2027 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option2028 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2028 = witTypes.None[int32]() + case 1: + + option2028 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option2027, option2028}) + + case 24: + var option2031 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2031 = witTypes.None[[]string]() + case 1: + result2030 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2029 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2030 = append(result2030, value2029) + } + + option2031 = witTypes.Some[[]string](result2030) + default: + panic("unreachable") + } + var option2032 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2032 = witTypes.None[uint32]() + case 1: + + option2032 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2033 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2033 = witTypes.None[uint32]() + case 1: + + option2033 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option2035 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option2035 = witTypes.None[string]() + case 1: + value2034 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option2035 = witTypes.Some[string](value2034) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option2031, option2032, option2033, option2035}) + + case 25: + var option2038 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2038 = witTypes.None[[]string]() + case 1: + result2037 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2036 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2037 = append(result2037, value2036) + } + + option2038 = witTypes.Some[[]string](result2037) + default: + panic("unreachable") + } + var option2039 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2039 = witTypes.None[uint32]() + case 1: + + option2039 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2040 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2040 = witTypes.None[uint32]() + case 1: + + option2040 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option2038, option2039, option2040}) + + case 26: + var option2043 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2043 = witTypes.None[[]string]() + case 1: + result2042 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2041 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2042 = append(result2042, value2041) + } + + option2043 = witTypes.Some[[]string](result2042) + default: + panic("unreachable") + } + var option2046 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2046 = witTypes.None[[]string]() + case 1: + result2045 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2044 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2045 = append(result2045, value2044) + } + + option2046 = witTypes.Some[[]string](result2045) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option2043, option2046}) + + case 27: + var option2049 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2049 = witTypes.None[[]string]() + case 1: + result2048 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2047 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2048 = append(result2048, value2047) + } + + option2049 = witTypes.Some[[]string](result2048) + default: + panic("unreachable") + } + var option2052 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2052 = witTypes.None[[]string]() + case 1: + result2051 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value2050 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2051 = append(result2051, value2050) + } + + option2052 = witTypes.Some[[]string](result2051) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option2049, option2052}) + + case 28: + + variant2088 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant2088 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value2053 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2055 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2054 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2055 = append(result2055, value2054) + } + + var option2057 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2057 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2056 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option2057 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value2056}) + default: + panic("unreachable") + } + var option2059 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option2059 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2058 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option2059 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value2058}) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value2053, result2055, option2057, option2059}) + + case 31: + result2081 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value2060 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2069 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value2061 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2069 = golem_core_types.MakeDiscriminatorRulePrefix(value2061) + + case 1: + value2062 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2069 = golem_core_types.MakeDiscriminatorRuleSuffix(value2062) + + case 2: + value2063 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2069 = golem_core_types.MakeDiscriminatorRuleContains(value2063) + + case 3: + value2064 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2069 = golem_core_types.MakeDiscriminatorRuleRegex(value2064) + + case 4: + value2065 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option2067 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option2067 = witTypes.None[string]() + case 1: + value2066 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option2067 = witTypes.Some[string](value2066) + default: + panic("unreachable") + } + + variant2069 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value2065, option2067}) + + case 5: + value2068 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2069 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value2068) + + default: + panic("unreachable") + } + var option2071 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option2071 = witTypes.None[string]() + case 1: + value2070 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option2071 = witTypes.Some[string](value2070) + default: + panic("unreachable") + } + result2073 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value2072 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2073 = append(result2073, value2072) + } + + result2075 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value2074 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2075 = append(result2075, value2074) + } + + var option2077 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option2077 = witTypes.None[string]() + case 1: + value2076 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option2077 = witTypes.Some[string](value2076) + default: + panic("unreachable") + } + var option2080 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option2080 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2079 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant2079 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2079 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2079 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2078 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant2079 = golem_core_types.MakeRoleOther(value2078) + + default: + panic("unreachable") + } + + option2080 = witTypes.Some[golem_core_types.Role](variant2079) + default: + panic("unreachable") + } + + result2081 = append(result2081, golem_core_types.UnionBranch{value2060, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant2069, golem_core_types.MetadataEnvelope{option2071, result2073, result2075, option2077, option2080}}) + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result2081}) + + case 32: + var option2083 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2083 = witTypes.None[string]() + case 1: + value2082 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option2083 = witTypes.Some[string](value2082) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option2083}) + + case 33: + var option2085 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2085 = witTypes.None[string]() + case 1: + value2084 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option2085 = witTypes.Some[string](value2084) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option2085}) + + case 34: + var option2086 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2086 = witTypes.None[int32]() + case 1: + + option2086 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyFutureType(option2086) + + case 35: + var option2087 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2087 = witTypes.None[int32]() + case 1: + + option2087 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2088 = golem_core_types.MakeSchemaTypeBodyStreamType(option2087) + + default: + panic("unreachable") + } + var option2090 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option2090 = witTypes.None[string]() + case 1: + value2089 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option2090 = witTypes.Some[string](value2089) + default: + panic("unreachable") + } + result2092 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value2091 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2092 = append(result2092, value2091) + } + + result2094 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value2093 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2094 = append(result2094, value2093) + } + + var option2096 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option2096 = witTypes.None[string]() + case 1: + value2095 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option2096 = witTypes.Some[string](value2095) + default: + panic("unreachable") + } + var option2099 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option2099 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2098 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant2098 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2098 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2098 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2097 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant2098 = golem_core_types.MakeRoleOther(value2097) + + default: + panic("unreachable") + } + + option2099 = witTypes.Some[golem_core_types.Role](variant2098) + default: + panic("unreachable") + } + + result2100 = append(result2100, golem_core_types.SchemaTypeNode{variant2088, golem_core_types.MetadataEnvelope{option2090, result2092, result2094, option2096, option2099}}) + } + + result2104 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(6*4)) + value2101 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2103 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2103 = witTypes.None[string]() + case 1: + value2102 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option2103 = witTypes.Some[string](value2102) + default: + panic("unreachable") + } + + result2104 = append(result2104, golem_core_types.SchemaTypeDef{value2101, option2103, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result2128 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4))))), index*(16+4*4)) + var variant2127 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2127 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant2127 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant2127 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant2127 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant2127 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant2127 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant2127 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant2127 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant2127 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant2127 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant2127 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant2127 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value2105 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2127 = golem_core_types.MakeSchemaValueNodeStringValue(value2105) + + case 13: + result2106 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2106 = append(result2106, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2127 = golem_core_types.MakeSchemaValueNodeRecordValue(result2106) + + case 14: + var option2107 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2107 = witTypes.None[int32]() + case 1: + + option2107 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2127 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option2107}) + + case 15: + + variant2127 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result2108 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result2108 = append(result2108, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant2127 = golem_core_types.MakeSchemaValueNodeFlagsValue(result2108) + + case 17: + result2109 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2109 = append(result2109, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2127 = golem_core_types.MakeSchemaValueNodeTupleValue(result2109) + + case 18: + result2110 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2110 = append(result2110, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2127 = golem_core_types.MakeSchemaValueNodeListValue(result2110) + + case 19: + result2111 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2111 = append(result2111, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2127 = golem_core_types.MakeSchemaValueNodeFixedListValue(result2111) + + case 20: + result2112 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result2112 = append(result2112, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant2127 = golem_core_types.MakeSchemaValueNodeMapValue(result2112) + + case 21: + var option2113 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2113 = witTypes.None[int32]() + case 1: + + option2113 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2127 = golem_core_types.MakeSchemaValueNodeOptionValue(option2113) + + case 22: + var variant2116 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option2114 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2114 = witTypes.None[int32]() + case 1: + + option2114 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2116 = golem_core_types.MakeResultValuePayloadOkValue(option2114) + + case 1: + var option2115 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2115 = witTypes.None[int32]() + case 1: + + option2115 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2116 = golem_core_types.MakeResultValuePayloadErrValue(option2115) + + default: + panic("unreachable") + } + + variant2127 = golem_core_types.MakeSchemaValueNodeResultValue(variant2116) + + case 23: + value2117 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2119 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2119 = witTypes.None[string]() + case 1: + value2118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2119 = witTypes.Some[string](value2118) + default: + panic("unreachable") + } + + variant2127 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value2117, option2119}) + + case 24: + value2120 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2122 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2122 = witTypes.None[string]() + case 1: + value2121 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2122 = witTypes.Some[string](value2121) + default: + panic("unreachable") + } + + variant2127 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value2120, option2122}) + + case 25: + value2123 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2127 = golem_core_types.MakeSchemaValueNodePathValue(value2123) + + case 26: + value2124 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2127 = golem_core_types.MakeSchemaValueNodeUrlValue(value2124) + + case 27: + + variant2127 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant2127 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value2125 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant2127 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2125}) + + case 30: + value2126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2127 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value2126, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant2127 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant2127 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result2128 = append(result2128, variant2127) + } + + value2129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))) + result2131 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))))), index*(2*4)) + value2130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2131 = append(result2131, value2130) + } + + result2143 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + result2142 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant2141 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2134 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option2134 = witTypes.None[string]() + case 1: + value2133 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option2134 = witTypes.Some[string](value2133) + default: + panic("unreachable") + } + var option2135 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option2135 = witTypes.None[uint64]() + case 1: + + option2135 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result2139 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value2136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2138 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value2137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant2138 = golem_api_context.MakeAttributeValueString(value2137) + + default: + panic("unreachable") + } + + result2139 = append(result2139, golem_api_context.Attribute{value2136, variant2138}) + } + + variant2141 = MakeSpanDataLocalSpan(LocalSpanData{value2132, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option2134, option2135, result2139, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value2140 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2141 = MakeSpanDataExternalSpan(ExternalSpanData{value2140}) + + default: + panic("unreachable") + } + + result2142 = append(result2142, variant2141) + } + + result2143 = append(result2143, result2142) + } + + variant2368 = MakeAgentInvocationAgentInitialization(AgentInitializationParameters{value1924, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result2100, result2104, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))}, golem_core_types.SchemaValueTree{result2128, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))}}, value2129, result2131, result2143}) + + case 1: + value2144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + result2321 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(56+22*4)) + var variant2309 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2309 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant2309 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option2152 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2152 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2147 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2147 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2146 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2146 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2146 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2146 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2147 = witTypes.Some[golem_core_types.NumericBound](variant2146) + default: + panic("unreachable") + } + var option2149 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2149 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2148 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2148 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2148 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2148 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2149 = witTypes.Some[golem_core_types.NumericBound](variant2148) + default: + panic("unreachable") + } + var option2151 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2151 = witTypes.None[string]() + case 1: + value2150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2151 = witTypes.Some[string](value2150) + default: + panic("unreachable") + } + + option2152 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2147, option2149, option2151}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyS8Type(option2152) + + case 3: + var option2159 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2159 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2154 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2154 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2153 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2153 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2153 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2153 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2154 = witTypes.Some[golem_core_types.NumericBound](variant2153) + default: + panic("unreachable") + } + var option2156 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2156 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2155 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2155 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2155 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2155 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2156 = witTypes.Some[golem_core_types.NumericBound](variant2155) + default: + panic("unreachable") + } + var option2158 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2158 = witTypes.None[string]() + case 1: + value2157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2158 = witTypes.Some[string](value2157) + default: + panic("unreachable") + } + + option2159 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2154, option2156, option2158}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyS16Type(option2159) + + case 4: + var option2166 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2166 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2161 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2161 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2160 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2160 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2160 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2160 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2161 = witTypes.Some[golem_core_types.NumericBound](variant2160) + default: + panic("unreachable") + } + var option2163 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2163 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2162 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2162 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2162 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2162 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2163 = witTypes.Some[golem_core_types.NumericBound](variant2162) + default: + panic("unreachable") + } + var option2165 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2165 = witTypes.None[string]() + case 1: + value2164 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2165 = witTypes.Some[string](value2164) + default: + panic("unreachable") + } + + option2166 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2161, option2163, option2165}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyS32Type(option2166) + + case 5: + var option2173 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2173 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2168 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2168 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2167 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2167 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2167 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2167 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2168 = witTypes.Some[golem_core_types.NumericBound](variant2167) + default: + panic("unreachable") + } + var option2170 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2170 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2169 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2169 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2169 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2169 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2170 = witTypes.Some[golem_core_types.NumericBound](variant2169) + default: + panic("unreachable") + } + var option2172 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2172 = witTypes.None[string]() + case 1: + value2171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2172 = witTypes.Some[string](value2171) + default: + panic("unreachable") + } + + option2173 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2168, option2170, option2172}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyS64Type(option2173) + + case 6: + var option2180 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2180 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2175 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2175 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2174 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2174 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2174 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2174 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2175 = witTypes.Some[golem_core_types.NumericBound](variant2174) + default: + panic("unreachable") + } + var option2177 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2177 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2176 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2176 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2176 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2176 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2177 = witTypes.Some[golem_core_types.NumericBound](variant2176) + default: + panic("unreachable") + } + var option2179 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2179 = witTypes.None[string]() + case 1: + value2178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2179 = witTypes.Some[string](value2178) + default: + panic("unreachable") + } + + option2180 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2175, option2177, option2179}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyU8Type(option2180) + + case 7: + var option2187 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2187 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2182 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2182 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2181 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2181 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2181 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2181 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2182 = witTypes.Some[golem_core_types.NumericBound](variant2181) + default: + panic("unreachable") + } + var option2184 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2184 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2183 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2183 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2183 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2183 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2184 = witTypes.Some[golem_core_types.NumericBound](variant2183) + default: + panic("unreachable") + } + var option2186 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2186 = witTypes.None[string]() + case 1: + value2185 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2186 = witTypes.Some[string](value2185) + default: + panic("unreachable") + } + + option2187 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2182, option2184, option2186}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyU16Type(option2187) + + case 8: + var option2194 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2194 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2189 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2189 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2188 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2188 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2188 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2188 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2189 = witTypes.Some[golem_core_types.NumericBound](variant2188) + default: + panic("unreachable") + } + var option2191 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2191 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2190 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2190 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2190 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2190 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2191 = witTypes.Some[golem_core_types.NumericBound](variant2190) + default: + panic("unreachable") + } + var option2193 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2193 = witTypes.None[string]() + case 1: + value2192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2193 = witTypes.Some[string](value2192) + default: + panic("unreachable") + } + + option2194 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2189, option2191, option2193}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyU32Type(option2194) + + case 9: + var option2201 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2201 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2196 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2196 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2195 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2195 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2195 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2195 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2196 = witTypes.Some[golem_core_types.NumericBound](variant2195) + default: + panic("unreachable") + } + var option2198 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2198 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2197 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2197 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2197 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2197 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2198 = witTypes.Some[golem_core_types.NumericBound](variant2197) + default: + panic("unreachable") + } + var option2200 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2200 = witTypes.None[string]() + case 1: + value2199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2200 = witTypes.Some[string](value2199) + default: + panic("unreachable") + } + + option2201 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2196, option2198, option2200}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyU64Type(option2201) + + case 10: + var option2208 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2208 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2203 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2203 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2202 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2202 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2202 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2202 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2203 = witTypes.Some[golem_core_types.NumericBound](variant2202) + default: + panic("unreachable") + } + var option2205 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2205 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2204 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2204 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2204 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2204 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2205 = witTypes.Some[golem_core_types.NumericBound](variant2204) + default: + panic("unreachable") + } + var option2207 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2207 = witTypes.None[string]() + case 1: + value2206 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2207 = witTypes.Some[string](value2206) + default: + panic("unreachable") + } + + option2208 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2203, option2205, option2207}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyF32Type(option2208) + + case 11: + var option2215 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2215 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2210 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2210 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2209 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2209 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2209 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2209 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2210 = witTypes.Some[golem_core_types.NumericBound](variant2209) + default: + panic("unreachable") + } + var option2212 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2212 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2211 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2211 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2211 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2211 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2212 = witTypes.Some[golem_core_types.NumericBound](variant2211) + default: + panic("unreachable") + } + var option2214 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2214 = witTypes.None[string]() + case 1: + value2213 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2214 = witTypes.Some[string](value2213) + default: + panic("unreachable") + } + + option2215 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2210, option2212, option2214}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyF64Type(option2215) + + case 12: + + variant2309 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant2309 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result2228 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value2216 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2218 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option2218 = witTypes.None[string]() + case 1: + value2217 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option2218 = witTypes.Some[string](value2217) + default: + panic("unreachable") + } + result2220 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value2219 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2220 = append(result2220, value2219) + } + + result2222 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value2221 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2222 = append(result2222, value2221) + } + + var option2224 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option2224 = witTypes.None[string]() + case 1: + value2223 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option2224 = witTypes.Some[string](value2223) + default: + panic("unreachable") + } + var option2227 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option2227 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2226 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant2226 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2226 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2226 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2225 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant2226 = golem_core_types.MakeRoleOther(value2225) + + default: + panic("unreachable") + } + + option2227 = witTypes.Some[golem_core_types.Role](variant2226) + default: + panic("unreachable") + } + + result2228 = append(result2228, golem_core_types.NamedFieldType{value2216, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option2218, result2220, result2222, option2224, option2227}}) + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyRecordType(result2228) + + case 15: + result2242 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value2229 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2230 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2230 = witTypes.None[int32]() + case 1: + + option2230 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option2232 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2232 = witTypes.None[string]() + case 1: + value2231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2232 = witTypes.Some[string](value2231) + default: + panic("unreachable") + } + result2234 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2233 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2234 = append(result2234, value2233) + } + + result2236 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value2235 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2236 = append(result2236, value2235) + } + + var option2238 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option2238 = witTypes.None[string]() + case 1: + value2237 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option2238 = witTypes.Some[string](value2237) + default: + panic("unreachable") + } + var option2241 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option2241 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2240 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant2240 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2240 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2240 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2239 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant2240 = golem_core_types.MakeRoleOther(value2239) + + default: + panic("unreachable") + } + + option2241 = witTypes.Some[golem_core_types.Role](variant2240) + default: + panic("unreachable") + } + + result2242 = append(result2242, golem_core_types.VariantCaseType{value2229, option2230, golem_core_types.MetadataEnvelope{option2232, result2234, result2236, option2238, option2241}}) + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyVariantType(result2242) + + case 16: + result2244 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2243 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2244 = append(result2244, value2243) + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyEnumType(result2244) + + case 17: + result2246 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2245 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2246 = append(result2246, value2245) + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyFlagsType(result2246) + + case 18: + result2247 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2247 = append(result2247, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyTupleType(result2247) + + case 19: + + variant2309 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant2309 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant2309 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant2309 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option2248 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2248 = witTypes.None[int32]() + case 1: + + option2248 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option2249 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2249 = witTypes.None[int32]() + case 1: + + option2249 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option2248, option2249}) + + case 24: + var option2252 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2252 = witTypes.None[[]string]() + case 1: + result2251 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2251 = append(result2251, value2250) + } + + option2252 = witTypes.Some[[]string](result2251) + default: + panic("unreachable") + } + var option2253 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2253 = witTypes.None[uint32]() + case 1: + + option2253 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2254 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2254 = witTypes.None[uint32]() + case 1: + + option2254 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option2256 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option2256 = witTypes.None[string]() + case 1: + value2255 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option2256 = witTypes.Some[string](value2255) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option2252, option2253, option2254, option2256}) + + case 25: + var option2259 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2259 = witTypes.None[[]string]() + case 1: + result2258 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2258 = append(result2258, value2257) + } + + option2259 = witTypes.Some[[]string](result2258) + default: + panic("unreachable") + } + var option2260 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2260 = witTypes.None[uint32]() + case 1: + + option2260 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2261 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2261 = witTypes.None[uint32]() + case 1: + + option2261 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option2259, option2260, option2261}) + + case 26: + var option2264 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2264 = witTypes.None[[]string]() + case 1: + result2263 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2262 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2263 = append(result2263, value2262) + } + + option2264 = witTypes.Some[[]string](result2263) + default: + panic("unreachable") + } + var option2267 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2267 = witTypes.None[[]string]() + case 1: + result2266 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2265 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2266 = append(result2266, value2265) + } + + option2267 = witTypes.Some[[]string](result2266) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option2264, option2267}) + + case 27: + var option2270 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2270 = witTypes.None[[]string]() + case 1: + result2269 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2268 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2269 = append(result2269, value2268) + } + + option2270 = witTypes.Some[[]string](result2269) + default: + panic("unreachable") + } + var option2273 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2273 = witTypes.None[[]string]() + case 1: + result2272 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value2271 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2272 = append(result2272, value2271) + } + + option2273 = witTypes.Some[[]string](result2272) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option2270, option2273}) + + case 28: + + variant2309 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant2309 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value2274 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2276 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2275 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2276 = append(result2276, value2275) + } + + var option2278 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2278 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2277 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option2278 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value2277}) + default: + panic("unreachable") + } + var option2280 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option2280 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2279 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option2280 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value2279}) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value2274, result2276, option2278, option2280}) + + case 31: + result2302 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value2281 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2290 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value2282 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2290 = golem_core_types.MakeDiscriminatorRulePrefix(value2282) + + case 1: + value2283 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2290 = golem_core_types.MakeDiscriminatorRuleSuffix(value2283) + + case 2: + value2284 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2290 = golem_core_types.MakeDiscriminatorRuleContains(value2284) + + case 3: + value2285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2290 = golem_core_types.MakeDiscriminatorRuleRegex(value2285) + + case 4: + value2286 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option2288 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option2288 = witTypes.None[string]() + case 1: + value2287 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option2288 = witTypes.Some[string](value2287) + default: + panic("unreachable") + } + + variant2290 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value2286, option2288}) + + case 5: + value2289 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2290 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value2289) + + default: + panic("unreachable") + } + var option2292 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option2292 = witTypes.None[string]() + case 1: + value2291 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option2292 = witTypes.Some[string](value2291) + default: + panic("unreachable") + } + result2294 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value2293 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2294 = append(result2294, value2293) + } + + result2296 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value2295 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2296 = append(result2296, value2295) + } + + var option2298 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option2298 = witTypes.None[string]() + case 1: + value2297 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option2298 = witTypes.Some[string](value2297) + default: + panic("unreachable") + } + var option2301 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option2301 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2300 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant2300 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2300 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2300 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2299 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant2300 = golem_core_types.MakeRoleOther(value2299) + + default: + panic("unreachable") + } + + option2301 = witTypes.Some[golem_core_types.Role](variant2300) + default: + panic("unreachable") + } + + result2302 = append(result2302, golem_core_types.UnionBranch{value2281, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant2290, golem_core_types.MetadataEnvelope{option2292, result2294, result2296, option2298, option2301}}) + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result2302}) + + case 32: + var option2304 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2304 = witTypes.None[string]() + case 1: + value2303 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option2304 = witTypes.Some[string](value2303) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option2304}) + + case 33: + var option2306 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2306 = witTypes.None[string]() + case 1: + value2305 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option2306 = witTypes.Some[string](value2305) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option2306}) + + case 34: + var option2307 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2307 = witTypes.None[int32]() + case 1: + + option2307 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyFutureType(option2307) + + case 35: + var option2308 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2308 = witTypes.None[int32]() + case 1: + + option2308 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2309 = golem_core_types.MakeSchemaTypeBodyStreamType(option2308) + + default: + panic("unreachable") + } + var option2311 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option2311 = witTypes.None[string]() + case 1: + value2310 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option2311 = witTypes.Some[string](value2310) + default: + panic("unreachable") + } + result2313 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value2312 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2313 = append(result2313, value2312) + } + + result2315 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value2314 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2315 = append(result2315, value2314) + } + + var option2317 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option2317 = witTypes.None[string]() + case 1: + value2316 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option2317 = witTypes.Some[string](value2316) + default: + panic("unreachable") + } + var option2320 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option2320 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2319 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant2319 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2319 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2319 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2318 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant2319 = golem_core_types.MakeRoleOther(value2318) + + default: + panic("unreachable") + } + + option2320 = witTypes.Some[golem_core_types.Role](variant2319) + default: + panic("unreachable") + } + + result2321 = append(result2321, golem_core_types.SchemaTypeNode{variant2309, golem_core_types.MetadataEnvelope{option2311, result2313, result2315, option2317, option2320}}) + } + + result2325 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(6*4)) + value2322 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2324 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2324 = witTypes.None[string]() + case 1: + value2323 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option2324 = witTypes.Some[string](value2323) + default: + panic("unreachable") + } + + result2325 = append(result2325, golem_core_types.SchemaTypeDef{value2322, option2324, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result2349 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4))))), index*(16+4*4)) + var variant2348 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2348 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant2348 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant2348 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant2348 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant2348 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant2348 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant2348 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant2348 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant2348 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant2348 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant2348 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant2348 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value2326 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2348 = golem_core_types.MakeSchemaValueNodeStringValue(value2326) + + case 13: + result2327 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2327 = append(result2327, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2348 = golem_core_types.MakeSchemaValueNodeRecordValue(result2327) + + case 14: + var option2328 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2328 = witTypes.None[int32]() + case 1: + + option2328 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2348 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option2328}) + + case 15: + + variant2348 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result2329 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result2329 = append(result2329, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant2348 = golem_core_types.MakeSchemaValueNodeFlagsValue(result2329) + + case 17: + result2330 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2330 = append(result2330, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2348 = golem_core_types.MakeSchemaValueNodeTupleValue(result2330) + + case 18: + result2331 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2331 = append(result2331, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2348 = golem_core_types.MakeSchemaValueNodeListValue(result2331) + + case 19: + result2332 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2332 = append(result2332, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2348 = golem_core_types.MakeSchemaValueNodeFixedListValue(result2332) + + case 20: + result2333 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result2333 = append(result2333, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant2348 = golem_core_types.MakeSchemaValueNodeMapValue(result2333) + + case 21: + var option2334 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2334 = witTypes.None[int32]() + case 1: + + option2334 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2348 = golem_core_types.MakeSchemaValueNodeOptionValue(option2334) + + case 22: + var variant2337 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option2335 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2335 = witTypes.None[int32]() + case 1: + + option2335 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2337 = golem_core_types.MakeResultValuePayloadOkValue(option2335) + + case 1: + var option2336 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2336 = witTypes.None[int32]() + case 1: + + option2336 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2337 = golem_core_types.MakeResultValuePayloadErrValue(option2336) + + default: + panic("unreachable") + } + + variant2348 = golem_core_types.MakeSchemaValueNodeResultValue(variant2337) + + case 23: + value2338 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2340 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2340 = witTypes.None[string]() + case 1: + value2339 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2340 = witTypes.Some[string](value2339) + default: + panic("unreachable") + } + + variant2348 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value2338, option2340}) + + case 24: + value2341 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2343 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2343 = witTypes.None[string]() + case 1: + value2342 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2343 = witTypes.Some[string](value2342) + default: + panic("unreachable") + } + + variant2348 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value2341, option2343}) + + case 25: + value2344 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2348 = golem_core_types.MakeSchemaValueNodePathValue(value2344) + + case 26: + value2345 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2348 = golem_core_types.MakeSchemaValueNodeUrlValue(value2345) + + case 27: + + variant2348 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant2348 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value2346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant2348 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2346}) + + case 30: + value2347 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2348 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value2347, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant2348 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant2348 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result2349 = append(result2349, variant2348) + } + + value2350 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + result2352 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + value2351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2352 = append(result2352, value2351) + } + + result2364 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 16*4))))), index*(2*4)) + result2363 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant2362 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2353 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2355 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option2355 = witTypes.None[string]() + case 1: + value2354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option2355 = witTypes.Some[string](value2354) + default: + panic("unreachable") + } + var option2356 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option2356 = witTypes.None[uint64]() + case 1: + + option2356 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result2360 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value2357 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2359 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value2358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant2359 = golem_api_context.MakeAttributeValueString(value2358) + + default: + panic("unreachable") + } + + result2360 = append(result2360, golem_api_context.Attribute{value2357, variant2359}) + } + + variant2362 = MakeSpanDataLocalSpan(LocalSpanData{value2353, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option2355, option2356, result2360, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value2361 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2362 = MakeSpanDataExternalSpan(ExternalSpanData{value2361}) + + default: + panic("unreachable") + } + + result2363 = append(result2363, variant2362) + } + + result2364 = append(result2364, result2363) + } + + variant2368 = MakeAgentInvocationAgentMethodInvocation(AgentMethodInvocationParameters{value2144, value2145, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result2321, result2325, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}, golem_core_types.SchemaValueTree{result2349, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))}}, value2350, result2352, result2364}) + + case 2: + + variant2368 = MakeAgentInvocationSaveSnapshot() + + case 3: + value2365 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2366 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant2368 = MakeAgentInvocationLoadSnapshot(LoadSnapshotParameters{SnapshotData{value2365, value2366}}) + + case 4: + value2367 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant2368 = MakeAgentInvocationProcessOplogEntries(ProcessOplogEntriesParameters{value2367}) + + case 5: + + variant2368 = MakeAgentInvocationManualUpdate(ManualUpdateParameters{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryPendingAgentInvocation(PendingAgentInvocationParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant2368}) + + case 15: + var variant2371 UpdateDescription + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + variant2371 = MakeUpdateDescriptionAutoUpdate() + + case 1: + value2369 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + value2370 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + + variant2371 = MakeUpdateDescriptionSnapshotBased(golem_api_host.Snapshot{value2369, value2370}) + + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryPendingUpdate(PendingUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), variant2371}) + + case 16: + result2377 := make([]PluginInstallationDescription, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), index*(24+6*4)) + value2372 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + value2373 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4)))) + result2376 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4))))), index*(4*4)) + value2374 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2375 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2376 = append(result2376, witTypes.Tuple2[string, string]{value2374, value2375}) + } + + result2377 = append(result2377, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2372, value2373, result2376}) + } + + variant2693 = MakePublicOplogEntrySuccessfulUpdate(SuccessfulUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), result2377}) + + case 17: + var option2379 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option2379 = witTypes.None[string]() + case 1: + value2378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + + option2379 = witTypes.Some[string](value2378) + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryFailedUpdate(FailedUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), option2379}) + + case 18: + + variant2693 = MakePublicOplogEntryGrowMemory(GrowMemoryParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 19: + + variant2693 = MakePublicOplogEntryFilesystemStorageUsageUpdate(FilesystemStorageUsageUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, *(*int64)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 20: + value2380 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2381 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant2693 = MakePublicOplogEntryCreateResource(CreateResourceParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), value2380, value2381}) + + case 21: + value2382 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2383 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant2693 = MakePublicOplogEntryDropResource(DropResourceParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), value2382, value2383}) + + case 22: + value2384 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + value2385 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + variant2693 = MakePublicOplogEntryLog(LogParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24)))), value2384, value2385}) + + case 23: + + variant2693 = MakePublicOplogEntryRestart(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 24: + value2386 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + value2387 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + result2390 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(4*4)) + value2388 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2389 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2390 = append(result2390, witTypes.Tuple2[string, string]{value2388, value2389}) + } + + variant2693 = MakePublicOplogEntryActivatePlugin(ActivatePluginParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 40)), value2386, value2387, result2390}}) + + case 25: + value2391 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + value2392 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + result2395 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(4*4)) + value2393 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2394 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2395 = append(result2395, witTypes.Tuple2[string, string]{value2393, value2394}) + } + + variant2693 = MakePublicOplogEntryDeactivatePlugin(DeactivatePluginParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 40)), value2391, value2392, result2395}}) + + case 26: + + variant2693 = MakePublicOplogEntryRevert(RevertParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, OplogRegion{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}) + + case 27: + value2396 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2693 = MakePublicOplogEntryCancelPendingInvocation(CancelPendingInvocationParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2396}) + + case 28: + value2397 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + var option2399 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option2399 = witTypes.None[string]() + case 1: + value2398 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option2399 = witTypes.Some[string](value2398) + default: + panic("unreachable") + } + var option2401 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) { + case 0: + + option2401 = witTypes.None[string]() + case 1: + value2400 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))) + + option2401 = witTypes.Some[string](value2400) + default: + panic("unreachable") + } + result2405 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 8*4))))), index*(5*4)) + value2402 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2404 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value2403 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant2404 = golem_api_context.MakeAttributeValueString(value2403) + + default: + panic("unreachable") + } + + result2405 = append(result2405, golem_api_context.Attribute{value2402, variant2404}) + } + + variant2693 = MakePublicOplogEntryStartSpan(StartSpanParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2397, option2399, option2401, result2405}) + + case 29: + value2406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2693 = MakePublicOplogEntryFinishSpan(FinishSpanParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2406}) + + case 30: + value2407 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + value2408 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + var variant2410 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) { + case 0: + value2409 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + variant2410 = golem_api_context.MakeAttributeValueString(value2409) + + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntrySetSpanAttribute(SetSpanAttributeParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2407, value2408, variant2410}) + + case 31: + var variant2411 golem_api_host.PersistenceLevel + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2411 = golem_api_host.MakePersistenceLevelPersistNothing() + + case 1: + + variant2411 = golem_api_host.MakePersistenceLevelPersistRemoteSideEffects() + + case 2: + + variant2411 = golem_api_host.MakePersistenceLevelSmart() + + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryChangePersistenceLevel(ChangePersistenceLevelParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant2411}) + + case 32: + value2412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2693 = MakePublicOplogEntryBeginRemoteTransaction(BeginRemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2412}) + + case 33: + + variant2693 = MakePublicOplogEntryPreCommitRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 34: + + variant2693 = MakePublicOplogEntryPreRollbackRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 35: + + variant2693 = MakePublicOplogEntryCommittedRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 36: + + variant2693 = MakePublicOplogEntryRolledBackRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 37: + value2413 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + value2414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + + variant2693 = MakePublicOplogEntrySnapshot(SnapshotParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, SnapshotData{value2413, value2414}}) + + case 38: + value2415 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + value2416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + result2419 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(4*4)) + value2417 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2419 = append(result2419, witTypes.Tuple2[string, string]{value2417, value2418}) + } + + value2420 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 7*4)))) + + variant2693 = MakePublicOplogEntryOplogProcessorCheckpoint(OplogProcessorCheckpointParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 40)), value2415, value2416, result2419}, golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 6*4))))}}, value2420}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 8*4))))}) + + case 39: + value2421 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + result2452 := make([]golem_api_retry.PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))))), index*(16+4*4)) + var variant2451 golem_api_retry.PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2422 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2424 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2423 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2424 = golem_api_retry.MakePredicateValueText(value2423) + + case 1: + + variant2424 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2424 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2451 = golem_api_retry.MakePredicateNodePropEq(golem_api_retry.PropertyComparison{value2422, variant2424}) + + case 1: + value2425 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2427 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2426 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2427 = golem_api_retry.MakePredicateValueText(value2426) + + case 1: + + variant2427 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2427 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2451 = golem_api_retry.MakePredicateNodePropNeq(golem_api_retry.PropertyComparison{value2425, variant2427}) + + case 2: + value2428 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2430 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2429 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2430 = golem_api_retry.MakePredicateValueText(value2429) + + case 1: + + variant2430 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2430 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2451 = golem_api_retry.MakePredicateNodePropGt(golem_api_retry.PropertyComparison{value2428, variant2430}) + + case 3: + value2431 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2433 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2432 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2433 = golem_api_retry.MakePredicateValueText(value2432) + + case 1: + + variant2433 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2433 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2451 = golem_api_retry.MakePredicateNodePropGte(golem_api_retry.PropertyComparison{value2431, variant2433}) + + case 4: + value2434 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2436 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2435 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2436 = golem_api_retry.MakePredicateValueText(value2435) + + case 1: + + variant2436 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2436 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2451 = golem_api_retry.MakePredicateNodePropLt(golem_api_retry.PropertyComparison{value2434, variant2436}) + + case 5: + value2437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2439 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2438 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2439 = golem_api_retry.MakePredicateValueText(value2438) + + case 1: + + variant2439 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2439 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2451 = golem_api_retry.MakePredicateNodePropLte(golem_api_retry.PropertyComparison{value2437, variant2439}) + + case 6: + value2440 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2451 = golem_api_retry.MakePredicateNodePropExists(value2440) + + case 7: + value2441 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2444 := make([]golem_api_retry.PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant2443 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2442 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2443 = golem_api_retry.MakePredicateValueText(value2442) + + case 1: + + variant2443 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant2443 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result2444 = append(result2444, variant2443) + } + + variant2451 = golem_api_retry.MakePredicateNodePropIn(golem_api_retry.PropertySetCheck{value2441, result2444}) + + case 8: + value2445 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2446 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2451 = golem_api_retry.MakePredicateNodePropMatches(golem_api_retry.PropertyPattern{value2445, value2446}) + + case 9: + value2447 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2448 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2451 = golem_api_retry.MakePredicateNodePropStartsWith(golem_api_retry.PropertyPattern{value2447, value2448}) + + case 10: + value2449 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2450 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2451 = golem_api_retry.MakePredicateNodePropContains(golem_api_retry.PropertyPattern{value2449, value2450}) + + case 11: + + variant2451 = golem_api_retry.MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2451 = golem_api_retry.MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2451 = golem_api_retry.MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant2451 = golem_api_retry.MakePredicateNodePredTrue() + + case 15: + + variant2451 = golem_api_retry.MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result2452 = append(result2452, variant2451) + } + + result2485 := make([]golem_api_retry.PolicyNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))))), index*32) + var variant2484 golem_api_retry.PolicyNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2484 = golem_api_retry.MakePolicyNodePeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 1: + + variant2484 = golem_api_retry.MakePolicyNodeExponential(golem_api_retry.ExponentialConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*float64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 2: + + variant2484 = golem_api_retry.MakePolicyNodeFibonacci(golem_api_retry.FibonacciConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 3: + + variant2484 = golem_api_retry.MakePolicyNodeImmediate() + + case 4: + + variant2484 = golem_api_retry.MakePolicyNodeNever() + + case 5: + + variant2484 = golem_api_retry.MakePolicyNodeCountBox(golem_api_retry.CountBoxConfig{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 6: + + variant2484 = golem_api_retry.MakePolicyNodeTimeBox(golem_api_retry.TimeBoxConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 7: + + variant2484 = golem_api_retry.MakePolicyNodeClampDelay(golem_api_retry.ClampConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 8: + + variant2484 = golem_api_retry.MakePolicyNodeAddDelay(golem_api_retry.AddDelayConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 9: + + variant2484 = golem_api_retry.MakePolicyNodeJitter(golem_api_retry.JitterConfig{*(*float64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 10: + result2483 := make([]golem_api_retry.PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(16+4*4)) + var variant2482 golem_api_retry.PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2453 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2455 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2454 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2455 = golem_api_retry.MakePredicateValueText(value2454) + + case 1: + + variant2455 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2455 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2482 = golem_api_retry.MakePredicateNodePropEq(golem_api_retry.PropertyComparison{value2453, variant2455}) + + case 1: + value2456 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2458 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2457 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2458 = golem_api_retry.MakePredicateValueText(value2457) + + case 1: + + variant2458 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2458 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2482 = golem_api_retry.MakePredicateNodePropNeq(golem_api_retry.PropertyComparison{value2456, variant2458}) + + case 2: + value2459 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2461 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2460 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2461 = golem_api_retry.MakePredicateValueText(value2460) + + case 1: + + variant2461 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2461 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2482 = golem_api_retry.MakePredicateNodePropGt(golem_api_retry.PropertyComparison{value2459, variant2461}) + + case 3: + value2462 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2464 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2463 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2464 = golem_api_retry.MakePredicateValueText(value2463) + + case 1: + + variant2464 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2464 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2482 = golem_api_retry.MakePredicateNodePropGte(golem_api_retry.PropertyComparison{value2462, variant2464}) + + case 4: + value2465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2467 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2466 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2467 = golem_api_retry.MakePredicateValueText(value2466) + + case 1: + + variant2467 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2467 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2482 = golem_api_retry.MakePredicateNodePropLt(golem_api_retry.PropertyComparison{value2465, variant2467}) + + case 5: + value2468 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2470 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2469 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2470 = golem_api_retry.MakePredicateValueText(value2469) + + case 1: + + variant2470 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2470 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2482 = golem_api_retry.MakePredicateNodePropLte(golem_api_retry.PropertyComparison{value2468, variant2470}) + + case 6: + value2471 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2482 = golem_api_retry.MakePredicateNodePropExists(value2471) + + case 7: + value2472 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2475 := make([]golem_api_retry.PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant2474 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2473 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2474 = golem_api_retry.MakePredicateValueText(value2473) + + case 1: + + variant2474 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant2474 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result2475 = append(result2475, variant2474) + } + + variant2482 = golem_api_retry.MakePredicateNodePropIn(golem_api_retry.PropertySetCheck{value2472, result2475}) + + case 8: + value2476 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2477 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2482 = golem_api_retry.MakePredicateNodePropMatches(golem_api_retry.PropertyPattern{value2476, value2477}) + + case 9: + value2478 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2479 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2482 = golem_api_retry.MakePredicateNodePropStartsWith(golem_api_retry.PropertyPattern{value2478, value2479}) + + case 10: + value2480 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2481 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2482 = golem_api_retry.MakePredicateNodePropContains(golem_api_retry.PropertyPattern{value2480, value2481}) + + case 11: + + variant2482 = golem_api_retry.MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2482 = golem_api_retry.MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2482 = golem_api_retry.MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant2482 = golem_api_retry.MakePredicateNodePredTrue() + + case 15: + + variant2482 = golem_api_retry.MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result2483 = append(result2483, variant2482) + } + + variant2484 = golem_api_retry.MakePolicyNodeFilteredOn(golem_api_retry.FilteredConfig{golem_api_retry.RetryPredicate{result2483}, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 11: + + variant2484 = golem_api_retry.MakePolicyNodeAndThen(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2484 = golem_api_retry.MakePolicyNodePolicyUnion(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2484 = golem_api_retry.MakePolicyNodePolicyIntersect(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + default: + panic("unreachable") + } + + result2485 = append(result2485, variant2484) + } + + variant2693 = MakePublicOplogEntrySetRetryPolicy(SetRetryPolicyParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, golem_api_retry.NamedRetryPolicy{value2421, uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))), golem_api_retry.RetryPredicate{result2452}, golem_api_retry.RetryPolicy{result2485}}}) + + case 40: + value2486 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2693 = MakePublicOplogEntryRemoveRetryPolicy(RemoveRetryPolicyParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2486}) + + case 41: + var variant2487 QueuedCardEvent + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2487 = MakeQueuedCardEventInstall(QueuedCardEventInstall{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}}) + + case 1: + + variant2487 = MakeQueuedCardEventRevoke(QueuedCardEventRevoke{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}}) + + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryCardEventQueued(CardEventQueuedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant2487}) + + case 42: + var option2488 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + option2488 = witTypes.None[uint64]() + case 1: + + option2488 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + default: + panic("unreachable") + } + + variant2693 = MakePublicOplogEntryCardInstalled(CardInstalledParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, option2488, golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 48)))}}}) + + case 43: + + variant2693 = MakePublicOplogEntryCardInstallFailed(CardInstallFailedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))))}) + + case 44: + + variant2693 = MakePublicOplogEntryCardRevoked(CardRevokedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}}) + + case 45: + + variant2693 = MakePublicOplogEntryCardExpired(CardExpiredParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}}) + + case 46: + result2664 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant2652 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2652 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant2652 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option2495 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2495 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2490 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2490 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2489 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2489 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2489 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2489 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2490 = witTypes.Some[golem_core_types.NumericBound](variant2489) + default: + panic("unreachable") + } + var option2492 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2492 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2491 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2491 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2491 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2491 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2492 = witTypes.Some[golem_core_types.NumericBound](variant2491) + default: + panic("unreachable") + } + var option2494 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2494 = witTypes.None[string]() + case 1: + value2493 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2494 = witTypes.Some[string](value2493) + default: + panic("unreachable") + } + + option2495 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2490, option2492, option2494}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyS8Type(option2495) + + case 3: + var option2502 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2502 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2497 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2497 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2496 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2496 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2496 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2496 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2497 = witTypes.Some[golem_core_types.NumericBound](variant2496) + default: + panic("unreachable") + } + var option2499 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2499 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2498 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2498 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2498 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2498 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2499 = witTypes.Some[golem_core_types.NumericBound](variant2498) + default: + panic("unreachable") + } + var option2501 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2501 = witTypes.None[string]() + case 1: + value2500 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2501 = witTypes.Some[string](value2500) + default: + panic("unreachable") + } + + option2502 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2497, option2499, option2501}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyS16Type(option2502) + + case 4: + var option2509 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2509 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2504 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2504 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2503 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2503 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2503 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2503 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2504 = witTypes.Some[golem_core_types.NumericBound](variant2503) + default: + panic("unreachable") + } + var option2506 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2506 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2505 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2505 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2505 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2505 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2506 = witTypes.Some[golem_core_types.NumericBound](variant2505) + default: + panic("unreachable") + } + var option2508 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2508 = witTypes.None[string]() + case 1: + value2507 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2508 = witTypes.Some[string](value2507) + default: + panic("unreachable") + } + + option2509 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2504, option2506, option2508}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyS32Type(option2509) + + case 5: + var option2516 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2516 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2511 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2511 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2510 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2510 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2510 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2510 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2511 = witTypes.Some[golem_core_types.NumericBound](variant2510) + default: + panic("unreachable") + } + var option2513 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2513 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2512 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2512 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2512 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2512 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2513 = witTypes.Some[golem_core_types.NumericBound](variant2512) + default: + panic("unreachable") + } + var option2515 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2515 = witTypes.None[string]() + case 1: + value2514 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2515 = witTypes.Some[string](value2514) + default: + panic("unreachable") + } + + option2516 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2511, option2513, option2515}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyS64Type(option2516) + + case 6: + var option2523 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2523 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2518 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2518 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2517 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2517 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2517 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2517 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2518 = witTypes.Some[golem_core_types.NumericBound](variant2517) + default: + panic("unreachable") + } + var option2520 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2520 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2519 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2519 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2519 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2519 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2520 = witTypes.Some[golem_core_types.NumericBound](variant2519) + default: + panic("unreachable") + } + var option2522 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2522 = witTypes.None[string]() + case 1: + value2521 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2522 = witTypes.Some[string](value2521) + default: + panic("unreachable") + } + + option2523 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2518, option2520, option2522}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyU8Type(option2523) + + case 7: + var option2530 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2530 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2525 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2525 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2524 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2524 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2524 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2524 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2525 = witTypes.Some[golem_core_types.NumericBound](variant2524) + default: + panic("unreachable") + } + var option2527 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2527 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2526 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2526 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2526 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2526 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2527 = witTypes.Some[golem_core_types.NumericBound](variant2526) + default: + panic("unreachable") + } + var option2529 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2529 = witTypes.None[string]() + case 1: + value2528 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2529 = witTypes.Some[string](value2528) + default: + panic("unreachable") + } + + option2530 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2525, option2527, option2529}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyU16Type(option2530) + + case 8: + var option2537 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2537 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2532 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2532 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2531 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2531 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2531 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2531 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2532 = witTypes.Some[golem_core_types.NumericBound](variant2531) + default: + panic("unreachable") + } + var option2534 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2534 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2533 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2533 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2533 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2533 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2534 = witTypes.Some[golem_core_types.NumericBound](variant2533) + default: + panic("unreachable") + } + var option2536 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2536 = witTypes.None[string]() + case 1: + value2535 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2536 = witTypes.Some[string](value2535) + default: + panic("unreachable") + } + + option2537 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2532, option2534, option2536}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyU32Type(option2537) + + case 9: + var option2544 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2544 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2539 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2539 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2538 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2538 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2538 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2538 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2539 = witTypes.Some[golem_core_types.NumericBound](variant2538) + default: + panic("unreachable") + } + var option2541 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2541 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2540 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2540 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2540 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2540 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2541 = witTypes.Some[golem_core_types.NumericBound](variant2540) + default: + panic("unreachable") + } + var option2543 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2543 = witTypes.None[string]() + case 1: + value2542 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2543 = witTypes.Some[string](value2542) + default: + panic("unreachable") + } + + option2544 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2539, option2541, option2543}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyU64Type(option2544) + + case 10: + var option2551 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2551 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2546 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2546 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2545 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2545 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2545 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2545 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2546 = witTypes.Some[golem_core_types.NumericBound](variant2545) + default: + panic("unreachable") + } + var option2548 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2548 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2547 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2547 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2547 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2547 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2548 = witTypes.Some[golem_core_types.NumericBound](variant2547) + default: + panic("unreachable") + } + var option2550 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2550 = witTypes.None[string]() + case 1: + value2549 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2550 = witTypes.Some[string](value2549) + default: + panic("unreachable") + } + + option2551 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2546, option2548, option2550}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyF32Type(option2551) + + case 11: + var option2558 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2558 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2553 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2553 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2552 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2552 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2552 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2552 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2553 = witTypes.Some[golem_core_types.NumericBound](variant2552) + default: + panic("unreachable") + } + var option2555 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2555 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2554 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2554 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2554 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2554 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2555 = witTypes.Some[golem_core_types.NumericBound](variant2554) + default: + panic("unreachable") + } + var option2557 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2557 = witTypes.None[string]() + case 1: + value2556 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2557 = witTypes.Some[string](value2556) + default: + panic("unreachable") + } + + option2558 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2553, option2555, option2557}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyF64Type(option2558) + + case 12: + + variant2652 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant2652 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result2571 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value2559 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2561 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option2561 = witTypes.None[string]() + case 1: + value2560 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option2561 = witTypes.Some[string](value2560) + default: + panic("unreachable") + } + result2563 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value2562 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2563 = append(result2563, value2562) + } + + result2565 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value2564 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2565 = append(result2565, value2564) + } + + var option2567 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option2567 = witTypes.None[string]() + case 1: + value2566 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option2567 = witTypes.Some[string](value2566) + default: + panic("unreachable") + } + var option2570 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option2570 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2569 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant2569 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2569 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2569 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2568 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant2569 = golem_core_types.MakeRoleOther(value2568) + + default: + panic("unreachable") + } + + option2570 = witTypes.Some[golem_core_types.Role](variant2569) + default: + panic("unreachable") + } + + result2571 = append(result2571, golem_core_types.NamedFieldType{value2559, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option2561, result2563, result2565, option2567, option2570}}) + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyRecordType(result2571) + + case 15: + result2585 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value2572 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2573 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2573 = witTypes.None[int32]() + case 1: + + option2573 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option2575 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2575 = witTypes.None[string]() + case 1: + value2574 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2575 = witTypes.Some[string](value2574) + default: + panic("unreachable") + } + result2577 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2576 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2577 = append(result2577, value2576) + } + + result2579 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value2578 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2579 = append(result2579, value2578) + } + + var option2581 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option2581 = witTypes.None[string]() + case 1: + value2580 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option2581 = witTypes.Some[string](value2580) + default: + panic("unreachable") + } + var option2584 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option2584 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2583 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant2583 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2583 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2583 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2582 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant2583 = golem_core_types.MakeRoleOther(value2582) + + default: + panic("unreachable") + } + + option2584 = witTypes.Some[golem_core_types.Role](variant2583) + default: + panic("unreachable") + } + + result2585 = append(result2585, golem_core_types.VariantCaseType{value2572, option2573, golem_core_types.MetadataEnvelope{option2575, result2577, result2579, option2581, option2584}}) + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyVariantType(result2585) + + case 16: + result2587 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2586 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2587 = append(result2587, value2586) + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyEnumType(result2587) + + case 17: + result2589 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2588 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2589 = append(result2589, value2588) + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyFlagsType(result2589) + + case 18: + result2590 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2590 = append(result2590, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyTupleType(result2590) + + case 19: + + variant2652 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant2652 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant2652 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant2652 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option2591 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2591 = witTypes.None[int32]() + case 1: + + option2591 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option2592 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2592 = witTypes.None[int32]() + case 1: + + option2592 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option2591, option2592}) + + case 24: + var option2595 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2595 = witTypes.None[[]string]() + case 1: + result2594 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2593 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2594 = append(result2594, value2593) + } + + option2595 = witTypes.Some[[]string](result2594) + default: + panic("unreachable") + } + var option2596 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2596 = witTypes.None[uint32]() + case 1: + + option2596 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2597 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2597 = witTypes.None[uint32]() + case 1: + + option2597 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option2599 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option2599 = witTypes.None[string]() + case 1: + value2598 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option2599 = witTypes.Some[string](value2598) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option2595, option2596, option2597, option2599}) + + case 25: + var option2602 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2602 = witTypes.None[[]string]() + case 1: + result2601 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2600 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2601 = append(result2601, value2600) + } + + option2602 = witTypes.Some[[]string](result2601) + default: + panic("unreachable") + } + var option2603 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2603 = witTypes.None[uint32]() + case 1: + + option2603 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2604 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2604 = witTypes.None[uint32]() + case 1: + + option2604 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option2602, option2603, option2604}) + + case 26: + var option2607 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2607 = witTypes.None[[]string]() + case 1: + result2606 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2605 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2606 = append(result2606, value2605) + } + + option2607 = witTypes.Some[[]string](result2606) + default: + panic("unreachable") + } + var option2610 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2610 = witTypes.None[[]string]() + case 1: + result2609 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2608 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2609 = append(result2609, value2608) + } + + option2610 = witTypes.Some[[]string](result2609) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option2607, option2610}) + + case 27: + var option2613 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2613 = witTypes.None[[]string]() + case 1: + result2612 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2611 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2612 = append(result2612, value2611) + } + + option2613 = witTypes.Some[[]string](result2612) + default: + panic("unreachable") + } + var option2616 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2616 = witTypes.None[[]string]() + case 1: + result2615 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value2614 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2615 = append(result2615, value2614) + } + + option2616 = witTypes.Some[[]string](result2615) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option2613, option2616}) + + case 28: + + variant2652 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant2652 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value2617 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2619 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2618 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2619 = append(result2619, value2618) + } + + var option2621 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2621 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2620 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option2621 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value2620}) + default: + panic("unreachable") + } + var option2623 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option2623 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2622 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option2623 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value2622}) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value2617, result2619, option2621, option2623}) + + case 31: + result2645 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value2624 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2633 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value2625 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2633 = golem_core_types.MakeDiscriminatorRulePrefix(value2625) + + case 1: + value2626 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2633 = golem_core_types.MakeDiscriminatorRuleSuffix(value2626) + + case 2: + value2627 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2633 = golem_core_types.MakeDiscriminatorRuleContains(value2627) + + case 3: + value2628 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2633 = golem_core_types.MakeDiscriminatorRuleRegex(value2628) + + case 4: + value2629 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option2631 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option2631 = witTypes.None[string]() + case 1: + value2630 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option2631 = witTypes.Some[string](value2630) + default: + panic("unreachable") + } + + variant2633 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value2629, option2631}) + + case 5: + value2632 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2633 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value2632) + + default: + panic("unreachable") + } + var option2635 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option2635 = witTypes.None[string]() + case 1: + value2634 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option2635 = witTypes.Some[string](value2634) + default: + panic("unreachable") + } + result2637 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value2636 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2637 = append(result2637, value2636) + } + + result2639 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value2638 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2639 = append(result2639, value2638) + } + + var option2641 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option2641 = witTypes.None[string]() + case 1: + value2640 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option2641 = witTypes.Some[string](value2640) + default: + panic("unreachable") + } + var option2644 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option2644 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2643 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant2643 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2643 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2643 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2642 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant2643 = golem_core_types.MakeRoleOther(value2642) + + default: + panic("unreachable") + } + + option2644 = witTypes.Some[golem_core_types.Role](variant2643) + default: + panic("unreachable") + } + + result2645 = append(result2645, golem_core_types.UnionBranch{value2624, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant2633, golem_core_types.MetadataEnvelope{option2635, result2637, result2639, option2641, option2644}}) + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result2645}) + + case 32: + var option2647 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2647 = witTypes.None[string]() + case 1: + value2646 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option2647 = witTypes.Some[string](value2646) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option2647}) + + case 33: + var option2649 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2649 = witTypes.None[string]() + case 1: + value2648 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option2649 = witTypes.Some[string](value2648) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option2649}) + + case 34: + var option2650 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2650 = witTypes.None[int32]() + case 1: + + option2650 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyFutureType(option2650) + + case 35: + var option2651 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2651 = witTypes.None[int32]() + case 1: + + option2651 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2652 = golem_core_types.MakeSchemaTypeBodyStreamType(option2651) + + default: + panic("unreachable") + } + var option2654 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option2654 = witTypes.None[string]() + case 1: + value2653 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option2654 = witTypes.Some[string](value2653) + default: + panic("unreachable") + } + result2656 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value2655 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2656 = append(result2656, value2655) + } + + result2658 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value2657 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2658 = append(result2658, value2657) + } + + var option2660 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option2660 = witTypes.None[string]() + case 1: + value2659 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option2660 = witTypes.Some[string](value2659) + default: + panic("unreachable") + } + var option2663 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option2663 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2662 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant2662 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2662 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2662 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2661 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant2662 = golem_core_types.MakeRoleOther(value2661) + + default: + panic("unreachable") + } + + option2663 = witTypes.Some[golem_core_types.Role](variant2662) + default: + panic("unreachable") + } + + result2664 = append(result2664, golem_core_types.SchemaTypeNode{variant2652, golem_core_types.MetadataEnvelope{option2654, result2656, result2658, option2660, option2663}}) + } + + result2668 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value2665 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2667 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2667 = witTypes.None[string]() + case 1: + value2666 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option2667 = witTypes.Some[string](value2666) + default: + panic("unreachable") + } + + result2668 = append(result2668, golem_core_types.SchemaTypeDef{value2665, option2667, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result2692 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant2691 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2691 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant2691 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant2691 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant2691 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant2691 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant2691 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant2691 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant2691 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant2691 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant2691 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant2691 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant2691 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value2669 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2691 = golem_core_types.MakeSchemaValueNodeStringValue(value2669) + + case 13: + result2670 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2670 = append(result2670, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2691 = golem_core_types.MakeSchemaValueNodeRecordValue(result2670) + + case 14: + var option2671 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2671 = witTypes.None[int32]() + case 1: + + option2671 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2691 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option2671}) + + case 15: + + variant2691 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result2672 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result2672 = append(result2672, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant2691 = golem_core_types.MakeSchemaValueNodeFlagsValue(result2672) + + case 17: + result2673 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2673 = append(result2673, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2691 = golem_core_types.MakeSchemaValueNodeTupleValue(result2673) + + case 18: + result2674 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2674 = append(result2674, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2691 = golem_core_types.MakeSchemaValueNodeListValue(result2674) + + case 19: + result2675 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2675 = append(result2675, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2691 = golem_core_types.MakeSchemaValueNodeFixedListValue(result2675) + + case 20: + result2676 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result2676 = append(result2676, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant2691 = golem_core_types.MakeSchemaValueNodeMapValue(result2676) + + case 21: + var option2677 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2677 = witTypes.None[int32]() + case 1: + + option2677 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2691 = golem_core_types.MakeSchemaValueNodeOptionValue(option2677) + + case 22: + var variant2680 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option2678 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2678 = witTypes.None[int32]() + case 1: + + option2678 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2680 = golem_core_types.MakeResultValuePayloadOkValue(option2678) + + case 1: + var option2679 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2679 = witTypes.None[int32]() + case 1: + + option2679 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2680 = golem_core_types.MakeResultValuePayloadErrValue(option2679) + + default: + panic("unreachable") + } + + variant2691 = golem_core_types.MakeSchemaValueNodeResultValue(variant2680) + + case 23: + value2681 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2683 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2683 = witTypes.None[string]() + case 1: + value2682 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2683 = witTypes.Some[string](value2682) + default: + panic("unreachable") + } + + variant2691 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value2681, option2683}) + + case 24: + value2684 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2686 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2686 = witTypes.None[string]() + case 1: + value2685 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2686 = witTypes.Some[string](value2685) + default: + panic("unreachable") + } + + variant2691 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value2684, option2686}) + + case 25: + value2687 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2691 = golem_core_types.MakeSchemaValueNodePathValue(value2687) + + case 26: + value2688 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2691 = golem_core_types.MakeSchemaValueNodeUrlValue(value2688) + + case 27: + + variant2691 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant2691 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value2689 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant2691 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2689}) + + case 30: + value2690 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2691 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value2690, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant2691 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant2691 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result2692 = append(result2692, variant2691) + } + + variant2693 = MakePublicOplogEntryHostStreamFrame(HostStreamFrameParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)))), golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result2664, result2668, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result2692, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}}) + + case 47: + + variant2693 = MakePublicOplogEntryCompletionDiscarded(CompletionDiscardedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + default: + panic("unreachable") + } + + result2694 = append(result2694, variant2693) + } + + result2696 = witTypes.Ok[[]PublicOplogEntry, string](result2694) + case 1: + value2695 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result2696 = witTypes.Err[[]PublicOplogEntry, string](value2695) + default: + panic("unreachable") + } + result2697 := result2696 + return result2697 + +} + +//go:wasmimport golem:api/oplog@1.5.0 [constructor]get-oplog +func wasm_import_constructor_get_oplog(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 int64) int32 + +func MakeGetOplog(agentId golem_core_types.AgentId, start uint64) *GetOplog { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData((agentId).AgentId)) + pinner.Pin(utf8) + result := wasm_import_constructor_get_oplog(int64((((agentId).ComponentId).Uuid).HighBits), int64((((agentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len((agentId).AgentId)), int64(start)) + return GetOplogFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport golem:api/oplog@1.5.0 [method]get-oplog.get-next +func wasm_import_method_get_oplog_get_next(arg0 int32, arg1 uintptr) + +func (self *GetOplog) GetNext() witTypes.Option[[]PublicOplogEntry] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_get_oplog_get_next((self).Handle(), returnArea) + var option2473 witTypes.Option[[]PublicOplogEntry] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option2473 = witTypes.None[[]PublicOplogEntry]() + case 1: + result2472 := make([]PublicOplogEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(168+10*4)) + var variant2471 PublicOplogEntry + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + result := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4))))), index*(4*4)) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result = append(result, witTypes.Tuple2[string, string]{value0, value1}) + } + + var option witTypes.Option[golem_core_types.AgentId] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4)))) { + case 0: + + option = witTypes.None[golem_core_types.AgentId]() + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (112 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (112 + 5*4)))) + + option = witTypes.Some[golem_core_types.AgentId](golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (96 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (104 + 4*4))))}}, value2}) + default: + panic("unreachable") + } + result8 := make([]PluginInstallationDescription, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 6*4))))), index*(24+6*4)) + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4)))) + result7 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4))))), index*(4*4)) + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result7 = append(result7, witTypes.Tuple2[string, string]{value5, value6}) + } + + result8 = append(result8, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value3, value4, result7}) + } + + result214 := make([]LocalAgentConfigEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 8*4))))), index*(10*4)) + result10 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(2*4)) + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result10 = append(result10, value9) + } + + result185 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))), index*(56+22*4)) + var variant173 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant173 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant173 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option16 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option16 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option11 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option11 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option11 = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option13 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option13 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant12 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant12 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant12 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant12 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option13 = witTypes.Some[golem_core_types.NumericBound](variant12) + default: + panic("unreachable") + } + var option15 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option15 = witTypes.None[string]() + case 1: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option15 = witTypes.Some[string](value14) + default: + panic("unreachable") + } + + option16 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option11, option13, option15}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS8Type(option16) + + case 3: + var option23 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option23 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option18 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option18 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant17 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant17 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant17 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant17 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option18 = witTypes.Some[golem_core_types.NumericBound](variant17) + default: + panic("unreachable") + } + var option20 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option20 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant19 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant19 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant19 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant19 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option20 = witTypes.Some[golem_core_types.NumericBound](variant19) + default: + panic("unreachable") + } + var option22 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option22 = witTypes.None[string]() + case 1: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option22 = witTypes.Some[string](value21) + default: + panic("unreachable") + } + + option23 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option18, option20, option22}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS16Type(option23) + + case 4: + var option30 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option30 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option25 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option25 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant24 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant24 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant24 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant24 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option25 = witTypes.Some[golem_core_types.NumericBound](variant24) + default: + panic("unreachable") + } + var option27 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option27 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant26 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant26 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant26 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant26 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option27 = witTypes.Some[golem_core_types.NumericBound](variant26) + default: + panic("unreachable") + } + var option29 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option29 = witTypes.None[string]() + case 1: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option29 = witTypes.Some[string](value28) + default: + panic("unreachable") + } + + option30 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option25, option27, option29}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS32Type(option30) + + case 5: + var option37 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option37 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option32 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option32 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant31 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant31 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant31 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant31 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option32 = witTypes.Some[golem_core_types.NumericBound](variant31) + default: + panic("unreachable") + } + var option34 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option34 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant33 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant33 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant33 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant33 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option34 = witTypes.Some[golem_core_types.NumericBound](variant33) + default: + panic("unreachable") + } + var option36 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option36 = witTypes.None[string]() + case 1: + value35 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option36 = witTypes.Some[string](value35) + default: + panic("unreachable") + } + + option37 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option32, option34, option36}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS64Type(option37) + + case 6: + var option44 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option44 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option39 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option39 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant38 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant38 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant38 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant38 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option39 = witTypes.Some[golem_core_types.NumericBound](variant38) + default: + panic("unreachable") + } + var option41 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant40 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant40 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant40 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant40 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericBound](variant40) + default: + panic("unreachable") + } + var option43 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option43 = witTypes.None[string]() + case 1: + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option43 = witTypes.Some[string](value42) + default: + panic("unreachable") + } + + option44 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option39, option41, option43}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU8Type(option44) + + case 7: + var option51 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option51 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option46 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option46 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant45 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant45 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant45 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant45 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option46 = witTypes.Some[golem_core_types.NumericBound](variant45) + default: + panic("unreachable") + } + var option48 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant47 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant47 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant47 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant47 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericBound](variant47) + default: + panic("unreachable") + } + var option50 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option50 = witTypes.None[string]() + case 1: + value49 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option50 = witTypes.Some[string](value49) + default: + panic("unreachable") + } + + option51 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option46, option48, option50}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU16Type(option51) + + case 8: + var option58 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option58 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option53 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option53 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant52 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant52 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant52 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant52 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option53 = witTypes.Some[golem_core_types.NumericBound](variant52) + default: + panic("unreachable") + } + var option55 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant54 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant54 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant54 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant54 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericBound](variant54) + default: + panic("unreachable") + } + var option57 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option57 = witTypes.None[string]() + case 1: + value56 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option57 = witTypes.Some[string](value56) + default: + panic("unreachable") + } + + option58 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option53, option55, option57}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU32Type(option58) + + case 9: + var option65 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option65 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option60 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option60 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant59 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant59 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant59 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant59 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option60 = witTypes.Some[golem_core_types.NumericBound](variant59) + default: + panic("unreachable") + } + var option62 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant61 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant61 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant61 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant61 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericBound](variant61) + default: + panic("unreachable") + } + var option64 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option64 = witTypes.None[string]() + case 1: + value63 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option64 = witTypes.Some[string](value63) + default: + panic("unreachable") + } + + option65 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option60, option62, option64}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU64Type(option65) + + case 10: + var option72 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option72 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option67 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option67 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant66 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant66 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant66 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant66 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option67 = witTypes.Some[golem_core_types.NumericBound](variant66) + default: + panic("unreachable") + } + var option69 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option69 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant68 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant68 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant68 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant68 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option69 = witTypes.Some[golem_core_types.NumericBound](variant68) + default: + panic("unreachable") + } + var option71 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option71 = witTypes.None[string]() + case 1: + value70 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option71 = witTypes.Some[string](value70) + default: + panic("unreachable") + } + + option72 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option67, option69, option71}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyF32Type(option72) + + case 11: + var option79 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option79 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option74 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option74 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant73 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant73 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant73 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant73 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option74 = witTypes.Some[golem_core_types.NumericBound](variant73) + default: + panic("unreachable") + } + var option76 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option76 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant75 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant75 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant75 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant75 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option76 = witTypes.Some[golem_core_types.NumericBound](variant75) + default: + panic("unreachable") + } + var option78 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option78 = witTypes.None[string]() + case 1: + value77 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option78 = witTypes.Some[string](value77) + default: + panic("unreachable") + } + + option79 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option74, option76, option78}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyF64Type(option79) + + case 12: + + variant173 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant173 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result92 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value80 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option82 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option82 = witTypes.None[string]() + case 1: + value81 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option82 = witTypes.Some[string](value81) + default: + panic("unreachable") + } + result84 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value83 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result84 = append(result84, value83) + } + + result86 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value85 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result86 = append(result86, value85) + } + + var option88 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option88 = witTypes.None[string]() + case 1: + value87 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option88 = witTypes.Some[string](value87) + default: + panic("unreachable") + } + var option91 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option91 = witTypes.None[golem_core_types.Role]() + case 1: + var variant90 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant90 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant90 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant90 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value89 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant90 = golem_core_types.MakeRoleOther(value89) + + default: + panic("unreachable") + } + + option91 = witTypes.Some[golem_core_types.Role](variant90) + default: + panic("unreachable") + } + + result92 = append(result92, golem_core_types.NamedFieldType{value80, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option82, result84, result86, option88, option91}}) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyRecordType(result92) + + case 15: + result106 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value93 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option94 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option94 = witTypes.None[int32]() + case 1: + + option94 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option96 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option96 = witTypes.None[string]() + case 1: + value95 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option96 = witTypes.Some[string](value95) + default: + panic("unreachable") + } + result98 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value97 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result98 = append(result98, value97) + } + + result100 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value99 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result100 = append(result100, value99) + } + + var option102 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option102 = witTypes.None[string]() + case 1: + value101 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option102 = witTypes.Some[string](value101) + default: + panic("unreachable") + } + var option105 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option105 = witTypes.None[golem_core_types.Role]() + case 1: + var variant104 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant104 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant104 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant104 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value103 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant104 = golem_core_types.MakeRoleOther(value103) + + default: + panic("unreachable") + } + + option105 = witTypes.Some[golem_core_types.Role](variant104) + default: + panic("unreachable") + } + + result106 = append(result106, golem_core_types.VariantCaseType{value93, option94, golem_core_types.MetadataEnvelope{option96, result98, result100, option102, option105}}) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyVariantType(result106) + + case 16: + result108 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value107 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result108 = append(result108, value107) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyEnumType(result108) + + case 17: + result110 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value109 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result110 = append(result110, value109) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyFlagsType(result110) + + case 18: + result111 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result111 = append(result111, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyTupleType(result111) + + case 19: + + variant173 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant173 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant173 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant173 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option112 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option112 = witTypes.None[int32]() + case 1: + + option112 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option113 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option113 = witTypes.None[int32]() + case 1: + + option113 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option112, option113}) + + case 24: + var option116 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option116 = witTypes.None[[]string]() + case 1: + result115 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value114 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result115 = append(result115, value114) + } + + option116 = witTypes.Some[[]string](result115) + default: + panic("unreachable") + } + var option117 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option117 = witTypes.None[uint32]() + case 1: + + option117 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option118 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option118 = witTypes.None[uint32]() + case 1: + + option118 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option120 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option120 = witTypes.None[string]() + case 1: + value119 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option120 = witTypes.Some[string](value119) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option116, option117, option118, option120}) + + case 25: + var option123 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option123 = witTypes.None[[]string]() + case 1: + result122 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value121 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result122 = append(result122, value121) + } + + option123 = witTypes.Some[[]string](result122) + default: + panic("unreachable") + } + var option124 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option124 = witTypes.None[uint32]() + case 1: + + option124 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option125 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option125 = witTypes.None[uint32]() + case 1: + + option125 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option123, option124, option125}) + + case 26: + var option128 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option128 = witTypes.None[[]string]() + case 1: + result127 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result127 = append(result127, value126) + } + + option128 = witTypes.Some[[]string](result127) + default: + panic("unreachable") + } + var option131 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option131 = witTypes.None[[]string]() + case 1: + result130 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result130 = append(result130, value129) + } + + option131 = witTypes.Some[[]string](result130) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option128, option131}) + + case 27: + var option134 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option134 = witTypes.None[[]string]() + case 1: + result133 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result133 = append(result133, value132) + } + + option134 = witTypes.Some[[]string](result133) + default: + panic("unreachable") + } + var option137 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option137 = witTypes.None[[]string]() + case 1: + result136 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result136 = append(result136, value135) + } + + option137 = witTypes.Some[[]string](result136) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option134, option137}) + + case 28: + + variant173 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant173 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result140 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result140 = append(result140, value139) + } + + var option142 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option142 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value141 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option142 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value141}) + default: + panic("unreachable") + } + var option144 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option144 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value143 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option144 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value143}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value138, result140, option142, option144}) + + case 31: + result166 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant154 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRulePrefix(value146) + + case 1: + value147 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleSuffix(value147) + + case 2: + value148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleContains(value148) + + case 3: + value149 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleRegex(value149) + + case 4: + value150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option152 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option152 = witTypes.None[string]() + case 1: + value151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option152 = witTypes.Some[string](value151) + default: + panic("unreachable") + } + + variant154 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value150, option152}) + + case 5: + value153 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value153) + + default: + panic("unreachable") + } + var option156 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option156 = witTypes.None[string]() + case 1: + value155 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option156 = witTypes.Some[string](value155) + default: + panic("unreachable") + } + result158 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result158 = append(result158, value157) + } + + result160 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value159 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result160 = append(result160, value159) + } + + var option162 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option162 = witTypes.None[string]() + case 1: + value161 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option162 = witTypes.Some[string](value161) + default: + panic("unreachable") + } + var option165 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option165 = witTypes.None[golem_core_types.Role]() + case 1: + var variant164 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant164 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant164 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant164 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant164 = golem_core_types.MakeRoleOther(value163) + + default: + panic("unreachable") + } + + option165 = witTypes.Some[golem_core_types.Role](variant164) + default: + panic("unreachable") + } + + result166 = append(result166, golem_core_types.UnionBranch{value145, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant154, golem_core_types.MetadataEnvelope{option156, result158, result160, option162, option165}}) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result166}) + + case 32: + var option168 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option168 = witTypes.None[string]() + case 1: + value167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option168 = witTypes.Some[string](value167) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option168}) + + case 33: + var option170 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option170 = witTypes.None[string]() + case 1: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option170 = witTypes.Some[string](value169) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option170}) + + case 34: + var option171 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option171 = witTypes.None[int32]() + case 1: + + option171 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyFutureType(option171) + + case 35: + var option172 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option172 = witTypes.None[int32]() + case 1: + + option172 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyStreamType(option172) + + default: + panic("unreachable") + } + var option175 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option175 = witTypes.None[string]() + case 1: + value174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option175 = witTypes.Some[string](value174) + default: + panic("unreachable") + } + result177 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result177 = append(result177, value176) + } + + result179 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result179 = append(result179, value178) + } + + var option181 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option181 = witTypes.None[string]() + case 1: + value180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option181 = witTypes.Some[string](value180) + default: + panic("unreachable") + } + var option184 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option184 = witTypes.None[golem_core_types.Role]() + case 1: + var variant183 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant183 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant183 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant183 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant183 = golem_core_types.MakeRoleOther(value182) + + default: + panic("unreachable") + } + + option184 = witTypes.Some[golem_core_types.Role](variant183) + default: + panic("unreachable") + } + + result185 = append(result185, golem_core_types.SchemaTypeNode{variant173, golem_core_types.MetadataEnvelope{option175, result177, result179, option181, option184}}) + } + + result189 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))))), index*(6*4)) + value186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option188 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option188 = witTypes.None[string]() + case 1: + value187 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option188 = witTypes.Some[string](value187) + default: + panic("unreachable") + } + + result189 = append(result189, golem_core_types.SchemaTypeDef{value186, option188, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result213 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(16+4*4)) + var variant212 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant212 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant212 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant212 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant212 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant212 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant212 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant212 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant212 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant212 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant212 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant212 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant212 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeStringValue(value190) + + case 13: + result191 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result191 = append(result191, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeRecordValue(result191) + + case 14: + var option192 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option192 = witTypes.None[int32]() + case 1: + + option192 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option192}) + + case 15: + + variant212 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result193 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result193 = append(result193, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant212 = golem_core_types.MakeSchemaValueNodeFlagsValue(result193) + + case 17: + result194 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result194 = append(result194, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeTupleValue(result194) + + case 18: + result195 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result195 = append(result195, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeListValue(result195) + + case 19: + result196 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result196 = append(result196, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeFixedListValue(result196) + + case 20: + result197 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result197 = append(result197, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant212 = golem_core_types.MakeSchemaValueNodeMapValue(result197) + + case 21: + var option198 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option198 = witTypes.None[int32]() + case 1: + + option198 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeOptionValue(option198) + + case 22: + var variant201 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option199 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option199 = witTypes.None[int32]() + case 1: + + option199 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant201 = golem_core_types.MakeResultValuePayloadOkValue(option199) + + case 1: + var option200 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option200 = witTypes.None[int32]() + case 1: + + option200 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant201 = golem_core_types.MakeResultValuePayloadErrValue(option200) + + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeResultValue(variant201) + + case 23: + value202 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option204 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option204 = witTypes.None[string]() + case 1: + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option204 = witTypes.Some[string](value203) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value202, option204}) + + case 24: + value205 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option207 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option207 = witTypes.None[string]() + case 1: + value206 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option207 = witTypes.Some[string](value206) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value205, option207}) + + case 25: + value208 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodePathValue(value208) + + case 26: + value209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeUrlValue(value209) + + case 27: + + variant212 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant212 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value210 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value210}) + + case 30: + value211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value211, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant212 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant212 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result213 = append(result213, variant212) + } + + result214 = append(result214, LocalAgentConfigEntry{result10, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result185, result189, *(*int32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))}, golem_core_types.SchemaValueTree{result213, *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))}}}) + } + + var option215 witTypes.Option[golem_core_types.Uuid] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (128 + 10*4)))) { + case 0: + + option215 = witTypes.None[golem_core_types.Uuid]() + case 1: + + option215 = witTypes.Some[golem_core_types.Uuid](golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (136 + 10*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (144 + 10*4))))}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCreate(CreateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, value}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4)))), result, golem_core_types.AccountId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 4*4))))}}, golem_api_host.EnvironmentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4))))}}, option, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (112 + 6*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (120 + 6*4)))), result8, result214, option215, golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (152 + 10*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (160 + 10*4))))}}) + + case 1: + var option216 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + option216 = witTypes.None[uint64]() + case 1: + + option216 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + default: + panic("unreachable") + } + value217 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + var option422 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) { + case 0: + + option422 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result393 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))))), index*(56+22*4)) + var variant381 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant381 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant381 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option224 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option224 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option219 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option219 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant218 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant218 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant218 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant218 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option219 = witTypes.Some[golem_core_types.NumericBound](variant218) + default: + panic("unreachable") + } + var option221 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option221 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant220 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant220 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant220 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant220 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option221 = witTypes.Some[golem_core_types.NumericBound](variant220) + default: + panic("unreachable") + } + var option223 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option223 = witTypes.None[string]() + case 1: + value222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option223 = witTypes.Some[string](value222) + default: + panic("unreachable") + } + + option224 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option219, option221, option223}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS8Type(option224) + + case 3: + var option231 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option231 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option226 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option226 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant225 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant225 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant225 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant225 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option226 = witTypes.Some[golem_core_types.NumericBound](variant225) + default: + panic("unreachable") + } + var option228 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option228 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant227 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant227 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant227 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant227 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option228 = witTypes.Some[golem_core_types.NumericBound](variant227) + default: + panic("unreachable") + } + var option230 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option230 = witTypes.None[string]() + case 1: + value229 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option230 = witTypes.Some[string](value229) + default: + panic("unreachable") + } + + option231 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option226, option228, option230}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS16Type(option231) + + case 4: + var option238 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option238 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option233 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option233 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant232 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant232 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant232 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant232 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option233 = witTypes.Some[golem_core_types.NumericBound](variant232) + default: + panic("unreachable") + } + var option235 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option235 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant234 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant234 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant234 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant234 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option235 = witTypes.Some[golem_core_types.NumericBound](variant234) + default: + panic("unreachable") + } + var option237 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option237 = witTypes.None[string]() + case 1: + value236 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option237 = witTypes.Some[string](value236) + default: + panic("unreachable") + } + + option238 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option233, option235, option237}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS32Type(option238) + + case 5: + var option245 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option245 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option240 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option240 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant239 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant239 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant239 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant239 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option240 = witTypes.Some[golem_core_types.NumericBound](variant239) + default: + panic("unreachable") + } + var option242 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option242 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant241 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant241 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant241 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant241 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option242 = witTypes.Some[golem_core_types.NumericBound](variant241) + default: + panic("unreachable") + } + var option244 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option244 = witTypes.None[string]() + case 1: + value243 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option244 = witTypes.Some[string](value243) + default: + panic("unreachable") + } + + option245 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option240, option242, option244}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS64Type(option245) + + case 6: + var option252 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option252 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option247 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option247 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant246 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant246 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant246 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant246 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option247 = witTypes.Some[golem_core_types.NumericBound](variant246) + default: + panic("unreachable") + } + var option249 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option249 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant248 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant248 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant248 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant248 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option249 = witTypes.Some[golem_core_types.NumericBound](variant248) + default: + panic("unreachable") + } + var option251 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option251 = witTypes.None[string]() + case 1: + value250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option251 = witTypes.Some[string](value250) + default: + panic("unreachable") + } + + option252 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option247, option249, option251}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU8Type(option252) + + case 7: + var option259 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option259 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option254 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option254 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant253 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant253 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant253 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant253 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option254 = witTypes.Some[golem_core_types.NumericBound](variant253) + default: + panic("unreachable") + } + var option256 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option256 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant255 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant255 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant255 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant255 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option256 = witTypes.Some[golem_core_types.NumericBound](variant255) + default: + panic("unreachable") + } + var option258 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option258 = witTypes.None[string]() + case 1: + value257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option258 = witTypes.Some[string](value257) + default: + panic("unreachable") + } + + option259 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option254, option256, option258}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU16Type(option259) + + case 8: + var option266 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option266 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option261 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option261 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant260 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant260 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant260 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant260 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option261 = witTypes.Some[golem_core_types.NumericBound](variant260) + default: + panic("unreachable") + } + var option263 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option263 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant262 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant262 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant262 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant262 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option263 = witTypes.Some[golem_core_types.NumericBound](variant262) + default: + panic("unreachable") + } + var option265 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option265 = witTypes.None[string]() + case 1: + value264 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option265 = witTypes.Some[string](value264) + default: + panic("unreachable") + } + + option266 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option261, option263, option265}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU32Type(option266) + + case 9: + var option273 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option273 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option268 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option268 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant267 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant267 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant267 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant267 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option268 = witTypes.Some[golem_core_types.NumericBound](variant267) + default: + panic("unreachable") + } + var option270 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option270 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant269 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant269 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant269 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant269 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option270 = witTypes.Some[golem_core_types.NumericBound](variant269) + default: + panic("unreachable") + } + var option272 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option272 = witTypes.None[string]() + case 1: + value271 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option272 = witTypes.Some[string](value271) + default: + panic("unreachable") + } + + option273 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option268, option270, option272}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU64Type(option273) + + case 10: + var option280 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option280 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option275 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option275 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant274 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant274 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant274 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant274 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option275 = witTypes.Some[golem_core_types.NumericBound](variant274) + default: + panic("unreachable") + } + var option277 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option277 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant276 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant276 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant276 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant276 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option277 = witTypes.Some[golem_core_types.NumericBound](variant276) + default: + panic("unreachable") + } + var option279 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option279 = witTypes.None[string]() + case 1: + value278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option279 = witTypes.Some[string](value278) + default: + panic("unreachable") + } + + option280 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option275, option277, option279}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyF32Type(option280) + + case 11: + var option287 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option287 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option282 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option282 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant281 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant281 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant281 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant281 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option282 = witTypes.Some[golem_core_types.NumericBound](variant281) + default: + panic("unreachable") + } + var option284 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option284 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant283 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant283 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant283 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant283 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option284 = witTypes.Some[golem_core_types.NumericBound](variant283) + default: + panic("unreachable") + } + var option286 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option286 = witTypes.None[string]() + case 1: + value285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option286 = witTypes.Some[string](value285) + default: + panic("unreachable") + } + + option287 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option282, option284, option286}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyF64Type(option287) + + case 12: + + variant381 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant381 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result300 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value288 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option290 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option290 = witTypes.None[string]() + case 1: + value289 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option290 = witTypes.Some[string](value289) + default: + panic("unreachable") + } + result292 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value291 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result292 = append(result292, value291) + } + + result294 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value293 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result294 = append(result294, value293) + } + + var option296 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option296 = witTypes.None[string]() + case 1: + value295 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option296 = witTypes.Some[string](value295) + default: + panic("unreachable") + } + var option299 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option299 = witTypes.None[golem_core_types.Role]() + case 1: + var variant298 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant298 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant298 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant298 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value297 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant298 = golem_core_types.MakeRoleOther(value297) + + default: + panic("unreachable") + } + + option299 = witTypes.Some[golem_core_types.Role](variant298) + default: + panic("unreachable") + } + + result300 = append(result300, golem_core_types.NamedFieldType{value288, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option290, result292, result294, option296, option299}}) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyRecordType(result300) + + case 15: + result314 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value301 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option302 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option302 = witTypes.None[int32]() + case 1: + + option302 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option304 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option304 = witTypes.None[string]() + case 1: + value303 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option304 = witTypes.Some[string](value303) + default: + panic("unreachable") + } + result306 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value305 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result306 = append(result306, value305) + } + + result308 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value307 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result308 = append(result308, value307) + } + + var option310 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option310 = witTypes.None[string]() + case 1: + value309 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option310 = witTypes.Some[string](value309) + default: + panic("unreachable") + } + var option313 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option313 = witTypes.None[golem_core_types.Role]() + case 1: + var variant312 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant312 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant312 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant312 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value311 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant312 = golem_core_types.MakeRoleOther(value311) + + default: + panic("unreachable") + } + + option313 = witTypes.Some[golem_core_types.Role](variant312) + default: + panic("unreachable") + } + + result314 = append(result314, golem_core_types.VariantCaseType{value301, option302, golem_core_types.MetadataEnvelope{option304, result306, result308, option310, option313}}) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyVariantType(result314) + + case 16: + result316 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value315 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result316 = append(result316, value315) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyEnumType(result316) + + case 17: + result318 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value317 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result318 = append(result318, value317) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyFlagsType(result318) + + case 18: + result319 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result319 = append(result319, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyTupleType(result319) + + case 19: + + variant381 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant381 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant381 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant381 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option320 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option320 = witTypes.None[int32]() + case 1: + + option320 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option321 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option321 = witTypes.None[int32]() + case 1: + + option321 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option320, option321}) + + case 24: + var option324 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option324 = witTypes.None[[]string]() + case 1: + result323 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value322 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result323 = append(result323, value322) + } + + option324 = witTypes.Some[[]string](result323) + default: + panic("unreachable") + } + var option325 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option325 = witTypes.None[uint32]() + case 1: + + option325 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option326 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option326 = witTypes.None[uint32]() + case 1: + + option326 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option328 = witTypes.None[string]() + case 1: + value327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option328 = witTypes.Some[string](value327) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option324, option325, option326, option328}) + + case 25: + var option331 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option331 = witTypes.None[[]string]() + case 1: + result330 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value329 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result330 = append(result330, value329) + } + + option331 = witTypes.Some[[]string](result330) + default: + panic("unreachable") + } + var option332 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option332 = witTypes.None[uint32]() + case 1: + + option332 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option333 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option333 = witTypes.None[uint32]() + case 1: + + option333 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option331, option332, option333}) + + case 26: + var option336 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option336 = witTypes.None[[]string]() + case 1: + result335 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value334 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result335 = append(result335, value334) + } + + option336 = witTypes.Some[[]string](result335) + default: + panic("unreachable") + } + var option339 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option339 = witTypes.None[[]string]() + case 1: + result338 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value337 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result338 = append(result338, value337) + } + + option339 = witTypes.Some[[]string](result338) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option336, option339}) + + case 27: + var option342 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option342 = witTypes.None[[]string]() + case 1: + result341 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value340 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result341 = append(result341, value340) + } + + option342 = witTypes.Some[[]string](result341) + default: + panic("unreachable") + } + var option345 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option345 = witTypes.None[[]string]() + case 1: + result344 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value343 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result344 = append(result344, value343) + } + + option345 = witTypes.Some[[]string](result344) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option342, option345}) + + case 28: + + variant381 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant381 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result348 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value347 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result348 = append(result348, value347) + } + + var option350 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option350 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value349 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option350 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value349}) + default: + panic("unreachable") + } + var option352 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option352 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option352 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value351}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value346, result348, option350, option352}) + + case 31: + result374 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value353 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant362 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRulePrefix(value354) + + case 1: + value355 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleSuffix(value355) + + case 2: + value356 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleContains(value356) + + case 3: + value357 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleRegex(value357) + + case 4: + value358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option360 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option360 = witTypes.None[string]() + case 1: + value359 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option360 = witTypes.Some[string](value359) + default: + panic("unreachable") + } + + variant362 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value358, option360}) + + case 5: + value361 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value361) + + default: + panic("unreachable") + } + var option364 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option364 = witTypes.None[string]() + case 1: + value363 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option364 = witTypes.Some[string](value363) + default: + panic("unreachable") + } + result366 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value365 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result366 = append(result366, value365) + } + + result368 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value367 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result368 = append(result368, value367) + } + + var option370 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option370 = witTypes.None[string]() + case 1: + value369 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option370 = witTypes.Some[string](value369) + default: + panic("unreachable") + } + var option373 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option373 = witTypes.None[golem_core_types.Role]() + case 1: + var variant372 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant372 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant372 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant372 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant372 = golem_core_types.MakeRoleOther(value371) + + default: + panic("unreachable") + } + + option373 = witTypes.Some[golem_core_types.Role](variant372) + default: + panic("unreachable") + } + + result374 = append(result374, golem_core_types.UnionBranch{value353, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant362, golem_core_types.MetadataEnvelope{option364, result366, result368, option370, option373}}) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result374}) + + case 32: + var option376 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option376 = witTypes.None[string]() + case 1: + value375 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option376 = witTypes.Some[string](value375) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option376}) + + case 33: + var option378 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option378 = witTypes.None[string]() + case 1: + value377 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option378 = witTypes.Some[string](value377) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option378}) + + case 34: + var option379 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option379 = witTypes.None[int32]() + case 1: + + option379 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyFutureType(option379) + + case 35: + var option380 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option380 = witTypes.None[int32]() + case 1: + + option380 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyStreamType(option380) + + default: + panic("unreachable") + } + var option383 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option383 = witTypes.None[string]() + case 1: + value382 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option383 = witTypes.Some[string](value382) + default: + panic("unreachable") + } + result385 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value384 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result385 = append(result385, value384) + } + + result387 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value386 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result387 = append(result387, value386) + } + + var option389 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option389 = witTypes.None[string]() + case 1: + value388 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option389 = witTypes.Some[string](value388) + default: + panic("unreachable") + } + var option392 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option392 = witTypes.None[golem_core_types.Role]() + case 1: + var variant391 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant391 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant391 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant391 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value390 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant391 = golem_core_types.MakeRoleOther(value390) + + default: + panic("unreachable") + } + + option392 = witTypes.Some[golem_core_types.Role](variant391) + default: + panic("unreachable") + } + + result393 = append(result393, golem_core_types.SchemaTypeNode{variant381, golem_core_types.MetadataEnvelope{option383, result385, result387, option389, option392}}) + } + + result397 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(6*4)) + value394 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option396 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option396 = witTypes.None[string]() + case 1: + value395 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option396 = witTypes.Some[string](value395) + default: + panic("unreachable") + } + + result397 = append(result397, golem_core_types.SchemaTypeDef{value394, option396, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result421 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4))))), index*(16+4*4)) + var variant420 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant420 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant420 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant420 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant420 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant420 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant420 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant420 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant420 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant420 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant420 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant420 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant420 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value398 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeStringValue(value398) + + case 13: + result399 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result399 = append(result399, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeRecordValue(result399) + + case 14: + var option400 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option400 = witTypes.None[int32]() + case 1: + + option400 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option400}) + + case 15: + + variant420 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result401 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result401 = append(result401, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant420 = golem_core_types.MakeSchemaValueNodeFlagsValue(result401) + + case 17: + result402 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result402 = append(result402, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeTupleValue(result402) + + case 18: + result403 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result403 = append(result403, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeListValue(result403) + + case 19: + result404 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result404 = append(result404, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeFixedListValue(result404) + + case 20: + result405 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result405 = append(result405, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant420 = golem_core_types.MakeSchemaValueNodeMapValue(result405) + + case 21: + var option406 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option406 = witTypes.None[int32]() + case 1: + + option406 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeOptionValue(option406) + + case 22: + var variant409 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option407 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option407 = witTypes.None[int32]() + case 1: + + option407 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant409 = golem_core_types.MakeResultValuePayloadOkValue(option407) + + case 1: + var option408 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option408 = witTypes.None[int32]() + case 1: + + option408 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant409 = golem_core_types.MakeResultValuePayloadErrValue(option408) + + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeResultValue(variant409) + + case 23: + value410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option412 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option412 = witTypes.None[string]() + case 1: + value411 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option412 = witTypes.Some[string](value411) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value410, option412}) + + case 24: + value413 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option415 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option415 = witTypes.None[string]() + case 1: + value414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option415 = witTypes.Some[string](value414) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value413, option415}) + + case 25: + value416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodePathValue(value416) + + case 26: + value417 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeUrlValue(value417) + + case 27: + + variant420 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant420 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value418}) + + case 30: + value419 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value419, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant420 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant420 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result421 = append(result421, variant420) + } + + option422 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result393, result397, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))}, golem_core_types.SchemaValueTree{result421, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))}}) + default: + panic("unreachable") + } + var variant425 WrappedFunctionType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 10*4)))) { + case 0: + + variant425 = MakeWrappedFunctionTypeReadLocal() + + case 1: + + variant425 = MakeWrappedFunctionTypeWriteLocal() + + case 2: + + variant425 = MakeWrappedFunctionTypeReadRemote() + + case 3: + + variant425 = MakeWrappedFunctionTypeWriteRemote() + + case 4: + var option423 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) { + case 0: + + option423 = witTypes.None[uint64]() + case 1: + + option423 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 10*4))))) + default: + panic("unreachable") + } + + variant425 = MakeWrappedFunctionTypeWriteRemoteBatched(option423) + + case 5: + var option424 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) { + case 0: + + option424 = witTypes.None[uint64]() + case 1: + + option424 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 10*4))))) + default: + panic("unreachable") + } + + variant425 = MakeWrappedFunctionTypeWriteRemoteTransaction(option424) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryStart(StartParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, option216, value217, option422, variant425}) + + case 2: + var option630 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option630 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result601 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant589 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant589 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant589 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option432 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option432 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option427 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option427 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant426 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant426 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant426 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant426 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option427 = witTypes.Some[golem_core_types.NumericBound](variant426) + default: + panic("unreachable") + } + var option429 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option429 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant428 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant428 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant428 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant428 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option429 = witTypes.Some[golem_core_types.NumericBound](variant428) + default: + panic("unreachable") + } + var option431 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option431 = witTypes.None[string]() + case 1: + value430 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option431 = witTypes.Some[string](value430) + default: + panic("unreachable") + } + + option432 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option427, option429, option431}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS8Type(option432) + + case 3: + var option439 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option439 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option434 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option434 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant433 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant433 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant433 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant433 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option434 = witTypes.Some[golem_core_types.NumericBound](variant433) + default: + panic("unreachable") + } + var option436 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option436 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant435 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant435 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant435 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant435 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option436 = witTypes.Some[golem_core_types.NumericBound](variant435) + default: + panic("unreachable") + } + var option438 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option438 = witTypes.None[string]() + case 1: + value437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option438 = witTypes.Some[string](value437) + default: + panic("unreachable") + } + + option439 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option434, option436, option438}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS16Type(option439) + + case 4: + var option446 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option446 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option441 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option441 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant440 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant440 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant440 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant440 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option441 = witTypes.Some[golem_core_types.NumericBound](variant440) + default: + panic("unreachable") + } + var option443 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option443 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant442 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant442 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant442 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant442 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option443 = witTypes.Some[golem_core_types.NumericBound](variant442) + default: + panic("unreachable") + } + var option445 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option445 = witTypes.None[string]() + case 1: + value444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option445 = witTypes.Some[string](value444) + default: + panic("unreachable") + } + + option446 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option441, option443, option445}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS32Type(option446) + + case 5: + var option453 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option453 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option448 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option448 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant447 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant447 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant447 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant447 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option448 = witTypes.Some[golem_core_types.NumericBound](variant447) + default: + panic("unreachable") + } + var option450 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option450 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant449 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant449 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant449 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant449 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option450 = witTypes.Some[golem_core_types.NumericBound](variant449) + default: + panic("unreachable") + } + var option452 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option452 = witTypes.None[string]() + case 1: + value451 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option452 = witTypes.Some[string](value451) + default: + panic("unreachable") + } + + option453 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option448, option450, option452}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS64Type(option453) + + case 6: + var option460 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option460 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option455 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option455 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant454 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant454 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant454 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant454 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option455 = witTypes.Some[golem_core_types.NumericBound](variant454) + default: + panic("unreachable") + } + var option457 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option457 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant456 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant456 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant456 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant456 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option457 = witTypes.Some[golem_core_types.NumericBound](variant456) + default: + panic("unreachable") + } + var option459 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option459 = witTypes.None[string]() + case 1: + value458 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option459 = witTypes.Some[string](value458) + default: + panic("unreachable") + } + + option460 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option455, option457, option459}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU8Type(option460) + + case 7: + var option467 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option467 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option462 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option462 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant461 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant461 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant461 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant461 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option462 = witTypes.Some[golem_core_types.NumericBound](variant461) + default: + panic("unreachable") + } + var option464 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option464 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant463 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant463 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant463 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant463 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option464 = witTypes.Some[golem_core_types.NumericBound](variant463) + default: + panic("unreachable") + } + var option466 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option466 = witTypes.None[string]() + case 1: + value465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option466 = witTypes.Some[string](value465) + default: + panic("unreachable") + } + + option467 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option462, option464, option466}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU16Type(option467) + + case 8: + var option474 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option474 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option469 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option469 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant468 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant468 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant468 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant468 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option469 = witTypes.Some[golem_core_types.NumericBound](variant468) + default: + panic("unreachable") + } + var option471 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option471 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant470 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant470 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant470 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant470 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option471 = witTypes.Some[golem_core_types.NumericBound](variant470) + default: + panic("unreachable") + } + var option473 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option473 = witTypes.None[string]() + case 1: + value472 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option473 = witTypes.Some[string](value472) + default: + panic("unreachable") + } + + option474 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option469, option471, option473}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU32Type(option474) + + case 9: + var option481 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option481 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option476 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option476 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant475 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant475 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant475 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant475 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option476 = witTypes.Some[golem_core_types.NumericBound](variant475) + default: + panic("unreachable") + } + var option478 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option478 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant477 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant477 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant477 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant477 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option478 = witTypes.Some[golem_core_types.NumericBound](variant477) + default: + panic("unreachable") + } + var option480 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option480 = witTypes.None[string]() + case 1: + value479 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option480 = witTypes.Some[string](value479) + default: + panic("unreachable") + } + + option481 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option476, option478, option480}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU64Type(option481) + + case 10: + var option488 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option488 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option483 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option483 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant482 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant482 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant482 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant482 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option483 = witTypes.Some[golem_core_types.NumericBound](variant482) + default: + panic("unreachable") + } + var option485 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option485 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant484 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant484 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant484 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant484 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option485 = witTypes.Some[golem_core_types.NumericBound](variant484) + default: + panic("unreachable") + } + var option487 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option487 = witTypes.None[string]() + case 1: + value486 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option487 = witTypes.Some[string](value486) + default: + panic("unreachable") + } + + option488 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option483, option485, option487}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyF32Type(option488) + + case 11: + var option495 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option495 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option490 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option490 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant489 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant489 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant489 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant489 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option490 = witTypes.Some[golem_core_types.NumericBound](variant489) + default: + panic("unreachable") + } + var option492 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option492 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant491 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant491 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant491 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant491 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option492 = witTypes.Some[golem_core_types.NumericBound](variant491) + default: + panic("unreachable") + } + var option494 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option494 = witTypes.None[string]() + case 1: + value493 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option494 = witTypes.Some[string](value493) + default: + panic("unreachable") + } + + option495 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option490, option492, option494}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyF64Type(option495) + + case 12: + + variant589 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant589 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result508 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value496 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option498 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option498 = witTypes.None[string]() + case 1: + value497 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option498 = witTypes.Some[string](value497) + default: + panic("unreachable") + } + result500 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value499 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result500 = append(result500, value499) + } + + result502 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value501 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result502 = append(result502, value501) + } + + var option504 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option504 = witTypes.None[string]() + case 1: + value503 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option504 = witTypes.Some[string](value503) + default: + panic("unreachable") + } + var option507 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option507 = witTypes.None[golem_core_types.Role]() + case 1: + var variant506 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant506 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant506 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant506 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value505 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant506 = golem_core_types.MakeRoleOther(value505) + + default: + panic("unreachable") + } + + option507 = witTypes.Some[golem_core_types.Role](variant506) + default: + panic("unreachable") + } + + result508 = append(result508, golem_core_types.NamedFieldType{value496, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option498, result500, result502, option504, option507}}) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyRecordType(result508) + + case 15: + result522 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value509 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option510 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option510 = witTypes.None[int32]() + case 1: + + option510 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option512 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option512 = witTypes.None[string]() + case 1: + value511 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option512 = witTypes.Some[string](value511) + default: + panic("unreachable") + } + result514 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value513 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result514 = append(result514, value513) + } + + result516 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value515 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result516 = append(result516, value515) + } + + var option518 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option518 = witTypes.None[string]() + case 1: + value517 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option518 = witTypes.Some[string](value517) + default: + panic("unreachable") + } + var option521 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option521 = witTypes.None[golem_core_types.Role]() + case 1: + var variant520 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant520 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant520 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant520 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value519 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant520 = golem_core_types.MakeRoleOther(value519) + + default: + panic("unreachable") + } + + option521 = witTypes.Some[golem_core_types.Role](variant520) + default: + panic("unreachable") + } + + result522 = append(result522, golem_core_types.VariantCaseType{value509, option510, golem_core_types.MetadataEnvelope{option512, result514, result516, option518, option521}}) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyVariantType(result522) + + case 16: + result524 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value523 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result524 = append(result524, value523) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyEnumType(result524) + + case 17: + result526 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value525 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result526 = append(result526, value525) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyFlagsType(result526) + + case 18: + result527 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result527 = append(result527, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyTupleType(result527) + + case 19: + + variant589 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant589 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant589 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant589 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option528 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option528 = witTypes.None[int32]() + case 1: + + option528 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option529 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option529 = witTypes.None[int32]() + case 1: + + option529 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option528, option529}) + + case 24: + var option532 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option532 = witTypes.None[[]string]() + case 1: + result531 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value530 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result531 = append(result531, value530) + } + + option532 = witTypes.Some[[]string](result531) + default: + panic("unreachable") + } + var option533 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option533 = witTypes.None[uint32]() + case 1: + + option533 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option534 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option534 = witTypes.None[uint32]() + case 1: + + option534 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option536 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option536 = witTypes.None[string]() + case 1: + value535 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option536 = witTypes.Some[string](value535) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option532, option533, option534, option536}) + + case 25: + var option539 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option539 = witTypes.None[[]string]() + case 1: + result538 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value537 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result538 = append(result538, value537) + } + + option539 = witTypes.Some[[]string](result538) + default: + panic("unreachable") + } + var option540 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option540 = witTypes.None[uint32]() + case 1: + + option540 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option541 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option541 = witTypes.None[uint32]() + case 1: + + option541 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option539, option540, option541}) + + case 26: + var option544 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option544 = witTypes.None[[]string]() + case 1: + result543 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value542 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result543 = append(result543, value542) + } + + option544 = witTypes.Some[[]string](result543) + default: + panic("unreachable") + } + var option547 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option547 = witTypes.None[[]string]() + case 1: + result546 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value545 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result546 = append(result546, value545) + } + + option547 = witTypes.Some[[]string](result546) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option544, option547}) + + case 27: + var option550 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option550 = witTypes.None[[]string]() + case 1: + result549 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value548 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result549 = append(result549, value548) + } + + option550 = witTypes.Some[[]string](result549) + default: + panic("unreachable") + } + var option553 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option553 = witTypes.None[[]string]() + case 1: + result552 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value551 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result552 = append(result552, value551) + } + + option553 = witTypes.Some[[]string](result552) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option550, option553}) + + case 28: + + variant589 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant589 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value554 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result556 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value555 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result556 = append(result556, value555) + } + + var option558 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option558 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value557 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option558 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value557}) + default: + panic("unreachable") + } + var option560 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option560 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value559 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option560 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value559}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value554, result556, option558, option560}) + + case 31: + result582 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value561 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant570 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value562 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRulePrefix(value562) + + case 1: + value563 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleSuffix(value563) + + case 2: + value564 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleContains(value564) + + case 3: + value565 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleRegex(value565) + + case 4: + value566 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option568 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option568 = witTypes.None[string]() + case 1: + value567 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option568 = witTypes.Some[string](value567) + default: + panic("unreachable") + } + + variant570 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value566, option568}) + + case 5: + value569 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value569) + + default: + panic("unreachable") + } + var option572 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option572 = witTypes.None[string]() + case 1: + value571 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option572 = witTypes.Some[string](value571) + default: + panic("unreachable") + } + result574 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value573 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result574 = append(result574, value573) + } + + result576 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value575 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result576 = append(result576, value575) + } + + var option578 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option578 = witTypes.None[string]() + case 1: + value577 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option578 = witTypes.Some[string](value577) + default: + panic("unreachable") + } + var option581 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option581 = witTypes.None[golem_core_types.Role]() + case 1: + var variant580 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant580 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant580 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant580 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value579 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant580 = golem_core_types.MakeRoleOther(value579) + + default: + panic("unreachable") + } + + option581 = witTypes.Some[golem_core_types.Role](variant580) + default: + panic("unreachable") + } + + result582 = append(result582, golem_core_types.UnionBranch{value561, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant570, golem_core_types.MetadataEnvelope{option572, result574, result576, option578, option581}}) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result582}) + + case 32: + var option584 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option584 = witTypes.None[string]() + case 1: + value583 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option584 = witTypes.Some[string](value583) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option584}) + + case 33: + var option586 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option586 = witTypes.None[string]() + case 1: + value585 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option586 = witTypes.Some[string](value585) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option586}) + + case 34: + var option587 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option587 = witTypes.None[int32]() + case 1: + + option587 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyFutureType(option587) + + case 35: + var option588 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option588 = witTypes.None[int32]() + case 1: + + option588 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyStreamType(option588) + + default: + panic("unreachable") + } + var option591 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option591 = witTypes.None[string]() + case 1: + value590 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option591 = witTypes.Some[string](value590) + default: + panic("unreachable") + } + result593 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value592 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result593 = append(result593, value592) + } + + result595 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value594 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result595 = append(result595, value594) + } + + var option597 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option597 = witTypes.None[string]() + case 1: + value596 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option597 = witTypes.Some[string](value596) + default: + panic("unreachable") + } + var option600 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option600 = witTypes.None[golem_core_types.Role]() + case 1: + var variant599 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant599 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant599 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant599 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value598 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant599 = golem_core_types.MakeRoleOther(value598) + + default: + panic("unreachable") + } + + option600 = witTypes.Some[golem_core_types.Role](variant599) + default: + panic("unreachable") + } + + result601 = append(result601, golem_core_types.SchemaTypeNode{variant589, golem_core_types.MetadataEnvelope{option591, result593, result595, option597, option600}}) + } + + result605 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value602 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option604 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option604 = witTypes.None[string]() + case 1: + value603 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option604 = witTypes.Some[string](value603) + default: + panic("unreachable") + } + + result605 = append(result605, golem_core_types.SchemaTypeDef{value602, option604, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result629 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant628 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant628 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant628 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant628 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant628 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant628 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant628 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant628 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant628 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant628 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant628 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant628 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant628 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value606 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeStringValue(value606) + + case 13: + result607 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result607 = append(result607, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeRecordValue(result607) + + case 14: + var option608 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option608 = witTypes.None[int32]() + case 1: + + option608 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option608}) + + case 15: + + variant628 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result609 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result609 = append(result609, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant628 = golem_core_types.MakeSchemaValueNodeFlagsValue(result609) + + case 17: + result610 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result610 = append(result610, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeTupleValue(result610) + + case 18: + result611 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result611 = append(result611, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeListValue(result611) + + case 19: + result612 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result612 = append(result612, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeFixedListValue(result612) + + case 20: + result613 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result613 = append(result613, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant628 = golem_core_types.MakeSchemaValueNodeMapValue(result613) + + case 21: + var option614 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option614 = witTypes.None[int32]() + case 1: + + option614 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeOptionValue(option614) + + case 22: + var variant617 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option615 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option615 = witTypes.None[int32]() + case 1: + + option615 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant617 = golem_core_types.MakeResultValuePayloadOkValue(option615) + + case 1: + var option616 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option616 = witTypes.None[int32]() + case 1: + + option616 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant617 = golem_core_types.MakeResultValuePayloadErrValue(option616) + + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeResultValue(variant617) + + case 23: + value618 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option620 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option620 = witTypes.None[string]() + case 1: + value619 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option620 = witTypes.Some[string](value619) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value618, option620}) + + case 24: + value621 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option623 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option623 = witTypes.None[string]() + case 1: + value622 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option623 = witTypes.Some[string](value622) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value621, option623}) + + case 25: + value624 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodePathValue(value624) + + case 26: + value625 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeUrlValue(value625) + + case 27: + + variant628 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant628 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value626 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value626}) + + case 30: + value627 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value627, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant628 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant628 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result629 = append(result629, variant628) + } + + option630 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result601, result605, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result629, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryEnd(EndParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), option630, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))) != 0)}) + + case 3: + var option835 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option835 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result806 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant794 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant794 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant794 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option637 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option637 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option632 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option632 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant631 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant631 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant631 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant631 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option632 = witTypes.Some[golem_core_types.NumericBound](variant631) + default: + panic("unreachable") + } + var option634 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option634 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant633 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant633 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant633 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant633 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option634 = witTypes.Some[golem_core_types.NumericBound](variant633) + default: + panic("unreachable") + } + var option636 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option636 = witTypes.None[string]() + case 1: + value635 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option636 = witTypes.Some[string](value635) + default: + panic("unreachable") + } + + option637 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option632, option634, option636}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS8Type(option637) + + case 3: + var option644 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option644 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option639 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option639 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant638 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant638 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant638 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant638 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option639 = witTypes.Some[golem_core_types.NumericBound](variant638) + default: + panic("unreachable") + } + var option641 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option641 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant640 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant640 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant640 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant640 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option641 = witTypes.Some[golem_core_types.NumericBound](variant640) + default: + panic("unreachable") + } + var option643 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option643 = witTypes.None[string]() + case 1: + value642 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option643 = witTypes.Some[string](value642) + default: + panic("unreachable") + } + + option644 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option639, option641, option643}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS16Type(option644) + + case 4: + var option651 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option651 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option646 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option646 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant645 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant645 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant645 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant645 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option646 = witTypes.Some[golem_core_types.NumericBound](variant645) + default: + panic("unreachable") + } + var option648 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option648 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant647 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant647 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant647 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant647 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option648 = witTypes.Some[golem_core_types.NumericBound](variant647) + default: + panic("unreachable") + } + var option650 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option650 = witTypes.None[string]() + case 1: + value649 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option650 = witTypes.Some[string](value649) + default: + panic("unreachable") + } + + option651 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option646, option648, option650}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS32Type(option651) + + case 5: + var option658 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option658 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option653 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option653 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant652 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant652 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant652 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant652 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option653 = witTypes.Some[golem_core_types.NumericBound](variant652) + default: + panic("unreachable") + } + var option655 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option655 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant654 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant654 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant654 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant654 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option655 = witTypes.Some[golem_core_types.NumericBound](variant654) + default: + panic("unreachable") + } + var option657 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option657 = witTypes.None[string]() + case 1: + value656 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option657 = witTypes.Some[string](value656) + default: + panic("unreachable") + } + + option658 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option653, option655, option657}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS64Type(option658) + + case 6: + var option665 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option665 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option660 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option660 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant659 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant659 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant659 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant659 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option660 = witTypes.Some[golem_core_types.NumericBound](variant659) + default: + panic("unreachable") + } + var option662 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option662 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant661 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant661 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant661 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant661 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option662 = witTypes.Some[golem_core_types.NumericBound](variant661) + default: + panic("unreachable") + } + var option664 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option664 = witTypes.None[string]() + case 1: + value663 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option664 = witTypes.Some[string](value663) + default: + panic("unreachable") + } + + option665 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option660, option662, option664}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU8Type(option665) + + case 7: + var option672 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option672 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option667 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option667 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant666 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant666 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant666 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant666 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option667 = witTypes.Some[golem_core_types.NumericBound](variant666) + default: + panic("unreachable") + } + var option669 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option669 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant668 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant668 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant668 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant668 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option669 = witTypes.Some[golem_core_types.NumericBound](variant668) + default: + panic("unreachable") + } + var option671 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option671 = witTypes.None[string]() + case 1: + value670 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option671 = witTypes.Some[string](value670) + default: + panic("unreachable") + } + + option672 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option667, option669, option671}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU16Type(option672) + + case 8: + var option679 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option679 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option674 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option674 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant673 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant673 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant673 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant673 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option674 = witTypes.Some[golem_core_types.NumericBound](variant673) + default: + panic("unreachable") + } + var option676 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option676 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant675 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant675 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant675 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant675 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option676 = witTypes.Some[golem_core_types.NumericBound](variant675) + default: + panic("unreachable") + } + var option678 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option678 = witTypes.None[string]() + case 1: + value677 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option678 = witTypes.Some[string](value677) + default: + panic("unreachable") + } + + option679 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option674, option676, option678}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU32Type(option679) + + case 9: + var option686 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option686 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option681 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option681 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant680 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant680 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant680 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant680 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option681 = witTypes.Some[golem_core_types.NumericBound](variant680) + default: + panic("unreachable") + } + var option683 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option683 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant682 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant682 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant682 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant682 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option683 = witTypes.Some[golem_core_types.NumericBound](variant682) + default: + panic("unreachable") + } + var option685 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option685 = witTypes.None[string]() + case 1: + value684 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option685 = witTypes.Some[string](value684) + default: + panic("unreachable") + } + + option686 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option681, option683, option685}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU64Type(option686) + + case 10: + var option693 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option693 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option688 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option688 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant687 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant687 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant687 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant687 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option688 = witTypes.Some[golem_core_types.NumericBound](variant687) + default: + panic("unreachable") + } + var option690 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option690 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant689 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant689 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant689 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant689 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option690 = witTypes.Some[golem_core_types.NumericBound](variant689) + default: + panic("unreachable") + } + var option692 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option692 = witTypes.None[string]() + case 1: + value691 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option692 = witTypes.Some[string](value691) + default: + panic("unreachable") + } + + option693 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option688, option690, option692}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyF32Type(option693) + + case 11: + var option700 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option700 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option695 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option695 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant694 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant694 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant694 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant694 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option695 = witTypes.Some[golem_core_types.NumericBound](variant694) + default: + panic("unreachable") + } + var option697 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option697 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant696 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant696 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant696 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant696 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option697 = witTypes.Some[golem_core_types.NumericBound](variant696) + default: + panic("unreachable") + } + var option699 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option699 = witTypes.None[string]() + case 1: + value698 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option699 = witTypes.Some[string](value698) + default: + panic("unreachable") + } + + option700 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option695, option697, option699}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyF64Type(option700) + + case 12: + + variant794 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant794 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result713 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value701 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option703 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option703 = witTypes.None[string]() + case 1: + value702 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option703 = witTypes.Some[string](value702) + default: + panic("unreachable") + } + result705 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value704 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result705 = append(result705, value704) + } + + result707 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value706 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result707 = append(result707, value706) + } + + var option709 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option709 = witTypes.None[string]() + case 1: + value708 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option709 = witTypes.Some[string](value708) + default: + panic("unreachable") + } + var option712 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option712 = witTypes.None[golem_core_types.Role]() + case 1: + var variant711 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant711 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant711 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant711 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value710 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant711 = golem_core_types.MakeRoleOther(value710) + + default: + panic("unreachable") + } + + option712 = witTypes.Some[golem_core_types.Role](variant711) + default: + panic("unreachable") + } + + result713 = append(result713, golem_core_types.NamedFieldType{value701, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option703, result705, result707, option709, option712}}) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyRecordType(result713) + + case 15: + result727 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value714 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option715 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option715 = witTypes.None[int32]() + case 1: + + option715 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option717 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option717 = witTypes.None[string]() + case 1: + value716 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option717 = witTypes.Some[string](value716) + default: + panic("unreachable") + } + result719 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value718 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result719 = append(result719, value718) + } + + result721 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value720 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result721 = append(result721, value720) + } + + var option723 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option723 = witTypes.None[string]() + case 1: + value722 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option723 = witTypes.Some[string](value722) + default: + panic("unreachable") + } + var option726 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option726 = witTypes.None[golem_core_types.Role]() + case 1: + var variant725 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant725 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant725 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant725 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value724 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant725 = golem_core_types.MakeRoleOther(value724) + + default: + panic("unreachable") + } + + option726 = witTypes.Some[golem_core_types.Role](variant725) + default: + panic("unreachable") + } + + result727 = append(result727, golem_core_types.VariantCaseType{value714, option715, golem_core_types.MetadataEnvelope{option717, result719, result721, option723, option726}}) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyVariantType(result727) + + case 16: + result729 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value728 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result729 = append(result729, value728) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyEnumType(result729) + + case 17: + result731 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value730 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result731 = append(result731, value730) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyFlagsType(result731) + + case 18: + result732 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result732 = append(result732, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyTupleType(result732) + + case 19: + + variant794 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant794 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant794 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant794 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option733 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option733 = witTypes.None[int32]() + case 1: + + option733 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option734 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option734 = witTypes.None[int32]() + case 1: + + option734 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option733, option734}) + + case 24: + var option737 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option737 = witTypes.None[[]string]() + case 1: + result736 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value735 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result736 = append(result736, value735) + } + + option737 = witTypes.Some[[]string](result736) + default: + panic("unreachable") + } + var option738 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option738 = witTypes.None[uint32]() + case 1: + + option738 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option739 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option739 = witTypes.None[uint32]() + case 1: + + option739 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option741 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option741 = witTypes.None[string]() + case 1: + value740 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option741 = witTypes.Some[string](value740) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option737, option738, option739, option741}) + + case 25: + var option744 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option744 = witTypes.None[[]string]() + case 1: + result743 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value742 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result743 = append(result743, value742) + } + + option744 = witTypes.Some[[]string](result743) + default: + panic("unreachable") + } + var option745 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option745 = witTypes.None[uint32]() + case 1: + + option745 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option746 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option746 = witTypes.None[uint32]() + case 1: + + option746 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option744, option745, option746}) + + case 26: + var option749 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option749 = witTypes.None[[]string]() + case 1: + result748 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value747 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result748 = append(result748, value747) + } + + option749 = witTypes.Some[[]string](result748) + default: + panic("unreachable") + } + var option752 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option752 = witTypes.None[[]string]() + case 1: + result751 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value750 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result751 = append(result751, value750) + } + + option752 = witTypes.Some[[]string](result751) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option749, option752}) + + case 27: + var option755 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option755 = witTypes.None[[]string]() + case 1: + result754 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value753 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result754 = append(result754, value753) + } + + option755 = witTypes.Some[[]string](result754) + default: + panic("unreachable") + } + var option758 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option758 = witTypes.None[[]string]() + case 1: + result757 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value756 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result757 = append(result757, value756) + } + + option758 = witTypes.Some[[]string](result757) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option755, option758}) + + case 28: + + variant794 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant794 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value759 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result761 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value760 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result761 = append(result761, value760) + } + + var option763 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option763 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value762 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option763 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value762}) + default: + panic("unreachable") + } + var option765 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option765 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value764 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option765 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value764}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value759, result761, option763, option765}) + + case 31: + result787 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value766 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant775 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value767 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRulePrefix(value767) + + case 1: + value768 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleSuffix(value768) + + case 2: + value769 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleContains(value769) + + case 3: + value770 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleRegex(value770) + + case 4: + value771 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option773 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option773 = witTypes.None[string]() + case 1: + value772 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option773 = witTypes.Some[string](value772) + default: + panic("unreachable") + } + + variant775 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value771, option773}) + + case 5: + value774 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value774) + + default: + panic("unreachable") + } + var option777 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option777 = witTypes.None[string]() + case 1: + value776 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option777 = witTypes.Some[string](value776) + default: + panic("unreachable") + } + result779 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value778 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result779 = append(result779, value778) + } + + result781 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value780 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result781 = append(result781, value780) + } + + var option783 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option783 = witTypes.None[string]() + case 1: + value782 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option783 = witTypes.Some[string](value782) + default: + panic("unreachable") + } + var option786 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option786 = witTypes.None[golem_core_types.Role]() + case 1: + var variant785 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant785 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant785 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant785 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value784 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant785 = golem_core_types.MakeRoleOther(value784) + + default: + panic("unreachable") + } + + option786 = witTypes.Some[golem_core_types.Role](variant785) + default: + panic("unreachable") + } + + result787 = append(result787, golem_core_types.UnionBranch{value766, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant775, golem_core_types.MetadataEnvelope{option777, result779, result781, option783, option786}}) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result787}) + + case 32: + var option789 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option789 = witTypes.None[string]() + case 1: + value788 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option789 = witTypes.Some[string](value788) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option789}) + + case 33: + var option791 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option791 = witTypes.None[string]() + case 1: + value790 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option791 = witTypes.Some[string](value790) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option791}) + + case 34: + var option792 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option792 = witTypes.None[int32]() + case 1: + + option792 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyFutureType(option792) + + case 35: + var option793 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option793 = witTypes.None[int32]() + case 1: + + option793 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyStreamType(option793) + + default: + panic("unreachable") + } + var option796 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option796 = witTypes.None[string]() + case 1: + value795 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option796 = witTypes.Some[string](value795) + default: + panic("unreachable") + } + result798 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value797 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result798 = append(result798, value797) + } + + result800 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value799 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result800 = append(result800, value799) + } + + var option802 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option802 = witTypes.None[string]() + case 1: + value801 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option802 = witTypes.Some[string](value801) + default: + panic("unreachable") + } + var option805 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option805 = witTypes.None[golem_core_types.Role]() + case 1: + var variant804 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant804 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant804 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant804 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value803 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant804 = golem_core_types.MakeRoleOther(value803) + + default: + panic("unreachable") + } + + option805 = witTypes.Some[golem_core_types.Role](variant804) + default: + panic("unreachable") + } + + result806 = append(result806, golem_core_types.SchemaTypeNode{variant794, golem_core_types.MetadataEnvelope{option796, result798, result800, option802, option805}}) + } + + result810 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value807 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option809 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option809 = witTypes.None[string]() + case 1: + value808 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option809 = witTypes.Some[string](value808) + default: + panic("unreachable") + } + + result810 = append(result810, golem_core_types.SchemaTypeDef{value807, option809, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result834 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant833 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant833 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant833 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant833 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant833 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant833 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant833 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant833 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant833 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant833 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant833 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant833 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant833 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value811 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeStringValue(value811) + + case 13: + result812 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result812 = append(result812, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeRecordValue(result812) + + case 14: + var option813 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option813 = witTypes.None[int32]() + case 1: + + option813 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option813}) + + case 15: + + variant833 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result814 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result814 = append(result814, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant833 = golem_core_types.MakeSchemaValueNodeFlagsValue(result814) + + case 17: + result815 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result815 = append(result815, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeTupleValue(result815) + + case 18: + result816 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result816 = append(result816, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeListValue(result816) + + case 19: + result817 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result817 = append(result817, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeFixedListValue(result817) + + case 20: + result818 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result818 = append(result818, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant833 = golem_core_types.MakeSchemaValueNodeMapValue(result818) + + case 21: + var option819 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option819 = witTypes.None[int32]() + case 1: + + option819 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeOptionValue(option819) + + case 22: + var variant822 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option820 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option820 = witTypes.None[int32]() + case 1: + + option820 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant822 = golem_core_types.MakeResultValuePayloadOkValue(option820) + + case 1: + var option821 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option821 = witTypes.None[int32]() + case 1: + + option821 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant822 = golem_core_types.MakeResultValuePayloadErrValue(option821) + + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeResultValue(variant822) + + case 23: + value823 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option825 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option825 = witTypes.None[string]() + case 1: + value824 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option825 = witTypes.Some[string](value824) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value823, option825}) + + case 24: + value826 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option828 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option828 = witTypes.None[string]() + case 1: + value827 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option828 = witTypes.Some[string](value827) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value826, option828}) + + case 25: + value829 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodePathValue(value829) + + case 26: + value830 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeUrlValue(value830) + + case 27: + + variant833 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant833 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value831 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value831}) + + case 30: + value832 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value832, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant833 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant833 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result834 = append(result834, variant833) + } + + option835 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result806, result810, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result834, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCancelled(CancelledParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), option835}) + + case 4: + var variant1280 AgentInvocation + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + value836 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + result1012 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))))), index*(56+22*4)) + var variant1000 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1000 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1000 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option843 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option843 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option838 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option838 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant837 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant837 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant837 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant837 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option838 = witTypes.Some[golem_core_types.NumericBound](variant837) + default: + panic("unreachable") + } + var option840 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option840 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant839 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant839 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant839 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant839 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option840 = witTypes.Some[golem_core_types.NumericBound](variant839) + default: + panic("unreachable") + } + var option842 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option842 = witTypes.None[string]() + case 1: + value841 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option842 = witTypes.Some[string](value841) + default: + panic("unreachable") + } + + option843 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option838, option840, option842}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS8Type(option843) + + case 3: + var option850 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option850 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option845 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option845 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant844 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant844 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant844 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant844 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option845 = witTypes.Some[golem_core_types.NumericBound](variant844) + default: + panic("unreachable") + } + var option847 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option847 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant846 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant846 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant846 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant846 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option847 = witTypes.Some[golem_core_types.NumericBound](variant846) + default: + panic("unreachable") + } + var option849 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option849 = witTypes.None[string]() + case 1: + value848 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option849 = witTypes.Some[string](value848) + default: + panic("unreachable") + } + + option850 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option845, option847, option849}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS16Type(option850) + + case 4: + var option857 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option857 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option852 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option852 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant851 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant851 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant851 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant851 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option852 = witTypes.Some[golem_core_types.NumericBound](variant851) + default: + panic("unreachable") + } + var option854 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option854 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant853 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant853 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant853 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant853 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option854 = witTypes.Some[golem_core_types.NumericBound](variant853) + default: + panic("unreachable") + } + var option856 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option856 = witTypes.None[string]() + case 1: + value855 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option856 = witTypes.Some[string](value855) + default: + panic("unreachable") + } + + option857 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option852, option854, option856}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS32Type(option857) + + case 5: + var option864 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option864 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option859 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option859 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant858 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant858 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant858 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant858 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option859 = witTypes.Some[golem_core_types.NumericBound](variant858) + default: + panic("unreachable") + } + var option861 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option861 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant860 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant860 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant860 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant860 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option861 = witTypes.Some[golem_core_types.NumericBound](variant860) + default: + panic("unreachable") + } + var option863 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option863 = witTypes.None[string]() + case 1: + value862 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option863 = witTypes.Some[string](value862) + default: + panic("unreachable") + } + + option864 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option859, option861, option863}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS64Type(option864) + + case 6: + var option871 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option871 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option866 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option866 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant865 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant865 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant865 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant865 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option866 = witTypes.Some[golem_core_types.NumericBound](variant865) + default: + panic("unreachable") + } + var option868 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option868 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant867 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant867 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant867 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant867 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option868 = witTypes.Some[golem_core_types.NumericBound](variant867) + default: + panic("unreachable") + } + var option870 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option870 = witTypes.None[string]() + case 1: + value869 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option870 = witTypes.Some[string](value869) + default: + panic("unreachable") + } + + option871 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option866, option868, option870}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU8Type(option871) + + case 7: + var option878 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option878 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option873 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option873 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant872 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant872 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant872 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant872 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option873 = witTypes.Some[golem_core_types.NumericBound](variant872) + default: + panic("unreachable") + } + var option875 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option875 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant874 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant874 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant874 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant874 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option875 = witTypes.Some[golem_core_types.NumericBound](variant874) + default: + panic("unreachable") + } + var option877 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option877 = witTypes.None[string]() + case 1: + value876 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option877 = witTypes.Some[string](value876) + default: + panic("unreachable") + } + + option878 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option873, option875, option877}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU16Type(option878) + + case 8: + var option885 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option885 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option880 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option880 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant879 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant879 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant879 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant879 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option880 = witTypes.Some[golem_core_types.NumericBound](variant879) + default: + panic("unreachable") + } + var option882 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option882 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant881 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant881 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant881 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant881 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option882 = witTypes.Some[golem_core_types.NumericBound](variant881) + default: + panic("unreachable") + } + var option884 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option884 = witTypes.None[string]() + case 1: + value883 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option884 = witTypes.Some[string](value883) + default: + panic("unreachable") + } + + option885 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option880, option882, option884}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU32Type(option885) + + case 9: + var option892 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option892 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option887 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option887 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant886 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant886 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant886 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant886 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option887 = witTypes.Some[golem_core_types.NumericBound](variant886) + default: + panic("unreachable") + } + var option889 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option889 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant888 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant888 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant888 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant888 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option889 = witTypes.Some[golem_core_types.NumericBound](variant888) + default: + panic("unreachable") + } + var option891 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option891 = witTypes.None[string]() + case 1: + value890 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option891 = witTypes.Some[string](value890) + default: + panic("unreachable") + } + + option892 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option887, option889, option891}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU64Type(option892) + + case 10: + var option899 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option899 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option894 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option894 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant893 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant893 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant893 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant893 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option894 = witTypes.Some[golem_core_types.NumericBound](variant893) + default: + panic("unreachable") + } + var option896 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option896 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant895 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant895 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant895 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant895 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option896 = witTypes.Some[golem_core_types.NumericBound](variant895) + default: + panic("unreachable") + } + var option898 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option898 = witTypes.None[string]() + case 1: + value897 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option898 = witTypes.Some[string](value897) + default: + panic("unreachable") + } + + option899 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option894, option896, option898}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyF32Type(option899) + + case 11: + var option906 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option906 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option901 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option901 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant900 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant900 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant900 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant900 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option901 = witTypes.Some[golem_core_types.NumericBound](variant900) + default: + panic("unreachable") + } + var option903 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option903 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant902 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant902 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant902 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant902 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option903 = witTypes.Some[golem_core_types.NumericBound](variant902) + default: + panic("unreachable") + } + var option905 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option905 = witTypes.None[string]() + case 1: + value904 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option905 = witTypes.Some[string](value904) + default: + panic("unreachable") + } + + option906 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option901, option903, option905}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyF64Type(option906) + + case 12: + + variant1000 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1000 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result919 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value907 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option909 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option909 = witTypes.None[string]() + case 1: + value908 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option909 = witTypes.Some[string](value908) + default: + panic("unreachable") + } + result911 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value910 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result911 = append(result911, value910) + } + + result913 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value912 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result913 = append(result913, value912) + } + + var option915 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option915 = witTypes.None[string]() + case 1: + value914 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option915 = witTypes.Some[string](value914) + default: + panic("unreachable") + } + var option918 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option918 = witTypes.None[golem_core_types.Role]() + case 1: + var variant917 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant917 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant917 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant917 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value916 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant917 = golem_core_types.MakeRoleOther(value916) + + default: + panic("unreachable") + } + + option918 = witTypes.Some[golem_core_types.Role](variant917) + default: + panic("unreachable") + } + + result919 = append(result919, golem_core_types.NamedFieldType{value907, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option909, result911, result913, option915, option918}}) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyRecordType(result919) + + case 15: + result933 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value920 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option921 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option921 = witTypes.None[int32]() + case 1: + + option921 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option923 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option923 = witTypes.None[string]() + case 1: + value922 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option923 = witTypes.Some[string](value922) + default: + panic("unreachable") + } + result925 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value924 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result925 = append(result925, value924) + } + + result927 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value926 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result927 = append(result927, value926) + } + + var option929 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option929 = witTypes.None[string]() + case 1: + value928 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option929 = witTypes.Some[string](value928) + default: + panic("unreachable") + } + var option932 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option932 = witTypes.None[golem_core_types.Role]() + case 1: + var variant931 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant931 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant931 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant931 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value930 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant931 = golem_core_types.MakeRoleOther(value930) + + default: + panic("unreachable") + } + + option932 = witTypes.Some[golem_core_types.Role](variant931) + default: + panic("unreachable") + } + + result933 = append(result933, golem_core_types.VariantCaseType{value920, option921, golem_core_types.MetadataEnvelope{option923, result925, result927, option929, option932}}) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyVariantType(result933) + + case 16: + result935 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value934 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result935 = append(result935, value934) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyEnumType(result935) + + case 17: + result937 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value936 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result937 = append(result937, value936) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyFlagsType(result937) + + case 18: + result938 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result938 = append(result938, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyTupleType(result938) + + case 19: + + variant1000 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1000 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1000 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1000 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option939 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option939 = witTypes.None[int32]() + case 1: + + option939 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option940 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option940 = witTypes.None[int32]() + case 1: + + option940 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option939, option940}) + + case 24: + var option943 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option943 = witTypes.None[[]string]() + case 1: + result942 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value941 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result942 = append(result942, value941) + } + + option943 = witTypes.Some[[]string](result942) + default: + panic("unreachable") + } + var option944 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option944 = witTypes.None[uint32]() + case 1: + + option944 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option945 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option945 = witTypes.None[uint32]() + case 1: + + option945 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option947 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option947 = witTypes.None[string]() + case 1: + value946 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option947 = witTypes.Some[string](value946) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option943, option944, option945, option947}) + + case 25: + var option950 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option950 = witTypes.None[[]string]() + case 1: + result949 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value948 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result949 = append(result949, value948) + } + + option950 = witTypes.Some[[]string](result949) + default: + panic("unreachable") + } + var option951 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option951 = witTypes.None[uint32]() + case 1: + + option951 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option952 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option952 = witTypes.None[uint32]() + case 1: + + option952 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option950, option951, option952}) + + case 26: + var option955 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option955 = witTypes.None[[]string]() + case 1: + result954 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value953 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result954 = append(result954, value953) + } + + option955 = witTypes.Some[[]string](result954) + default: + panic("unreachable") + } + var option958 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option958 = witTypes.None[[]string]() + case 1: + result957 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value956 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result957 = append(result957, value956) + } + + option958 = witTypes.Some[[]string](result957) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option955, option958}) + + case 27: + var option961 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option961 = witTypes.None[[]string]() + case 1: + result960 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value959 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result960 = append(result960, value959) + } + + option961 = witTypes.Some[[]string](result960) + default: + panic("unreachable") + } + var option964 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option964 = witTypes.None[[]string]() + case 1: + result963 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value962 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result963 = append(result963, value962) + } + + option964 = witTypes.Some[[]string](result963) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option961, option964}) + + case 28: + + variant1000 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1000 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value965 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result967 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value966 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result967 = append(result967, value966) + } + + var option969 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option969 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value968 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option969 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value968}) + default: + panic("unreachable") + } + var option971 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option971 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value970 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option971 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value970}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value965, result967, option969, option971}) + + case 31: + result993 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value972 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant981 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value973 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRulePrefix(value973) + + case 1: + value974 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleSuffix(value974) + + case 2: + value975 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleContains(value975) + + case 3: + value976 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleRegex(value976) + + case 4: + value977 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option979 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option979 = witTypes.None[string]() + case 1: + value978 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option979 = witTypes.Some[string](value978) + default: + panic("unreachable") + } + + variant981 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value977, option979}) + + case 5: + value980 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value980) + + default: + panic("unreachable") + } + var option983 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option983 = witTypes.None[string]() + case 1: + value982 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option983 = witTypes.Some[string](value982) + default: + panic("unreachable") + } + result985 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value984 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result985 = append(result985, value984) + } + + result987 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value986 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result987 = append(result987, value986) + } + + var option989 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option989 = witTypes.None[string]() + case 1: + value988 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option989 = witTypes.Some[string](value988) + default: + panic("unreachable") + } + var option992 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option992 = witTypes.None[golem_core_types.Role]() + case 1: + var variant991 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant991 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant991 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant991 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value990 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant991 = golem_core_types.MakeRoleOther(value990) + + default: + panic("unreachable") + } + + option992 = witTypes.Some[golem_core_types.Role](variant991) + default: + panic("unreachable") + } + + result993 = append(result993, golem_core_types.UnionBranch{value972, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant981, golem_core_types.MetadataEnvelope{option983, result985, result987, option989, option992}}) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result993}) + + case 32: + var option995 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option995 = witTypes.None[string]() + case 1: + value994 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option995 = witTypes.Some[string](value994) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option995}) + + case 33: + var option997 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option997 = witTypes.None[string]() + case 1: + value996 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option997 = witTypes.Some[string](value996) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option997}) + + case 34: + var option998 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option998 = witTypes.None[int32]() + case 1: + + option998 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyFutureType(option998) + + case 35: + var option999 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option999 = witTypes.None[int32]() + case 1: + + option999 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyStreamType(option999) + + default: + panic("unreachable") + } + var option1002 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1002 = witTypes.None[string]() + case 1: + value1001 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1002 = witTypes.Some[string](value1001) + default: + panic("unreachable") + } + result1004 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1003 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1004 = append(result1004, value1003) + } + + result1006 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1005 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1006 = append(result1006, value1005) + } + + var option1008 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1008 = witTypes.None[string]() + case 1: + value1007 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1008 = witTypes.Some[string](value1007) + default: + panic("unreachable") + } + var option1011 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1011 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1010 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1010 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1010 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1010 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1009 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1010 = golem_core_types.MakeRoleOther(value1009) + + default: + panic("unreachable") + } + + option1011 = witTypes.Some[golem_core_types.Role](variant1010) + default: + panic("unreachable") + } + + result1012 = append(result1012, golem_core_types.SchemaTypeNode{variant1000, golem_core_types.MetadataEnvelope{option1002, result1004, result1006, option1008, option1011}}) + } + + result1016 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(6*4)) + value1013 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1015 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1015 = witTypes.None[string]() + case 1: + value1014 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1015 = witTypes.Some[string](value1014) + default: + panic("unreachable") + } + + result1016 = append(result1016, golem_core_types.SchemaTypeDef{value1013, option1015, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1040 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4))))), index*(16+4*4)) + var variant1039 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1039 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1039 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1039 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1039 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1039 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1039 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1039 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1039 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1039 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1039 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1039 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1039 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1017 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeStringValue(value1017) + + case 13: + result1018 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1018 = append(result1018, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeRecordValue(result1018) + + case 14: + var option1019 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1019 = witTypes.None[int32]() + case 1: + + option1019 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1019}) + + case 15: + + variant1039 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1020 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1020 = append(result1020, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1020) + + case 17: + result1021 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1021 = append(result1021, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeTupleValue(result1021) + + case 18: + result1022 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1022 = append(result1022, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeListValue(result1022) + + case 19: + result1023 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1023 = append(result1023, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1023) + + case 20: + result1024 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1024 = append(result1024, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeMapValue(result1024) + + case 21: + var option1025 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1025 = witTypes.None[int32]() + case 1: + + option1025 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeOptionValue(option1025) + + case 22: + var variant1028 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1026 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1026 = witTypes.None[int32]() + case 1: + + option1026 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1028 = golem_core_types.MakeResultValuePayloadOkValue(option1026) + + case 1: + var option1027 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1027 = witTypes.None[int32]() + case 1: + + option1027 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1028 = golem_core_types.MakeResultValuePayloadErrValue(option1027) + + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeResultValue(variant1028) + + case 23: + value1029 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1031 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1031 = witTypes.None[string]() + case 1: + value1030 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1031 = witTypes.Some[string](value1030) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1029, option1031}) + + case 24: + value1032 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1034 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1034 = witTypes.None[string]() + case 1: + value1033 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1034 = witTypes.Some[string](value1033) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1032, option1034}) + + case 25: + value1035 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodePathValue(value1035) + + case 26: + value1036 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeUrlValue(value1036) + + case 27: + + variant1039 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1039 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1037 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1037}) + + case 30: + value1038 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1038, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1039 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1039 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1040 = append(result1040, variant1039) + } + + value1041 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))) + result1043 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))))), index*(2*4)) + value1042 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1043 = append(result1043, value1042) + } + + result1055 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + result1054 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1053 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1044 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1046 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1046 = witTypes.None[string]() + case 1: + value1045 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1046 = witTypes.Some[string](value1045) + default: + panic("unreachable") + } + var option1047 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1047 = witTypes.None[uint64]() + case 1: + + option1047 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1051 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1048 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1050 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1049 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1050 = golem_api_context.MakeAttributeValueString(value1049) + + default: + panic("unreachable") + } + + result1051 = append(result1051, golem_api_context.Attribute{value1048, variant1050}) + } + + variant1053 = MakeSpanDataLocalSpan(LocalSpanData{value1044, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1046, option1047, result1051, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1052 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1053 = MakeSpanDataExternalSpan(ExternalSpanData{value1052}) + + default: + panic("unreachable") + } + + result1054 = append(result1054, variant1053) + } + + result1055 = append(result1055, result1054) + } + + variant1280 = MakeAgentInvocationAgentInitialization(AgentInitializationParameters{value836, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1012, result1016, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))}, golem_core_types.SchemaValueTree{result1040, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))}}, value1041, result1043, result1055}) + + case 1: + value1056 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value1057 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + result1233 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(56+22*4)) + var variant1221 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1221 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1221 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1064 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1064 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1059 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1059 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1058 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1058 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1058 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1058 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1059 = witTypes.Some[golem_core_types.NumericBound](variant1058) + default: + panic("unreachable") + } + var option1061 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1061 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1060 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1060 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1060 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1060 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1061 = witTypes.Some[golem_core_types.NumericBound](variant1060) + default: + panic("unreachable") + } + var option1063 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1063 = witTypes.None[string]() + case 1: + value1062 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1063 = witTypes.Some[string](value1062) + default: + panic("unreachable") + } + + option1064 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1059, option1061, option1063}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS8Type(option1064) + + case 3: + var option1071 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1071 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1066 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1066 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1065 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1065 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1065 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1065 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1066 = witTypes.Some[golem_core_types.NumericBound](variant1065) + default: + panic("unreachable") + } + var option1068 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1068 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1067 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1067 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1067 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1067 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1068 = witTypes.Some[golem_core_types.NumericBound](variant1067) + default: + panic("unreachable") + } + var option1070 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1070 = witTypes.None[string]() + case 1: + value1069 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1070 = witTypes.Some[string](value1069) + default: + panic("unreachable") + } + + option1071 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1066, option1068, option1070}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS16Type(option1071) + + case 4: + var option1078 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1078 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1073 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1073 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1072 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1072 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1072 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1072 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1073 = witTypes.Some[golem_core_types.NumericBound](variant1072) + default: + panic("unreachable") + } + var option1075 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1075 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1074 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1074 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1074 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1074 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1075 = witTypes.Some[golem_core_types.NumericBound](variant1074) + default: + panic("unreachable") + } + var option1077 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1077 = witTypes.None[string]() + case 1: + value1076 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1077 = witTypes.Some[string](value1076) + default: + panic("unreachable") + } + + option1078 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1073, option1075, option1077}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS32Type(option1078) + + case 5: + var option1085 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1085 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1080 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1080 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1079 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1079 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1079 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1079 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1080 = witTypes.Some[golem_core_types.NumericBound](variant1079) + default: + panic("unreachable") + } + var option1082 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1082 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1081 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1081 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1081 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1081 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1082 = witTypes.Some[golem_core_types.NumericBound](variant1081) + default: + panic("unreachable") + } + var option1084 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1084 = witTypes.None[string]() + case 1: + value1083 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1084 = witTypes.Some[string](value1083) + default: + panic("unreachable") + } + + option1085 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1080, option1082, option1084}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS64Type(option1085) + + case 6: + var option1092 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1092 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1087 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1087 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1086 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1086 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1086 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1086 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1087 = witTypes.Some[golem_core_types.NumericBound](variant1086) + default: + panic("unreachable") + } + var option1089 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1089 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1088 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1088 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1088 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1088 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1089 = witTypes.Some[golem_core_types.NumericBound](variant1088) + default: + panic("unreachable") + } + var option1091 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1091 = witTypes.None[string]() + case 1: + value1090 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1091 = witTypes.Some[string](value1090) + default: + panic("unreachable") + } + + option1092 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1087, option1089, option1091}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU8Type(option1092) + + case 7: + var option1099 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1099 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1094 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1094 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1093 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1093 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1093 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1093 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1094 = witTypes.Some[golem_core_types.NumericBound](variant1093) + default: + panic("unreachable") + } + var option1096 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1096 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1095 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1095 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1095 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1095 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1096 = witTypes.Some[golem_core_types.NumericBound](variant1095) + default: + panic("unreachable") + } + var option1098 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1098 = witTypes.None[string]() + case 1: + value1097 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1098 = witTypes.Some[string](value1097) + default: + panic("unreachable") + } + + option1099 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1094, option1096, option1098}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU16Type(option1099) + + case 8: + var option1106 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1106 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1101 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1101 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1100 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1100 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1100 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1100 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1101 = witTypes.Some[golem_core_types.NumericBound](variant1100) + default: + panic("unreachable") + } + var option1103 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1103 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1102 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1102 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1102 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1102 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1103 = witTypes.Some[golem_core_types.NumericBound](variant1102) + default: + panic("unreachable") + } + var option1105 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1105 = witTypes.None[string]() + case 1: + value1104 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1105 = witTypes.Some[string](value1104) + default: + panic("unreachable") + } + + option1106 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1101, option1103, option1105}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU32Type(option1106) + + case 9: + var option1113 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1113 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1108 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1108 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1107 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1107 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1107 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1107 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1108 = witTypes.Some[golem_core_types.NumericBound](variant1107) + default: + panic("unreachable") + } + var option1110 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1110 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1109 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1109 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1109 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1109 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1110 = witTypes.Some[golem_core_types.NumericBound](variant1109) + default: + panic("unreachable") + } + var option1112 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1112 = witTypes.None[string]() + case 1: + value1111 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1112 = witTypes.Some[string](value1111) + default: + panic("unreachable") + } + + option1113 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1108, option1110, option1112}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU64Type(option1113) + + case 10: + var option1120 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1120 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1115 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1115 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1114 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1114 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1114 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1114 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1115 = witTypes.Some[golem_core_types.NumericBound](variant1114) + default: + panic("unreachable") + } + var option1117 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1117 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1116 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1116 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1116 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1116 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1117 = witTypes.Some[golem_core_types.NumericBound](variant1116) + default: + panic("unreachable") + } + var option1119 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1119 = witTypes.None[string]() + case 1: + value1118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1119 = witTypes.Some[string](value1118) + default: + panic("unreachable") + } + + option1120 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1115, option1117, option1119}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyF32Type(option1120) + + case 11: + var option1127 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1127 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1122 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1122 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1121 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1121 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1121 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1121 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1122 = witTypes.Some[golem_core_types.NumericBound](variant1121) + default: + panic("unreachable") + } + var option1124 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1124 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1123 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1123 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1123 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1123 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1124 = witTypes.Some[golem_core_types.NumericBound](variant1123) + default: + panic("unreachable") + } + var option1126 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1126 = witTypes.None[string]() + case 1: + value1125 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1126 = witTypes.Some[string](value1125) + default: + panic("unreachable") + } + + option1127 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1122, option1124, option1126}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyF64Type(option1127) + + case 12: + + variant1221 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1221 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1140 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1130 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1130 = witTypes.None[string]() + case 1: + value1129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1130 = witTypes.Some[string](value1129) + default: + panic("unreachable") + } + result1132 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1131 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1132 = append(result1132, value1131) + } + + result1134 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1133 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1134 = append(result1134, value1133) + } + + var option1136 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1136 = witTypes.None[string]() + case 1: + value1135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1136 = witTypes.Some[string](value1135) + default: + panic("unreachable") + } + var option1139 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1139 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1138 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1138 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1138 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1138 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1138 = golem_core_types.MakeRoleOther(value1137) + + default: + panic("unreachable") + } + + option1139 = witTypes.Some[golem_core_types.Role](variant1138) + default: + panic("unreachable") + } + + result1140 = append(result1140, golem_core_types.NamedFieldType{value1128, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1130, result1132, result1134, option1136, option1139}}) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyRecordType(result1140) + + case 15: + result1154 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1141 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1142 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1142 = witTypes.None[int32]() + case 1: + + option1142 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1144 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1144 = witTypes.None[string]() + case 1: + value1143 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1144 = witTypes.Some[string](value1143) + default: + panic("unreachable") + } + result1146 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1146 = append(result1146, value1145) + } + + result1148 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1147 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1148 = append(result1148, value1147) + } + + var option1150 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1150 = witTypes.None[string]() + case 1: + value1149 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1150 = witTypes.Some[string](value1149) + default: + panic("unreachable") + } + var option1153 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1153 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1152 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1152 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1152 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1152 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1152 = golem_core_types.MakeRoleOther(value1151) + + default: + panic("unreachable") + } + + option1153 = witTypes.Some[golem_core_types.Role](variant1152) + default: + panic("unreachable") + } + + result1154 = append(result1154, golem_core_types.VariantCaseType{value1141, option1142, golem_core_types.MetadataEnvelope{option1144, result1146, result1148, option1150, option1153}}) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyVariantType(result1154) + + case 16: + result1156 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1155 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1156 = append(result1156, value1155) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyEnumType(result1156) + + case 17: + result1158 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1158 = append(result1158, value1157) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1158) + + case 18: + result1159 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1159 = append(result1159, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyTupleType(result1159) + + case 19: + + variant1221 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1221 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1221 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1221 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1160 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1160 = witTypes.None[int32]() + case 1: + + option1160 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1161 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1161 = witTypes.None[int32]() + case 1: + + option1161 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1160, option1161}) + + case 24: + var option1164 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1164 = witTypes.None[[]string]() + case 1: + result1163 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1162 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1163 = append(result1163, value1162) + } + + option1164 = witTypes.Some[[]string](result1163) + default: + panic("unreachable") + } + var option1165 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1165 = witTypes.None[uint32]() + case 1: + + option1165 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1166 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1166 = witTypes.None[uint32]() + case 1: + + option1166 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1168 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1168 = witTypes.None[string]() + case 1: + value1167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1168 = witTypes.Some[string](value1167) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1164, option1165, option1166, option1168}) + + case 25: + var option1171 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1171 = witTypes.None[[]string]() + case 1: + result1170 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1170 = append(result1170, value1169) + } + + option1171 = witTypes.Some[[]string](result1170) + default: + panic("unreachable") + } + var option1172 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1172 = witTypes.None[uint32]() + case 1: + + option1172 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1173 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1173 = witTypes.None[uint32]() + case 1: + + option1173 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1171, option1172, option1173}) + + case 26: + var option1176 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1176 = witTypes.None[[]string]() + case 1: + result1175 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1175 = append(result1175, value1174) + } + + option1176 = witTypes.Some[[]string](result1175) + default: + panic("unreachable") + } + var option1179 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1179 = witTypes.None[[]string]() + case 1: + result1178 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1177 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1178 = append(result1178, value1177) + } + + option1179 = witTypes.Some[[]string](result1178) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1176, option1179}) + + case 27: + var option1182 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1182 = witTypes.None[[]string]() + case 1: + result1181 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1181 = append(result1181, value1180) + } + + option1182 = witTypes.Some[[]string](result1181) + default: + panic("unreachable") + } + var option1185 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1185 = witTypes.None[[]string]() + case 1: + result1184 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1183 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1184 = append(result1184, value1183) + } + + option1185 = witTypes.Some[[]string](result1184) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1182, option1185}) + + case 28: + + variant1221 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1221 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1188 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1187 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1188 = append(result1188, value1187) + } + + var option1190 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1190 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1189 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1190 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1189}) + default: + panic("unreachable") + } + var option1192 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1192 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1191 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1192 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1191}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1186, result1188, option1190, option1192}) + + case 31: + result1214 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1202 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRulePrefix(value1194) + + case 1: + value1195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleSuffix(value1195) + + case 2: + value1196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleContains(value1196) + + case 3: + value1197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleRegex(value1197) + + case 4: + value1198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1200 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1200 = witTypes.None[string]() + case 1: + value1199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1200 = witTypes.Some[string](value1199) + default: + panic("unreachable") + } + + variant1202 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1198, option1200}) + + case 5: + value1201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1201) + + default: + panic("unreachable") + } + var option1204 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1204 = witTypes.None[string]() + case 1: + value1203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1204 = witTypes.Some[string](value1203) + default: + panic("unreachable") + } + result1206 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1206 = append(result1206, value1205) + } + + result1208 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1207 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1208 = append(result1208, value1207) + } + + var option1210 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1210 = witTypes.None[string]() + case 1: + value1209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1210 = witTypes.Some[string](value1209) + default: + panic("unreachable") + } + var option1213 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1213 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1212 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1212 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1212 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1212 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1212 = golem_core_types.MakeRoleOther(value1211) + + default: + panic("unreachable") + } + + option1213 = witTypes.Some[golem_core_types.Role](variant1212) + default: + panic("unreachable") + } + + result1214 = append(result1214, golem_core_types.UnionBranch{value1193, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1202, golem_core_types.MetadataEnvelope{option1204, result1206, result1208, option1210, option1213}}) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1214}) + + case 32: + var option1216 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1216 = witTypes.None[string]() + case 1: + value1215 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1216 = witTypes.Some[string](value1215) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1216}) + + case 33: + var option1218 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1218 = witTypes.None[string]() + case 1: + value1217 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1218 = witTypes.Some[string](value1217) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1218}) + + case 34: + var option1219 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1219 = witTypes.None[int32]() + case 1: + + option1219 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyFutureType(option1219) + + case 35: + var option1220 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1220 = witTypes.None[int32]() + case 1: + + option1220 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyStreamType(option1220) + + default: + panic("unreachable") + } + var option1223 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1223 = witTypes.None[string]() + case 1: + value1222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1223 = witTypes.Some[string](value1222) + default: + panic("unreachable") + } + result1225 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1225 = append(result1225, value1224) + } + + result1227 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1227 = append(result1227, value1226) + } + + var option1229 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1229 = witTypes.None[string]() + case 1: + value1228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1229 = witTypes.Some[string](value1228) + default: + panic("unreachable") + } + var option1232 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1232 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1231 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1231 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1231 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1231 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1230 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1231 = golem_core_types.MakeRoleOther(value1230) + + default: + panic("unreachable") + } + + option1232 = witTypes.Some[golem_core_types.Role](variant1231) + default: + panic("unreachable") + } + + result1233 = append(result1233, golem_core_types.SchemaTypeNode{variant1221, golem_core_types.MetadataEnvelope{option1223, result1225, result1227, option1229, option1232}}) + } + + result1237 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(6*4)) + value1234 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1236 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1236 = witTypes.None[string]() + case 1: + value1235 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1236 = witTypes.Some[string](value1235) + default: + panic("unreachable") + } + + result1237 = append(result1237, golem_core_types.SchemaTypeDef{value1234, option1236, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1261 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4))))), index*(16+4*4)) + var variant1260 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1260 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1260 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1260 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1260 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1260 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1260 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1260 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1260 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1260 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1260 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1260 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1260 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1238 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeStringValue(value1238) + + case 13: + result1239 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1239 = append(result1239, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeRecordValue(result1239) + + case 14: + var option1240 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1240 = witTypes.None[int32]() + case 1: + + option1240 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1240}) + + case 15: + + variant1260 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1241 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1241 = append(result1241, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1241) + + case 17: + result1242 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1242 = append(result1242, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeTupleValue(result1242) + + case 18: + result1243 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1243 = append(result1243, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeListValue(result1243) + + case 19: + result1244 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1244 = append(result1244, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1244) + + case 20: + result1245 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1245 = append(result1245, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeMapValue(result1245) + + case 21: + var option1246 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1246 = witTypes.None[int32]() + case 1: + + option1246 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeOptionValue(option1246) + + case 22: + var variant1249 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1247 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1247 = witTypes.None[int32]() + case 1: + + option1247 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1249 = golem_core_types.MakeResultValuePayloadOkValue(option1247) + + case 1: + var option1248 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1248 = witTypes.None[int32]() + case 1: + + option1248 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1249 = golem_core_types.MakeResultValuePayloadErrValue(option1248) + + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeResultValue(variant1249) + + case 23: + value1250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1252 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1252 = witTypes.None[string]() + case 1: + value1251 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1252 = witTypes.Some[string](value1251) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1250, option1252}) + + case 24: + value1253 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1255 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1255 = witTypes.None[string]() + case 1: + value1254 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1255 = witTypes.Some[string](value1254) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1253, option1255}) + + case 25: + value1256 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodePathValue(value1256) + + case 26: + value1257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeUrlValue(value1257) + + case 27: + + variant1260 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1260 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1258 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1258}) + + case 30: + value1259 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1259, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1260 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1260 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1261 = append(result1261, variant1260) + } + + value1262 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + result1264 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + value1263 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1264 = append(result1264, value1263) + } + + result1276 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 16*4))))), index*(2*4)) + result1275 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1274 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1265 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1267 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1267 = witTypes.None[string]() + case 1: + value1266 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1267 = witTypes.Some[string](value1266) + default: + panic("unreachable") + } + var option1268 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1268 = witTypes.None[uint64]() + case 1: + + option1268 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1272 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1269 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1271 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1270 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1271 = golem_api_context.MakeAttributeValueString(value1270) + + default: + panic("unreachable") + } + + result1272 = append(result1272, golem_api_context.Attribute{value1269, variant1271}) + } + + variant1274 = MakeSpanDataLocalSpan(LocalSpanData{value1265, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1267, option1268, result1272, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1273 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1274 = MakeSpanDataExternalSpan(ExternalSpanData{value1273}) + + default: + panic("unreachable") + } + + result1275 = append(result1275, variant1274) + } + + result1276 = append(result1276, result1275) + } + + variant1280 = MakeAgentInvocationAgentMethodInvocation(AgentMethodInvocationParameters{value1056, value1057, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1233, result1237, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}, golem_core_types.SchemaValueTree{result1261, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))}}, value1262, result1264, result1276}) + + case 2: + + variant1280 = MakeAgentInvocationSaveSnapshot() + + case 3: + value1277 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value1278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant1280 = MakeAgentInvocationLoadSnapshot(LoadSnapshotParameters{SnapshotData{value1277, value1278}}) + + case 4: + value1279 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant1280 = MakeAgentInvocationProcessOplogEntries(ProcessOplogEntriesParameters{value1279}) + + case 5: + + variant1280 = MakeAgentInvocationManualUpdate(ManualUpdateParameters{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryAgentInvocationStarted(AgentInvocationStartedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant1280}) + + case 5: + var variant1695 AgentInvocationResult + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + result1456 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4))))), index*(56+22*4)) + var variant1444 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1444 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1444 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1287 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1287 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1282 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1282 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1281 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1281 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1281 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1281 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1282 = witTypes.Some[golem_core_types.NumericBound](variant1281) + default: + panic("unreachable") + } + var option1284 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1284 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1283 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1283 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1283 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1283 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1284 = witTypes.Some[golem_core_types.NumericBound](variant1283) + default: + panic("unreachable") + } + var option1286 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1286 = witTypes.None[string]() + case 1: + value1285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1286 = witTypes.Some[string](value1285) + default: + panic("unreachable") + } + + option1287 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1282, option1284, option1286}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS8Type(option1287) + + case 3: + var option1294 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1294 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1289 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1289 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1288 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1288 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1288 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1288 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1289 = witTypes.Some[golem_core_types.NumericBound](variant1288) + default: + panic("unreachable") + } + var option1291 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1291 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1290 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1290 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1290 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1290 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1291 = witTypes.Some[golem_core_types.NumericBound](variant1290) + default: + panic("unreachable") + } + var option1293 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1293 = witTypes.None[string]() + case 1: + value1292 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1293 = witTypes.Some[string](value1292) + default: + panic("unreachable") + } + + option1294 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1289, option1291, option1293}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS16Type(option1294) + + case 4: + var option1301 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1301 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1296 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1296 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1295 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1295 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1295 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1295 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1296 = witTypes.Some[golem_core_types.NumericBound](variant1295) + default: + panic("unreachable") + } + var option1298 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1298 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1297 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1297 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1297 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1297 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1298 = witTypes.Some[golem_core_types.NumericBound](variant1297) + default: + panic("unreachable") + } + var option1300 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1300 = witTypes.None[string]() + case 1: + value1299 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1300 = witTypes.Some[string](value1299) + default: + panic("unreachable") + } + + option1301 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1296, option1298, option1300}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS32Type(option1301) + + case 5: + var option1308 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1308 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1303 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1303 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1302 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1302 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1302 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1302 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1303 = witTypes.Some[golem_core_types.NumericBound](variant1302) + default: + panic("unreachable") + } + var option1305 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1305 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1304 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1304 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1304 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1304 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1305 = witTypes.Some[golem_core_types.NumericBound](variant1304) + default: + panic("unreachable") + } + var option1307 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1307 = witTypes.None[string]() + case 1: + value1306 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1307 = witTypes.Some[string](value1306) + default: + panic("unreachable") + } + + option1308 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1303, option1305, option1307}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS64Type(option1308) + + case 6: + var option1315 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1315 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1310 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1310 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1309 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1309 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1309 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1309 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1310 = witTypes.Some[golem_core_types.NumericBound](variant1309) + default: + panic("unreachable") + } + var option1312 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1312 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1311 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1311 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1311 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1311 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1312 = witTypes.Some[golem_core_types.NumericBound](variant1311) + default: + panic("unreachable") + } + var option1314 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1314 = witTypes.None[string]() + case 1: + value1313 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1314 = witTypes.Some[string](value1313) + default: + panic("unreachable") + } + + option1315 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1310, option1312, option1314}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU8Type(option1315) + + case 7: + var option1322 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1322 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1317 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1317 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1316 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1316 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1316 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1316 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1317 = witTypes.Some[golem_core_types.NumericBound](variant1316) + default: + panic("unreachable") + } + var option1319 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1319 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1318 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1318 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1318 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1318 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1319 = witTypes.Some[golem_core_types.NumericBound](variant1318) + default: + panic("unreachable") + } + var option1321 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1321 = witTypes.None[string]() + case 1: + value1320 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1321 = witTypes.Some[string](value1320) + default: + panic("unreachable") + } + + option1322 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1317, option1319, option1321}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU16Type(option1322) + + case 8: + var option1329 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1329 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1324 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1324 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1323 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1323 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1323 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1323 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1324 = witTypes.Some[golem_core_types.NumericBound](variant1323) + default: + panic("unreachable") + } + var option1326 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1326 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1325 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1325 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1325 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1325 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1326 = witTypes.Some[golem_core_types.NumericBound](variant1325) + default: + panic("unreachable") + } + var option1328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1328 = witTypes.None[string]() + case 1: + value1327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1328 = witTypes.Some[string](value1327) + default: + panic("unreachable") + } + + option1329 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1324, option1326, option1328}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU32Type(option1329) + + case 9: + var option1336 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1336 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1331 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1331 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1330 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1330 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1330 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1330 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1331 = witTypes.Some[golem_core_types.NumericBound](variant1330) + default: + panic("unreachable") + } + var option1333 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1333 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1332 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1332 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1332 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1332 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1333 = witTypes.Some[golem_core_types.NumericBound](variant1332) + default: + panic("unreachable") + } + var option1335 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1335 = witTypes.None[string]() + case 1: + value1334 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1335 = witTypes.Some[string](value1334) + default: + panic("unreachable") + } + + option1336 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1331, option1333, option1335}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU64Type(option1336) + + case 10: + var option1343 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1343 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1338 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1338 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1337 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1337 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1337 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1337 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1338 = witTypes.Some[golem_core_types.NumericBound](variant1337) + default: + panic("unreachable") + } + var option1340 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1340 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1339 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1339 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1339 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1339 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1340 = witTypes.Some[golem_core_types.NumericBound](variant1339) + default: + panic("unreachable") + } + var option1342 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1342 = witTypes.None[string]() + case 1: + value1341 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1342 = witTypes.Some[string](value1341) + default: + panic("unreachable") + } + + option1343 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1338, option1340, option1342}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyF32Type(option1343) + + case 11: + var option1350 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1350 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1345 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1345 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1344 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1344 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1344 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1344 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1345 = witTypes.Some[golem_core_types.NumericBound](variant1344) + default: + panic("unreachable") + } + var option1347 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1347 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1346 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1346 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1346 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1346 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1347 = witTypes.Some[golem_core_types.NumericBound](variant1346) + default: + panic("unreachable") + } + var option1349 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1349 = witTypes.None[string]() + case 1: + value1348 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1349 = witTypes.Some[string](value1348) + default: + panic("unreachable") + } + + option1350 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1345, option1347, option1349}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyF64Type(option1350) + + case 12: + + variant1444 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1444 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1363 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1353 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1353 = witTypes.None[string]() + case 1: + value1352 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1353 = witTypes.Some[string](value1352) + default: + panic("unreachable") + } + result1355 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1355 = append(result1355, value1354) + } + + result1357 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1356 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1357 = append(result1357, value1356) + } + + var option1359 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1359 = witTypes.None[string]() + case 1: + value1358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1359 = witTypes.Some[string](value1358) + default: + panic("unreachable") + } + var option1362 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1362 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1361 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1361 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1361 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1361 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1360 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1361 = golem_core_types.MakeRoleOther(value1360) + + default: + panic("unreachable") + } + + option1362 = witTypes.Some[golem_core_types.Role](variant1361) + default: + panic("unreachable") + } + + result1363 = append(result1363, golem_core_types.NamedFieldType{value1351, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1353, result1355, result1357, option1359, option1362}}) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyRecordType(result1363) + + case 15: + result1377 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1364 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1365 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1365 = witTypes.None[int32]() + case 1: + + option1365 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1367 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1367 = witTypes.None[string]() + case 1: + value1366 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1367 = witTypes.Some[string](value1366) + default: + panic("unreachable") + } + result1369 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1368 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1369 = append(result1369, value1368) + } + + result1371 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1370 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1371 = append(result1371, value1370) + } + + var option1373 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1373 = witTypes.None[string]() + case 1: + value1372 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1373 = witTypes.Some[string](value1372) + default: + panic("unreachable") + } + var option1376 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1376 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1375 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1375 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1375 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1375 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1374 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1375 = golem_core_types.MakeRoleOther(value1374) + + default: + panic("unreachable") + } + + option1376 = witTypes.Some[golem_core_types.Role](variant1375) + default: + panic("unreachable") + } + + result1377 = append(result1377, golem_core_types.VariantCaseType{value1364, option1365, golem_core_types.MetadataEnvelope{option1367, result1369, result1371, option1373, option1376}}) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyVariantType(result1377) + + case 16: + result1379 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1379 = append(result1379, value1378) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyEnumType(result1379) + + case 17: + result1381 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1380 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1381 = append(result1381, value1380) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1381) + + case 18: + result1382 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1382 = append(result1382, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyTupleType(result1382) + + case 19: + + variant1444 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1444 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1444 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1444 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1383 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1383 = witTypes.None[int32]() + case 1: + + option1383 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1384 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1384 = witTypes.None[int32]() + case 1: + + option1384 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1383, option1384}) + + case 24: + var option1387 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1387 = witTypes.None[[]string]() + case 1: + result1386 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1385 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1386 = append(result1386, value1385) + } + + option1387 = witTypes.Some[[]string](result1386) + default: + panic("unreachable") + } + var option1388 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1388 = witTypes.None[uint32]() + case 1: + + option1388 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1389 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1389 = witTypes.None[uint32]() + case 1: + + option1389 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1391 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1391 = witTypes.None[string]() + case 1: + value1390 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1391 = witTypes.Some[string](value1390) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1387, option1388, option1389, option1391}) + + case 25: + var option1394 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1394 = witTypes.None[[]string]() + case 1: + result1393 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1392 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1393 = append(result1393, value1392) + } + + option1394 = witTypes.Some[[]string](result1393) + default: + panic("unreachable") + } + var option1395 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1395 = witTypes.None[uint32]() + case 1: + + option1395 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1396 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1396 = witTypes.None[uint32]() + case 1: + + option1396 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1394, option1395, option1396}) + + case 26: + var option1399 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1399 = witTypes.None[[]string]() + case 1: + result1398 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1397 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1398 = append(result1398, value1397) + } + + option1399 = witTypes.Some[[]string](result1398) + default: + panic("unreachable") + } + var option1402 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1402 = witTypes.None[[]string]() + case 1: + result1401 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1400 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1401 = append(result1401, value1400) + } + + option1402 = witTypes.Some[[]string](result1401) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1399, option1402}) + + case 27: + var option1405 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1405 = witTypes.None[[]string]() + case 1: + result1404 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1403 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1404 = append(result1404, value1403) + } + + option1405 = witTypes.Some[[]string](result1404) + default: + panic("unreachable") + } + var option1408 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1408 = witTypes.None[[]string]() + case 1: + result1407 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1407 = append(result1407, value1406) + } + + option1408 = witTypes.Some[[]string](result1407) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1405, option1408}) + + case 28: + + variant1444 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1444 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1409 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1411 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1411 = append(result1411, value1410) + } + + var option1413 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1413 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1413 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1412}) + default: + panic("unreachable") + } + var option1415 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1415 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1415 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1414}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1409, result1411, option1413, option1415}) + + case 31: + result1437 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1425 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1417 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRulePrefix(value1417) + + case 1: + value1418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleSuffix(value1418) + + case 2: + value1419 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleContains(value1419) + + case 3: + value1420 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleRegex(value1420) + + case 4: + value1421 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1423 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1423 = witTypes.None[string]() + case 1: + value1422 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1423 = witTypes.Some[string](value1422) + default: + panic("unreachable") + } + + variant1425 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1421, option1423}) + + case 5: + value1424 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1424) + + default: + panic("unreachable") + } + var option1427 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1427 = witTypes.None[string]() + case 1: + value1426 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1427 = witTypes.Some[string](value1426) + default: + panic("unreachable") + } + result1429 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1428 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1429 = append(result1429, value1428) + } + + result1431 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1430 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1431 = append(result1431, value1430) + } + + var option1433 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1433 = witTypes.None[string]() + case 1: + value1432 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1433 = witTypes.Some[string](value1432) + default: + panic("unreachable") + } + var option1436 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1436 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1435 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1435 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1435 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1435 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1434 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1435 = golem_core_types.MakeRoleOther(value1434) + + default: + panic("unreachable") + } + + option1436 = witTypes.Some[golem_core_types.Role](variant1435) + default: + panic("unreachable") + } + + result1437 = append(result1437, golem_core_types.UnionBranch{value1416, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1425, golem_core_types.MetadataEnvelope{option1427, result1429, result1431, option1433, option1436}}) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1437}) + + case 32: + var option1439 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1439 = witTypes.None[string]() + case 1: + value1438 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1439 = witTypes.Some[string](value1438) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1439}) + + case 33: + var option1441 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1441 = witTypes.None[string]() + case 1: + value1440 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1441 = witTypes.Some[string](value1440) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1441}) + + case 34: + var option1442 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1442 = witTypes.None[int32]() + case 1: + + option1442 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyFutureType(option1442) + + case 35: + var option1443 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1443 = witTypes.None[int32]() + case 1: + + option1443 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyStreamType(option1443) + + default: + panic("unreachable") + } + var option1446 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1446 = witTypes.None[string]() + case 1: + value1445 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1446 = witTypes.Some[string](value1445) + default: + panic("unreachable") + } + result1448 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1447 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1448 = append(result1448, value1447) + } + + result1450 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1449 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1450 = append(result1450, value1449) + } + + var option1452 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1452 = witTypes.None[string]() + case 1: + value1451 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1452 = witTypes.Some[string](value1451) + default: + panic("unreachable") + } + var option1455 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1455 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1454 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1454 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1454 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1454 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1453 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1454 = golem_core_types.MakeRoleOther(value1453) + + default: + panic("unreachable") + } + + option1455 = witTypes.Some[golem_core_types.Role](variant1454) + default: + panic("unreachable") + } + + result1456 = append(result1456, golem_core_types.SchemaTypeNode{variant1444, golem_core_types.MetadataEnvelope{option1446, result1448, result1450, option1452, option1455}}) + } + + result1460 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))))), index*(6*4)) + value1457 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1459 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1459 = witTypes.None[string]() + case 1: + value1458 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1459 = witTypes.Some[string](value1458) + default: + panic("unreachable") + } + + result1460 = append(result1460, golem_core_types.SchemaTypeDef{value1457, option1459, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1484 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))))), index*(16+4*4)) + var variant1483 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1483 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1483 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1483 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1483 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1483 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1483 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1483 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1483 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1483 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1483 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1483 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1483 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1461 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeStringValue(value1461) + + case 13: + result1462 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1462 = append(result1462, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeRecordValue(result1462) + + case 14: + var option1463 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1463 = witTypes.None[int32]() + case 1: + + option1463 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1463}) + + case 15: + + variant1483 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1464 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1464 = append(result1464, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1464) + + case 17: + result1465 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1465 = append(result1465, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeTupleValue(result1465) + + case 18: + result1466 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1466 = append(result1466, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeListValue(result1466) + + case 19: + result1467 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1467 = append(result1467, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1467) + + case 20: + result1468 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1468 = append(result1468, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeMapValue(result1468) + + case 21: + var option1469 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1469 = witTypes.None[int32]() + case 1: + + option1469 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeOptionValue(option1469) + + case 22: + var variant1472 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1470 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1470 = witTypes.None[int32]() + case 1: + + option1470 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1472 = golem_core_types.MakeResultValuePayloadOkValue(option1470) + + case 1: + var option1471 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1471 = witTypes.None[int32]() + case 1: + + option1471 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1472 = golem_core_types.MakeResultValuePayloadErrValue(option1471) + + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeResultValue(variant1472) + + case 23: + value1473 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1475 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1475 = witTypes.None[string]() + case 1: + value1474 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1475 = witTypes.Some[string](value1474) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1473, option1475}) + + case 24: + value1476 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1478 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1478 = witTypes.None[string]() + case 1: + value1477 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1478 = witTypes.Some[string](value1477) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1476, option1478}) + + case 25: + value1479 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodePathValue(value1479) + + case 26: + value1480 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeUrlValue(value1480) + + case 27: + + variant1483 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1483 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1481 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1481}) + + case 30: + value1482 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1482, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1483 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1483 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1484 = append(result1484, variant1483) + } + + variant1695 = MakeAgentInvocationResultAgentInitialization(AgentInvocationOutputParameters{golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1456, result1460, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))}, golem_core_types.SchemaValueTree{result1484, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 8*4)))}}}) + + case 1: + result1660 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4))))), index*(56+22*4)) + var variant1648 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1648 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1648 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1491 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1491 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1486 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1486 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1485 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1485 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1485 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1485 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1486 = witTypes.Some[golem_core_types.NumericBound](variant1485) + default: + panic("unreachable") + } + var option1488 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1488 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1487 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1487 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1487 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1487 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1488 = witTypes.Some[golem_core_types.NumericBound](variant1487) + default: + panic("unreachable") + } + var option1490 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1490 = witTypes.None[string]() + case 1: + value1489 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1490 = witTypes.Some[string](value1489) + default: + panic("unreachable") + } + + option1491 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1486, option1488, option1490}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS8Type(option1491) + + case 3: + var option1498 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1498 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1493 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1493 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1492 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1492 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1492 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1492 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1493 = witTypes.Some[golem_core_types.NumericBound](variant1492) + default: + panic("unreachable") + } + var option1495 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1495 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1494 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1494 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1494 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1494 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1495 = witTypes.Some[golem_core_types.NumericBound](variant1494) + default: + panic("unreachable") + } + var option1497 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1497 = witTypes.None[string]() + case 1: + value1496 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1497 = witTypes.Some[string](value1496) + default: + panic("unreachable") + } + + option1498 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1493, option1495, option1497}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS16Type(option1498) + + case 4: + var option1505 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1505 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1500 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1500 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1499 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1499 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1499 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1499 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1500 = witTypes.Some[golem_core_types.NumericBound](variant1499) + default: + panic("unreachable") + } + var option1502 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1502 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1501 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1501 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1501 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1501 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1502 = witTypes.Some[golem_core_types.NumericBound](variant1501) + default: + panic("unreachable") + } + var option1504 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1504 = witTypes.None[string]() + case 1: + value1503 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1504 = witTypes.Some[string](value1503) + default: + panic("unreachable") + } + + option1505 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1500, option1502, option1504}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS32Type(option1505) + + case 5: + var option1512 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1512 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1507 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1507 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1506 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1506 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1506 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1506 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1507 = witTypes.Some[golem_core_types.NumericBound](variant1506) + default: + panic("unreachable") + } + var option1509 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1509 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1508 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1508 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1508 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1508 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1509 = witTypes.Some[golem_core_types.NumericBound](variant1508) + default: + panic("unreachable") + } + var option1511 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1511 = witTypes.None[string]() + case 1: + value1510 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1511 = witTypes.Some[string](value1510) + default: + panic("unreachable") + } + + option1512 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1507, option1509, option1511}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS64Type(option1512) + + case 6: + var option1519 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1519 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1514 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1514 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1513 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1513 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1513 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1513 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1514 = witTypes.Some[golem_core_types.NumericBound](variant1513) + default: + panic("unreachable") + } + var option1516 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1516 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1515 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1515 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1515 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1515 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1516 = witTypes.Some[golem_core_types.NumericBound](variant1515) + default: + panic("unreachable") + } + var option1518 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1518 = witTypes.None[string]() + case 1: + value1517 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1518 = witTypes.Some[string](value1517) + default: + panic("unreachable") + } + + option1519 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1514, option1516, option1518}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU8Type(option1519) + + case 7: + var option1526 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1526 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1521 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1521 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1520 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1520 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1520 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1520 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1521 = witTypes.Some[golem_core_types.NumericBound](variant1520) + default: + panic("unreachable") + } + var option1523 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1523 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1522 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1522 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1522 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1522 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1523 = witTypes.Some[golem_core_types.NumericBound](variant1522) + default: + panic("unreachable") + } + var option1525 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1525 = witTypes.None[string]() + case 1: + value1524 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1525 = witTypes.Some[string](value1524) + default: + panic("unreachable") + } + + option1526 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1521, option1523, option1525}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU16Type(option1526) + + case 8: + var option1533 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1533 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1528 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1528 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1527 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1527 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1527 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1527 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1528 = witTypes.Some[golem_core_types.NumericBound](variant1527) + default: + panic("unreachable") + } + var option1530 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1530 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1529 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1529 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1529 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1529 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1530 = witTypes.Some[golem_core_types.NumericBound](variant1529) + default: + panic("unreachable") + } + var option1532 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1532 = witTypes.None[string]() + case 1: + value1531 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1532 = witTypes.Some[string](value1531) + default: + panic("unreachable") + } + + option1533 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1528, option1530, option1532}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU32Type(option1533) + + case 9: + var option1540 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1540 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1535 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1535 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1534 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1534 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1534 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1534 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1535 = witTypes.Some[golem_core_types.NumericBound](variant1534) + default: + panic("unreachable") + } + var option1537 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1537 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1536 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1536 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1536 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1536 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1537 = witTypes.Some[golem_core_types.NumericBound](variant1536) + default: + panic("unreachable") + } + var option1539 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1539 = witTypes.None[string]() + case 1: + value1538 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1539 = witTypes.Some[string](value1538) + default: + panic("unreachable") + } + + option1540 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1535, option1537, option1539}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU64Type(option1540) + + case 10: + var option1547 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1547 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1542 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1542 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1541 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1541 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1541 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1541 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1542 = witTypes.Some[golem_core_types.NumericBound](variant1541) + default: + panic("unreachable") + } + var option1544 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1544 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1543 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1543 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1543 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1543 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1544 = witTypes.Some[golem_core_types.NumericBound](variant1543) + default: + panic("unreachable") + } + var option1546 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1546 = witTypes.None[string]() + case 1: + value1545 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1546 = witTypes.Some[string](value1545) + default: + panic("unreachable") + } + + option1547 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1542, option1544, option1546}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyF32Type(option1547) + + case 11: + var option1554 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1554 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1549 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1549 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1548 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1548 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1548 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1548 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1549 = witTypes.Some[golem_core_types.NumericBound](variant1548) + default: + panic("unreachable") + } + var option1551 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1551 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1550 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1550 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1550 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1550 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1551 = witTypes.Some[golem_core_types.NumericBound](variant1550) + default: + panic("unreachable") + } + var option1553 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1553 = witTypes.None[string]() + case 1: + value1552 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1553 = witTypes.Some[string](value1552) + default: + panic("unreachable") + } + + option1554 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1549, option1551, option1553}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyF64Type(option1554) + + case 12: + + variant1648 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1648 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1567 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1555 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1557 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1557 = witTypes.None[string]() + case 1: + value1556 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1557 = witTypes.Some[string](value1556) + default: + panic("unreachable") + } + result1559 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1558 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1559 = append(result1559, value1558) + } + + result1561 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1560 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1561 = append(result1561, value1560) + } + + var option1563 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1563 = witTypes.None[string]() + case 1: + value1562 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1563 = witTypes.Some[string](value1562) + default: + panic("unreachable") + } + var option1566 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1566 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1565 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1565 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1565 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1565 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1564 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1565 = golem_core_types.MakeRoleOther(value1564) + + default: + panic("unreachable") + } + + option1566 = witTypes.Some[golem_core_types.Role](variant1565) + default: + panic("unreachable") + } + + result1567 = append(result1567, golem_core_types.NamedFieldType{value1555, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1557, result1559, result1561, option1563, option1566}}) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyRecordType(result1567) + + case 15: + result1581 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1568 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1569 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1569 = witTypes.None[int32]() + case 1: + + option1569 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1571 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1571 = witTypes.None[string]() + case 1: + value1570 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1571 = witTypes.Some[string](value1570) + default: + panic("unreachable") + } + result1573 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1572 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1573 = append(result1573, value1572) + } + + result1575 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1574 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1575 = append(result1575, value1574) + } + + var option1577 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1577 = witTypes.None[string]() + case 1: + value1576 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1577 = witTypes.Some[string](value1576) + default: + panic("unreachable") + } + var option1580 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1580 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1579 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1579 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1579 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1579 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1578 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1579 = golem_core_types.MakeRoleOther(value1578) + + default: + panic("unreachable") + } + + option1580 = witTypes.Some[golem_core_types.Role](variant1579) + default: + panic("unreachable") + } + + result1581 = append(result1581, golem_core_types.VariantCaseType{value1568, option1569, golem_core_types.MetadataEnvelope{option1571, result1573, result1575, option1577, option1580}}) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyVariantType(result1581) + + case 16: + result1583 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1582 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1583 = append(result1583, value1582) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyEnumType(result1583) + + case 17: + result1585 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1584 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1585 = append(result1585, value1584) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1585) + + case 18: + result1586 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1586 = append(result1586, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyTupleType(result1586) + + case 19: + + variant1648 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1648 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1648 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1648 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1587 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1587 = witTypes.None[int32]() + case 1: + + option1587 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1588 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1588 = witTypes.None[int32]() + case 1: + + option1588 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1587, option1588}) + + case 24: + var option1591 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1591 = witTypes.None[[]string]() + case 1: + result1590 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1589 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1590 = append(result1590, value1589) + } + + option1591 = witTypes.Some[[]string](result1590) + default: + panic("unreachable") + } + var option1592 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1592 = witTypes.None[uint32]() + case 1: + + option1592 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1593 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1593 = witTypes.None[uint32]() + case 1: + + option1593 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1595 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1595 = witTypes.None[string]() + case 1: + value1594 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1595 = witTypes.Some[string](value1594) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1591, option1592, option1593, option1595}) + + case 25: + var option1598 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1598 = witTypes.None[[]string]() + case 1: + result1597 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1596 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1597 = append(result1597, value1596) + } + + option1598 = witTypes.Some[[]string](result1597) + default: + panic("unreachable") + } + var option1599 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1599 = witTypes.None[uint32]() + case 1: + + option1599 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1600 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1600 = witTypes.None[uint32]() + case 1: + + option1600 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1598, option1599, option1600}) + + case 26: + var option1603 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1603 = witTypes.None[[]string]() + case 1: + result1602 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1601 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1602 = append(result1602, value1601) + } + + option1603 = witTypes.Some[[]string](result1602) + default: + panic("unreachable") + } + var option1606 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1606 = witTypes.None[[]string]() + case 1: + result1605 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1604 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1605 = append(result1605, value1604) + } + + option1606 = witTypes.Some[[]string](result1605) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1603, option1606}) + + case 27: + var option1609 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1609 = witTypes.None[[]string]() + case 1: + result1608 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1607 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1608 = append(result1608, value1607) + } + + option1609 = witTypes.Some[[]string](result1608) + default: + panic("unreachable") + } + var option1612 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1612 = witTypes.None[[]string]() + case 1: + result1611 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1610 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1611 = append(result1611, value1610) + } + + option1612 = witTypes.Some[[]string](result1611) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1609, option1612}) + + case 28: + + variant1648 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1648 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1613 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1615 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1614 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1615 = append(result1615, value1614) + } + + var option1617 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1617 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1616 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1617 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1616}) + default: + panic("unreachable") + } + var option1619 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1619 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1618 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1619 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1618}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1613, result1615, option1617, option1619}) + + case 31: + result1641 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1620 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1629 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1621 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRulePrefix(value1621) + + case 1: + value1622 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleSuffix(value1622) + + case 2: + value1623 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleContains(value1623) + + case 3: + value1624 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleRegex(value1624) + + case 4: + value1625 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1627 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1627 = witTypes.None[string]() + case 1: + value1626 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1627 = witTypes.Some[string](value1626) + default: + panic("unreachable") + } + + variant1629 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1625, option1627}) + + case 5: + value1628 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1628) + + default: + panic("unreachable") + } + var option1631 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1631 = witTypes.None[string]() + case 1: + value1630 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1631 = witTypes.Some[string](value1630) + default: + panic("unreachable") + } + result1633 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1632 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1633 = append(result1633, value1632) + } + + result1635 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1634 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1635 = append(result1635, value1634) + } + + var option1637 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1637 = witTypes.None[string]() + case 1: + value1636 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1637 = witTypes.Some[string](value1636) + default: + panic("unreachable") + } + var option1640 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1640 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1639 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1639 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1639 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1639 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1638 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1639 = golem_core_types.MakeRoleOther(value1638) + + default: + panic("unreachable") + } + + option1640 = witTypes.Some[golem_core_types.Role](variant1639) + default: + panic("unreachable") + } + + result1641 = append(result1641, golem_core_types.UnionBranch{value1620, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1629, golem_core_types.MetadataEnvelope{option1631, result1633, result1635, option1637, option1640}}) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1641}) + + case 32: + var option1643 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1643 = witTypes.None[string]() + case 1: + value1642 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1643 = witTypes.Some[string](value1642) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1643}) + + case 33: + var option1645 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1645 = witTypes.None[string]() + case 1: + value1644 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1645 = witTypes.Some[string](value1644) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1645}) + + case 34: + var option1646 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1646 = witTypes.None[int32]() + case 1: + + option1646 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyFutureType(option1646) + + case 35: + var option1647 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1647 = witTypes.None[int32]() + case 1: + + option1647 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyStreamType(option1647) + + default: + panic("unreachable") + } + var option1650 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1650 = witTypes.None[string]() + case 1: + value1649 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1650 = witTypes.Some[string](value1649) + default: + panic("unreachable") + } + result1652 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1651 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1652 = append(result1652, value1651) + } + + result1654 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1653 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1654 = append(result1654, value1653) + } + + var option1656 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1656 = witTypes.None[string]() + case 1: + value1655 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1656 = witTypes.Some[string](value1655) + default: + panic("unreachable") + } + var option1659 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1659 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1658 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1658 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1658 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1658 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1657 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1658 = golem_core_types.MakeRoleOther(value1657) + + default: + panic("unreachable") + } + + option1659 = witTypes.Some[golem_core_types.Role](variant1658) + default: + panic("unreachable") + } + + result1660 = append(result1660, golem_core_types.SchemaTypeNode{variant1648, golem_core_types.MetadataEnvelope{option1650, result1652, result1654, option1656, option1659}}) + } + + result1664 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))))), index*(6*4)) + value1661 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1663 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1663 = witTypes.None[string]() + case 1: + value1662 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1663 = witTypes.Some[string](value1662) + default: + panic("unreachable") + } + + result1664 = append(result1664, golem_core_types.SchemaTypeDef{value1661, option1663, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1688 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))))), index*(16+4*4)) + var variant1687 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1687 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1687 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1687 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1687 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1687 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1687 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1687 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1687 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1687 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1687 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1687 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1687 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1665 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeStringValue(value1665) + + case 13: + result1666 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1666 = append(result1666, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeRecordValue(result1666) + + case 14: + var option1667 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1667 = witTypes.None[int32]() + case 1: + + option1667 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1667}) + + case 15: + + variant1687 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1668 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1668 = append(result1668, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1668) + + case 17: + result1669 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1669 = append(result1669, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeTupleValue(result1669) + + case 18: + result1670 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1670 = append(result1670, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeListValue(result1670) + + case 19: + result1671 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1671 = append(result1671, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1671) + + case 20: + result1672 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1672 = append(result1672, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeMapValue(result1672) + + case 21: + var option1673 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1673 = witTypes.None[int32]() + case 1: + + option1673 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeOptionValue(option1673) + + case 22: + var variant1676 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1674 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1674 = witTypes.None[int32]() + case 1: + + option1674 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1676 = golem_core_types.MakeResultValuePayloadOkValue(option1674) + + case 1: + var option1675 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1675 = witTypes.None[int32]() + case 1: + + option1675 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1676 = golem_core_types.MakeResultValuePayloadErrValue(option1675) + + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeResultValue(variant1676) + + case 23: + value1677 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1679 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1679 = witTypes.None[string]() + case 1: + value1678 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1679 = witTypes.Some[string](value1678) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1677, option1679}) + + case 24: + value1680 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1682 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1682 = witTypes.None[string]() + case 1: + value1681 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1682 = witTypes.Some[string](value1681) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1680, option1682}) + + case 25: + value1683 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodePathValue(value1683) + + case 26: + value1684 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeUrlValue(value1684) + + case 27: + + variant1687 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1687 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1685 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1685}) + + case 30: + value1686 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1686, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1687 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1687 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1688 = append(result1688, variant1687) + } + + variant1695 = MakeAgentInvocationResultAgentMethod(AgentInvocationOutputParameters{golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1660, result1664, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))}, golem_core_types.SchemaValueTree{result1688, *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 8*4)))}}}) + + case 2: + + variant1695 = MakeAgentInvocationResultManualUpdate() + + case 3: + var option1690 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) { + case 0: + + option1690 = witTypes.None[string]() + case 1: + value1689 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + + option1690 = witTypes.Some[string](value1689) + default: + panic("unreachable") + } + + variant1695 = MakeAgentInvocationResultLoadSnapshot(FallibleResultParameters{option1690}) + + case 4: + value1691 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + value1692 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + variant1695 = MakeAgentInvocationResultSaveSnapshot(SaveSnapshotResultParameters{SnapshotData{value1691, value1692}}) + + case 5: + var option1694 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) { + case 0: + + option1694 = witTypes.None[string]() + case 1: + value1693 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + + option1694 = witTypes.Some[string](value1693) + default: + panic("unreachable") + } + + variant1695 = MakeAgentInvocationResultProcessOplogEntries(FallibleResultParameters{option1694}) + + default: + panic("unreachable") + } + var option1697 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 9*4)))) { + case 0: + + option1697 = witTypes.None[string]() + case 1: + value1696 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 11*4)))) + + option1697 = witTypes.Some[string](value1696) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryAgentInvocationFinished(AgentInvocationFinishedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant1695, option1697, *(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))))}) + + case 6: + + variant2471 = MakePublicOplogEntrySuspend(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 7: + value1698 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + var option1701 witTypes.Option[RetryPolicyState] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) { + case 0: + + option1701 = witTypes.None[RetryPolicyState]() + case 1: + result1700 := make([]StateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*16) + var variant1699 StateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1699 = MakeStateNodeCounter(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)))) + + case 1: + + variant1699 = MakeStateNodeTerminal() + + case 2: + + variant1699 = MakeStateNodeWrapper(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4))) + + case 3: + + variant1699 = MakeStateNodeCountBox(CountBoxState{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 4: + + variant1699 = MakeStateNodeAndThen(AndThenState{*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) != 0)}) + + case 5: + + variant1699 = MakeStateNodePair(PairState{*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8))}) + + default: + panic("unreachable") + } + + result1700 = append(result1700, variant1699) + } + + option1701 = witTypes.Some[RetryPolicyState](RetryPolicyState{result1700}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryError(ErrorParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value1698, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))), (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) != 0), option1701}) + + case 8: + + variant2471 = MakePublicOplogEntryNoOp(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 9: + + variant2471 = MakePublicOplogEntryJump(JumpParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, OplogRegion{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}) + + case 10: + + variant2471 = MakePublicOplogEntryInterrupted(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 11: + + variant2471 = MakePublicOplogEntryExited(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 12: + + variant2471 = MakePublicOplogEntryBeginAtomicRegion(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 13: + + variant2471 = MakePublicOplogEntryEndAtomicRegion(EndAtomicRegionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 14: + var variant2146 AgentInvocation + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + value1702 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + result1878 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4))))), index*(56+22*4)) + var variant1866 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1866 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1866 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1709 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1709 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1704 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1704 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1703 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1703 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1703 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1703 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1704 = witTypes.Some[golem_core_types.NumericBound](variant1703) + default: + panic("unreachable") + } + var option1706 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1706 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1705 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1705 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1705 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1705 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1706 = witTypes.Some[golem_core_types.NumericBound](variant1705) + default: + panic("unreachable") + } + var option1708 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1708 = witTypes.None[string]() + case 1: + value1707 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1708 = witTypes.Some[string](value1707) + default: + panic("unreachable") + } + + option1709 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1704, option1706, option1708}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS8Type(option1709) + + case 3: + var option1716 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1716 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1711 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1711 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1710 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1710 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1710 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1710 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1711 = witTypes.Some[golem_core_types.NumericBound](variant1710) + default: + panic("unreachable") + } + var option1713 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1713 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1712 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1712 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1712 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1712 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1713 = witTypes.Some[golem_core_types.NumericBound](variant1712) + default: + panic("unreachable") + } + var option1715 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1715 = witTypes.None[string]() + case 1: + value1714 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1715 = witTypes.Some[string](value1714) + default: + panic("unreachable") + } + + option1716 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1711, option1713, option1715}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS16Type(option1716) + + case 4: + var option1723 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1723 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1718 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1718 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1717 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1717 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1717 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1717 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1718 = witTypes.Some[golem_core_types.NumericBound](variant1717) + default: + panic("unreachable") + } + var option1720 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1720 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1719 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1719 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1719 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1719 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1720 = witTypes.Some[golem_core_types.NumericBound](variant1719) + default: + panic("unreachable") + } + var option1722 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1722 = witTypes.None[string]() + case 1: + value1721 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1722 = witTypes.Some[string](value1721) + default: + panic("unreachable") + } + + option1723 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1718, option1720, option1722}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS32Type(option1723) + + case 5: + var option1730 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1730 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1725 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1725 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1724 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1724 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1724 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1724 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1725 = witTypes.Some[golem_core_types.NumericBound](variant1724) + default: + panic("unreachable") + } + var option1727 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1727 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1726 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1726 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1726 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1726 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1727 = witTypes.Some[golem_core_types.NumericBound](variant1726) + default: + panic("unreachable") + } + var option1729 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1729 = witTypes.None[string]() + case 1: + value1728 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1729 = witTypes.Some[string](value1728) + default: + panic("unreachable") + } + + option1730 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1725, option1727, option1729}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS64Type(option1730) + + case 6: + var option1737 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1737 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1732 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1732 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1731 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1731 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1731 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1731 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1732 = witTypes.Some[golem_core_types.NumericBound](variant1731) + default: + panic("unreachable") + } + var option1734 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1734 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1733 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1733 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1733 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1733 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1734 = witTypes.Some[golem_core_types.NumericBound](variant1733) + default: + panic("unreachable") + } + var option1736 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1736 = witTypes.None[string]() + case 1: + value1735 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1736 = witTypes.Some[string](value1735) + default: + panic("unreachable") + } + + option1737 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1732, option1734, option1736}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU8Type(option1737) + + case 7: + var option1744 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1744 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1739 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1739 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1738 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1738 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1738 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1738 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1739 = witTypes.Some[golem_core_types.NumericBound](variant1738) + default: + panic("unreachable") + } + var option1741 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1741 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1740 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1740 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1740 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1740 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1741 = witTypes.Some[golem_core_types.NumericBound](variant1740) + default: + panic("unreachable") + } + var option1743 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1743 = witTypes.None[string]() + case 1: + value1742 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1743 = witTypes.Some[string](value1742) + default: + panic("unreachable") + } + + option1744 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1739, option1741, option1743}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU16Type(option1744) + + case 8: + var option1751 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1751 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1746 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1746 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1745 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1745 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1745 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1745 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1746 = witTypes.Some[golem_core_types.NumericBound](variant1745) + default: + panic("unreachable") + } + var option1748 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1748 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1747 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1747 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1747 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1747 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1748 = witTypes.Some[golem_core_types.NumericBound](variant1747) + default: + panic("unreachable") + } + var option1750 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1750 = witTypes.None[string]() + case 1: + value1749 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1750 = witTypes.Some[string](value1749) + default: + panic("unreachable") + } + + option1751 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1746, option1748, option1750}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU32Type(option1751) + + case 9: + var option1758 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1758 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1753 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1753 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1752 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1752 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1752 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1752 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1753 = witTypes.Some[golem_core_types.NumericBound](variant1752) + default: + panic("unreachable") + } + var option1755 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1755 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1754 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1754 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1754 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1754 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1755 = witTypes.Some[golem_core_types.NumericBound](variant1754) + default: + panic("unreachable") + } + var option1757 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1757 = witTypes.None[string]() + case 1: + value1756 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1757 = witTypes.Some[string](value1756) + default: + panic("unreachable") + } + + option1758 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1753, option1755, option1757}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU64Type(option1758) + + case 10: + var option1765 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1765 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1760 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1760 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1759 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1759 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1759 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1759 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1760 = witTypes.Some[golem_core_types.NumericBound](variant1759) + default: + panic("unreachable") + } + var option1762 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1762 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1761 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1761 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1761 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1761 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1762 = witTypes.Some[golem_core_types.NumericBound](variant1761) + default: + panic("unreachable") + } + var option1764 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1764 = witTypes.None[string]() + case 1: + value1763 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1764 = witTypes.Some[string](value1763) + default: + panic("unreachable") + } + + option1765 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1760, option1762, option1764}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyF32Type(option1765) + + case 11: + var option1772 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1772 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1767 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1767 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1766 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1766 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1766 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1766 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1767 = witTypes.Some[golem_core_types.NumericBound](variant1766) + default: + panic("unreachable") + } + var option1769 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1769 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1768 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1768 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1768 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1768 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1769 = witTypes.Some[golem_core_types.NumericBound](variant1768) + default: + panic("unreachable") + } + var option1771 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1771 = witTypes.None[string]() + case 1: + value1770 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1771 = witTypes.Some[string](value1770) + default: + panic("unreachable") + } + + option1772 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1767, option1769, option1771}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyF64Type(option1772) + + case 12: + + variant1866 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1866 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1785 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1773 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1775 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1775 = witTypes.None[string]() + case 1: + value1774 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1775 = witTypes.Some[string](value1774) + default: + panic("unreachable") + } + result1777 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1776 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1777 = append(result1777, value1776) + } + + result1779 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1778 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1779 = append(result1779, value1778) + } + + var option1781 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1781 = witTypes.None[string]() + case 1: + value1780 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1781 = witTypes.Some[string](value1780) + default: + panic("unreachable") + } + var option1784 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1784 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1783 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1783 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1783 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1783 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1782 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1783 = golem_core_types.MakeRoleOther(value1782) + + default: + panic("unreachable") + } + + option1784 = witTypes.Some[golem_core_types.Role](variant1783) + default: + panic("unreachable") + } + + result1785 = append(result1785, golem_core_types.NamedFieldType{value1773, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1775, result1777, result1779, option1781, option1784}}) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyRecordType(result1785) + + case 15: + result1799 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1786 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1787 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1787 = witTypes.None[int32]() + case 1: + + option1787 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1789 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1789 = witTypes.None[string]() + case 1: + value1788 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1789 = witTypes.Some[string](value1788) + default: + panic("unreachable") + } + result1791 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1790 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1791 = append(result1791, value1790) + } + + result1793 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1792 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1793 = append(result1793, value1792) + } + + var option1795 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1795 = witTypes.None[string]() + case 1: + value1794 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1795 = witTypes.Some[string](value1794) + default: + panic("unreachable") + } + var option1798 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1798 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1797 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1797 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1797 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1797 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1796 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1797 = golem_core_types.MakeRoleOther(value1796) + + default: + panic("unreachable") + } + + option1798 = witTypes.Some[golem_core_types.Role](variant1797) + default: + panic("unreachable") + } + + result1799 = append(result1799, golem_core_types.VariantCaseType{value1786, option1787, golem_core_types.MetadataEnvelope{option1789, result1791, result1793, option1795, option1798}}) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyVariantType(result1799) + + case 16: + result1801 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1800 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1801 = append(result1801, value1800) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyEnumType(result1801) + + case 17: + result1803 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1802 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1803 = append(result1803, value1802) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1803) + + case 18: + result1804 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1804 = append(result1804, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyTupleType(result1804) + + case 19: + + variant1866 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1866 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1866 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1866 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1805 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1805 = witTypes.None[int32]() + case 1: + + option1805 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1806 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1806 = witTypes.None[int32]() + case 1: + + option1806 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1805, option1806}) + + case 24: + var option1809 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1809 = witTypes.None[[]string]() + case 1: + result1808 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1807 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1808 = append(result1808, value1807) + } + + option1809 = witTypes.Some[[]string](result1808) + default: + panic("unreachable") + } + var option1810 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1810 = witTypes.None[uint32]() + case 1: + + option1810 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1811 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1811 = witTypes.None[uint32]() + case 1: + + option1811 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1813 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1813 = witTypes.None[string]() + case 1: + value1812 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1813 = witTypes.Some[string](value1812) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1809, option1810, option1811, option1813}) + + case 25: + var option1816 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1816 = witTypes.None[[]string]() + case 1: + result1815 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1814 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1815 = append(result1815, value1814) + } + + option1816 = witTypes.Some[[]string](result1815) + default: + panic("unreachable") + } + var option1817 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1817 = witTypes.None[uint32]() + case 1: + + option1817 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1818 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1818 = witTypes.None[uint32]() + case 1: + + option1818 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1816, option1817, option1818}) + + case 26: + var option1821 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1821 = witTypes.None[[]string]() + case 1: + result1820 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1819 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1820 = append(result1820, value1819) + } + + option1821 = witTypes.Some[[]string](result1820) + default: + panic("unreachable") + } + var option1824 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1824 = witTypes.None[[]string]() + case 1: + result1823 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1822 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1823 = append(result1823, value1822) + } + + option1824 = witTypes.Some[[]string](result1823) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1821, option1824}) + + case 27: + var option1827 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1827 = witTypes.None[[]string]() + case 1: + result1826 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1825 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1826 = append(result1826, value1825) + } + + option1827 = witTypes.Some[[]string](result1826) + default: + panic("unreachable") + } + var option1830 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1830 = witTypes.None[[]string]() + case 1: + result1829 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1828 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1829 = append(result1829, value1828) + } + + option1830 = witTypes.Some[[]string](result1829) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1827, option1830}) + + case 28: + + variant1866 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1866 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1831 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1833 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1832 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1833 = append(result1833, value1832) + } + + var option1835 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1835 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1834 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1835 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1834}) + default: + panic("unreachable") + } + var option1837 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1837 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1836 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1837 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1836}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1831, result1833, option1835, option1837}) + + case 31: + result1859 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1838 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1847 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1839 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRulePrefix(value1839) + + case 1: + value1840 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleSuffix(value1840) + + case 2: + value1841 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleContains(value1841) + + case 3: + value1842 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleRegex(value1842) + + case 4: + value1843 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1845 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1845 = witTypes.None[string]() + case 1: + value1844 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1845 = witTypes.Some[string](value1844) + default: + panic("unreachable") + } + + variant1847 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1843, option1845}) + + case 5: + value1846 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1846) + + default: + panic("unreachable") + } + var option1849 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1849 = witTypes.None[string]() + case 1: + value1848 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1849 = witTypes.Some[string](value1848) + default: + panic("unreachable") + } + result1851 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1850 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1851 = append(result1851, value1850) + } + + result1853 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1852 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1853 = append(result1853, value1852) + } + + var option1855 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1855 = witTypes.None[string]() + case 1: + value1854 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1855 = witTypes.Some[string](value1854) + default: + panic("unreachable") + } + var option1858 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1858 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1857 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1857 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1857 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1857 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1856 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1857 = golem_core_types.MakeRoleOther(value1856) + + default: + panic("unreachable") + } + + option1858 = witTypes.Some[golem_core_types.Role](variant1857) + default: + panic("unreachable") + } + + result1859 = append(result1859, golem_core_types.UnionBranch{value1838, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1847, golem_core_types.MetadataEnvelope{option1849, result1851, result1853, option1855, option1858}}) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1859}) + + case 32: + var option1861 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1861 = witTypes.None[string]() + case 1: + value1860 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1861 = witTypes.Some[string](value1860) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1861}) + + case 33: + var option1863 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1863 = witTypes.None[string]() + case 1: + value1862 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1863 = witTypes.Some[string](value1862) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1863}) + + case 34: + var option1864 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1864 = witTypes.None[int32]() + case 1: + + option1864 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyFutureType(option1864) + + case 35: + var option1865 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1865 = witTypes.None[int32]() + case 1: + + option1865 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyStreamType(option1865) + + default: + panic("unreachable") + } + var option1868 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1868 = witTypes.None[string]() + case 1: + value1867 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1868 = witTypes.Some[string](value1867) + default: + panic("unreachable") + } + result1870 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1869 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1870 = append(result1870, value1869) + } + + result1872 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1871 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1872 = append(result1872, value1871) + } + + var option1874 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1874 = witTypes.None[string]() + case 1: + value1873 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1874 = witTypes.Some[string](value1873) + default: + panic("unreachable") + } + var option1877 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1877 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1876 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1876 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1876 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1876 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1875 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1876 = golem_core_types.MakeRoleOther(value1875) + + default: + panic("unreachable") + } + + option1877 = witTypes.Some[golem_core_types.Role](variant1876) + default: + panic("unreachable") + } + + result1878 = append(result1878, golem_core_types.SchemaTypeNode{variant1866, golem_core_types.MetadataEnvelope{option1868, result1870, result1872, option1874, option1877}}) + } + + result1882 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(6*4)) + value1879 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1881 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1881 = witTypes.None[string]() + case 1: + value1880 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1881 = witTypes.Some[string](value1880) + default: + panic("unreachable") + } + + result1882 = append(result1882, golem_core_types.SchemaTypeDef{value1879, option1881, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1906 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4))))), index*(16+4*4)) + var variant1905 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1905 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1905 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1905 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1905 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1905 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1905 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1905 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1905 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1905 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1905 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1905 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1905 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1883 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeStringValue(value1883) + + case 13: + result1884 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1884 = append(result1884, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeRecordValue(result1884) + + case 14: + var option1885 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1885 = witTypes.None[int32]() + case 1: + + option1885 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1885}) + + case 15: + + variant1905 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1886 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1886 = append(result1886, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1886) + + case 17: + result1887 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1887 = append(result1887, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeTupleValue(result1887) + + case 18: + result1888 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1888 = append(result1888, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeListValue(result1888) + + case 19: + result1889 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1889 = append(result1889, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1889) + + case 20: + result1890 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1890 = append(result1890, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeMapValue(result1890) + + case 21: + var option1891 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1891 = witTypes.None[int32]() + case 1: + + option1891 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeOptionValue(option1891) + + case 22: + var variant1894 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1892 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1892 = witTypes.None[int32]() + case 1: + + option1892 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1894 = golem_core_types.MakeResultValuePayloadOkValue(option1892) + + case 1: + var option1893 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1893 = witTypes.None[int32]() + case 1: + + option1893 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1894 = golem_core_types.MakeResultValuePayloadErrValue(option1893) + + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeResultValue(variant1894) + + case 23: + value1895 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1897 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1897 = witTypes.None[string]() + case 1: + value1896 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1897 = witTypes.Some[string](value1896) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1895, option1897}) + + case 24: + value1898 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1900 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1900 = witTypes.None[string]() + case 1: + value1899 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1900 = witTypes.Some[string](value1899) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1898, option1900}) + + case 25: + value1901 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodePathValue(value1901) + + case 26: + value1902 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeUrlValue(value1902) + + case 27: + + variant1905 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1905 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1903 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1903}) + + case 30: + value1904 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1904, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1905 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1905 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1906 = append(result1906, variant1905) + } + + value1907 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))) + result1909 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))))), index*(2*4)) + value1908 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1909 = append(result1909, value1908) + } + + result1921 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + result1920 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1919 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1910 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1912 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1912 = witTypes.None[string]() + case 1: + value1911 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1912 = witTypes.Some[string](value1911) + default: + panic("unreachable") + } + var option1913 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1913 = witTypes.None[uint64]() + case 1: + + option1913 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1917 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1914 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1916 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1915 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1916 = golem_api_context.MakeAttributeValueString(value1915) + + default: + panic("unreachable") + } + + result1917 = append(result1917, golem_api_context.Attribute{value1914, variant1916}) + } + + variant1919 = MakeSpanDataLocalSpan(LocalSpanData{value1910, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1912, option1913, result1917, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1918 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1919 = MakeSpanDataExternalSpan(ExternalSpanData{value1918}) + + default: + panic("unreachable") + } + + result1920 = append(result1920, variant1919) + } + + result1921 = append(result1921, result1920) + } + + variant2146 = MakeAgentInvocationAgentInitialization(AgentInitializationParameters{value1702, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1878, result1882, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))}, golem_core_types.SchemaValueTree{result1906, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))}}, value1907, result1909, result1921}) + + case 1: + value1922 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value1923 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + result2099 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4))))), index*(56+22*4)) + var variant2087 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2087 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant2087 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1930 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1930 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1925 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1925 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1924 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1924 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1924 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1924 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1925 = witTypes.Some[golem_core_types.NumericBound](variant1924) + default: + panic("unreachable") + } + var option1927 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1927 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1926 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1926 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1926 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1926 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1927 = witTypes.Some[golem_core_types.NumericBound](variant1926) + default: + panic("unreachable") + } + var option1929 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1929 = witTypes.None[string]() + case 1: + value1928 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1929 = witTypes.Some[string](value1928) + default: + panic("unreachable") + } + + option1930 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1925, option1927, option1929}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS8Type(option1930) + + case 3: + var option1937 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1937 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1932 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1932 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1931 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1931 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1931 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1931 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1932 = witTypes.Some[golem_core_types.NumericBound](variant1931) + default: + panic("unreachable") + } + var option1934 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1934 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1933 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1933 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1933 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1933 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1934 = witTypes.Some[golem_core_types.NumericBound](variant1933) + default: + panic("unreachable") + } + var option1936 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1936 = witTypes.None[string]() + case 1: + value1935 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1936 = witTypes.Some[string](value1935) + default: + panic("unreachable") + } + + option1937 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1932, option1934, option1936}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS16Type(option1937) + + case 4: + var option1944 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1944 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1939 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1939 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1938 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1938 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1938 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1938 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1939 = witTypes.Some[golem_core_types.NumericBound](variant1938) + default: + panic("unreachable") + } + var option1941 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1941 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1940 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1940 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1940 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1940 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1941 = witTypes.Some[golem_core_types.NumericBound](variant1940) + default: + panic("unreachable") + } + var option1943 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1943 = witTypes.None[string]() + case 1: + value1942 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1943 = witTypes.Some[string](value1942) + default: + panic("unreachable") + } + + option1944 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1939, option1941, option1943}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS32Type(option1944) + + case 5: + var option1951 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1951 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1946 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1946 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1945 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1945 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1945 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1945 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1946 = witTypes.Some[golem_core_types.NumericBound](variant1945) + default: + panic("unreachable") + } + var option1948 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1948 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1947 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1947 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1947 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1947 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1948 = witTypes.Some[golem_core_types.NumericBound](variant1947) + default: + panic("unreachable") + } + var option1950 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1950 = witTypes.None[string]() + case 1: + value1949 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1950 = witTypes.Some[string](value1949) + default: + panic("unreachable") + } + + option1951 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1946, option1948, option1950}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS64Type(option1951) + + case 6: + var option1958 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1958 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1953 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1953 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1952 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1952 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1952 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1952 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1953 = witTypes.Some[golem_core_types.NumericBound](variant1952) + default: + panic("unreachable") + } + var option1955 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1955 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1954 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1954 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1954 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1954 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1955 = witTypes.Some[golem_core_types.NumericBound](variant1954) + default: + panic("unreachable") + } + var option1957 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1957 = witTypes.None[string]() + case 1: + value1956 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1957 = witTypes.Some[string](value1956) + default: + panic("unreachable") + } + + option1958 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1953, option1955, option1957}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU8Type(option1958) + + case 7: + var option1965 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1965 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1960 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1960 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1959 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1959 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1959 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1959 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1960 = witTypes.Some[golem_core_types.NumericBound](variant1959) + default: + panic("unreachable") + } + var option1962 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1962 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1961 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1961 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1961 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1961 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1962 = witTypes.Some[golem_core_types.NumericBound](variant1961) + default: + panic("unreachable") + } + var option1964 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1964 = witTypes.None[string]() + case 1: + value1963 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1964 = witTypes.Some[string](value1963) + default: + panic("unreachable") + } + + option1965 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1960, option1962, option1964}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU16Type(option1965) + + case 8: + var option1972 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1972 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1967 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1967 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1966 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1966 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1966 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1966 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1967 = witTypes.Some[golem_core_types.NumericBound](variant1966) + default: + panic("unreachable") + } + var option1969 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1969 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1968 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1968 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1968 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1968 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1969 = witTypes.Some[golem_core_types.NumericBound](variant1968) + default: + panic("unreachable") + } + var option1971 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1971 = witTypes.None[string]() + case 1: + value1970 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1971 = witTypes.Some[string](value1970) + default: + panic("unreachable") + } + + option1972 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1967, option1969, option1971}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU32Type(option1972) + + case 9: + var option1979 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1979 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1974 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1974 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1973 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1973 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1973 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1973 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1974 = witTypes.Some[golem_core_types.NumericBound](variant1973) + default: + panic("unreachable") + } + var option1976 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1976 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1975 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1975 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1975 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1975 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1976 = witTypes.Some[golem_core_types.NumericBound](variant1975) + default: + panic("unreachable") + } + var option1978 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1978 = witTypes.None[string]() + case 1: + value1977 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1978 = witTypes.Some[string](value1977) + default: + panic("unreachable") + } + + option1979 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1974, option1976, option1978}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU64Type(option1979) + + case 10: + var option1986 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1986 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1981 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1981 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1980 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1980 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1980 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1980 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1981 = witTypes.Some[golem_core_types.NumericBound](variant1980) + default: + panic("unreachable") + } + var option1983 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1983 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1982 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1982 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1982 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1982 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1983 = witTypes.Some[golem_core_types.NumericBound](variant1982) + default: + panic("unreachable") + } + var option1985 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1985 = witTypes.None[string]() + case 1: + value1984 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1985 = witTypes.Some[string](value1984) + default: + panic("unreachable") + } + + option1986 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1981, option1983, option1985}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyF32Type(option1986) + + case 11: + var option1993 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1993 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1988 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1988 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1987 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1987 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1987 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1987 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1988 = witTypes.Some[golem_core_types.NumericBound](variant1987) + default: + panic("unreachable") + } + var option1990 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1990 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1989 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1989 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1989 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1989 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1990 = witTypes.Some[golem_core_types.NumericBound](variant1989) + default: + panic("unreachable") + } + var option1992 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1992 = witTypes.None[string]() + case 1: + value1991 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1992 = witTypes.Some[string](value1991) + default: + panic("unreachable") + } + + option1993 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1988, option1990, option1992}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyF64Type(option1993) + + case 12: + + variant2087 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant2087 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result2006 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1994 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1996 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1996 = witTypes.None[string]() + case 1: + value1995 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1996 = witTypes.Some[string](value1995) + default: + panic("unreachable") + } + result1998 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1997 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1998 = append(result1998, value1997) + } + + result2000 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1999 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2000 = append(result2000, value1999) + } + + var option2002 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option2002 = witTypes.None[string]() + case 1: + value2001 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option2002 = witTypes.Some[string](value2001) + default: + panic("unreachable") + } + var option2005 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option2005 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2004 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant2004 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2004 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2004 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2003 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant2004 = golem_core_types.MakeRoleOther(value2003) + + default: + panic("unreachable") + } + + option2005 = witTypes.Some[golem_core_types.Role](variant2004) + default: + panic("unreachable") + } + + result2006 = append(result2006, golem_core_types.NamedFieldType{value1994, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1996, result1998, result2000, option2002, option2005}}) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyRecordType(result2006) + + case 15: + result2020 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value2007 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2008 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2008 = witTypes.None[int32]() + case 1: + + option2008 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option2010 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2010 = witTypes.None[string]() + case 1: + value2009 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2010 = witTypes.Some[string](value2009) + default: + panic("unreachable") + } + result2012 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2011 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2012 = append(result2012, value2011) + } + + result2014 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value2013 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2014 = append(result2014, value2013) + } + + var option2016 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option2016 = witTypes.None[string]() + case 1: + value2015 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option2016 = witTypes.Some[string](value2015) + default: + panic("unreachable") + } + var option2019 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option2019 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2018 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant2018 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2018 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2018 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2017 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant2018 = golem_core_types.MakeRoleOther(value2017) + + default: + panic("unreachable") + } + + option2019 = witTypes.Some[golem_core_types.Role](variant2018) + default: + panic("unreachable") + } + + result2020 = append(result2020, golem_core_types.VariantCaseType{value2007, option2008, golem_core_types.MetadataEnvelope{option2010, result2012, result2014, option2016, option2019}}) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyVariantType(result2020) + + case 16: + result2022 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2021 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2022 = append(result2022, value2021) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyEnumType(result2022) + + case 17: + result2024 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2023 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2024 = append(result2024, value2023) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyFlagsType(result2024) + + case 18: + result2025 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2025 = append(result2025, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyTupleType(result2025) + + case 19: + + variant2087 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant2087 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant2087 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant2087 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option2026 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2026 = witTypes.None[int32]() + case 1: + + option2026 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option2027 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2027 = witTypes.None[int32]() + case 1: + + option2027 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option2026, option2027}) + + case 24: + var option2030 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2030 = witTypes.None[[]string]() + case 1: + result2029 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2028 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2029 = append(result2029, value2028) + } + + option2030 = witTypes.Some[[]string](result2029) + default: + panic("unreachable") + } + var option2031 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2031 = witTypes.None[uint32]() + case 1: + + option2031 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2032 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2032 = witTypes.None[uint32]() + case 1: + + option2032 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option2034 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option2034 = witTypes.None[string]() + case 1: + value2033 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option2034 = witTypes.Some[string](value2033) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option2030, option2031, option2032, option2034}) + + case 25: + var option2037 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2037 = witTypes.None[[]string]() + case 1: + result2036 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2035 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2036 = append(result2036, value2035) + } + + option2037 = witTypes.Some[[]string](result2036) + default: + panic("unreachable") + } + var option2038 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2038 = witTypes.None[uint32]() + case 1: + + option2038 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2039 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2039 = witTypes.None[uint32]() + case 1: + + option2039 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option2037, option2038, option2039}) + + case 26: + var option2042 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2042 = witTypes.None[[]string]() + case 1: + result2041 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2040 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2041 = append(result2041, value2040) + } + + option2042 = witTypes.Some[[]string](result2041) + default: + panic("unreachable") + } + var option2045 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2045 = witTypes.None[[]string]() + case 1: + result2044 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2043 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2044 = append(result2044, value2043) + } + + option2045 = witTypes.Some[[]string](result2044) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option2042, option2045}) + + case 27: + var option2048 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2048 = witTypes.None[[]string]() + case 1: + result2047 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2046 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2047 = append(result2047, value2046) + } + + option2048 = witTypes.Some[[]string](result2047) + default: + panic("unreachable") + } + var option2051 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2051 = witTypes.None[[]string]() + case 1: + result2050 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value2049 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2050 = append(result2050, value2049) + } + + option2051 = witTypes.Some[[]string](result2050) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option2048, option2051}) + + case 28: + + variant2087 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant2087 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value2052 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2054 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2053 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2054 = append(result2054, value2053) + } + + var option2056 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2056 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2055 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option2056 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value2055}) + default: + panic("unreachable") + } + var option2058 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option2058 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2057 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option2058 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value2057}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value2052, result2054, option2056, option2058}) + + case 31: + result2080 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value2059 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2068 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value2060 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRulePrefix(value2060) + + case 1: + value2061 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleSuffix(value2061) + + case 2: + value2062 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleContains(value2062) + + case 3: + value2063 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleRegex(value2063) + + case 4: + value2064 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option2066 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option2066 = witTypes.None[string]() + case 1: + value2065 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option2066 = witTypes.Some[string](value2065) + default: + panic("unreachable") + } + + variant2068 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value2064, option2066}) + + case 5: + value2067 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value2067) + + default: + panic("unreachable") + } + var option2070 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option2070 = witTypes.None[string]() + case 1: + value2069 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option2070 = witTypes.Some[string](value2069) + default: + panic("unreachable") + } + result2072 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value2071 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2072 = append(result2072, value2071) + } + + result2074 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value2073 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2074 = append(result2074, value2073) + } + + var option2076 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option2076 = witTypes.None[string]() + case 1: + value2075 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option2076 = witTypes.Some[string](value2075) + default: + panic("unreachable") + } + var option2079 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option2079 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2078 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant2078 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2078 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2078 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2077 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant2078 = golem_core_types.MakeRoleOther(value2077) + + default: + panic("unreachable") + } + + option2079 = witTypes.Some[golem_core_types.Role](variant2078) + default: + panic("unreachable") + } + + result2080 = append(result2080, golem_core_types.UnionBranch{value2059, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant2068, golem_core_types.MetadataEnvelope{option2070, result2072, result2074, option2076, option2079}}) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result2080}) + + case 32: + var option2082 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2082 = witTypes.None[string]() + case 1: + value2081 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option2082 = witTypes.Some[string](value2081) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option2082}) + + case 33: + var option2084 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2084 = witTypes.None[string]() + case 1: + value2083 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option2084 = witTypes.Some[string](value2083) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option2084}) + + case 34: + var option2085 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2085 = witTypes.None[int32]() + case 1: + + option2085 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyFutureType(option2085) + + case 35: + var option2086 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2086 = witTypes.None[int32]() + case 1: + + option2086 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyStreamType(option2086) + + default: + panic("unreachable") + } + var option2089 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option2089 = witTypes.None[string]() + case 1: + value2088 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option2089 = witTypes.Some[string](value2088) + default: + panic("unreachable") + } + result2091 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value2090 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2091 = append(result2091, value2090) + } + + result2093 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value2092 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2093 = append(result2093, value2092) + } + + var option2095 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option2095 = witTypes.None[string]() + case 1: + value2094 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option2095 = witTypes.Some[string](value2094) + default: + panic("unreachable") + } + var option2098 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option2098 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2097 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant2097 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2097 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2097 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2096 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant2097 = golem_core_types.MakeRoleOther(value2096) + + default: + panic("unreachable") + } + + option2098 = witTypes.Some[golem_core_types.Role](variant2097) + default: + panic("unreachable") + } + + result2099 = append(result2099, golem_core_types.SchemaTypeNode{variant2087, golem_core_types.MetadataEnvelope{option2089, result2091, result2093, option2095, option2098}}) + } + + result2103 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(6*4)) + value2100 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2102 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2102 = witTypes.None[string]() + case 1: + value2101 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option2102 = witTypes.Some[string](value2101) + default: + panic("unreachable") + } + + result2103 = append(result2103, golem_core_types.SchemaTypeDef{value2100, option2102, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result2127 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4))))), index*(16+4*4)) + var variant2126 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2126 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant2126 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant2126 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant2126 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant2126 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant2126 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant2126 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant2126 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant2126 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant2126 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant2126 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant2126 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value2104 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeStringValue(value2104) + + case 13: + result2105 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2105 = append(result2105, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeRecordValue(result2105) + + case 14: + var option2106 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2106 = witTypes.None[int32]() + case 1: + + option2106 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option2106}) + + case 15: + + variant2126 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result2107 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result2107 = append(result2107, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeFlagsValue(result2107) + + case 17: + result2108 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2108 = append(result2108, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeTupleValue(result2108) + + case 18: + result2109 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2109 = append(result2109, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeListValue(result2109) + + case 19: + result2110 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2110 = append(result2110, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeFixedListValue(result2110) + + case 20: + result2111 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result2111 = append(result2111, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeMapValue(result2111) + + case 21: + var option2112 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2112 = witTypes.None[int32]() + case 1: + + option2112 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeOptionValue(option2112) + + case 22: + var variant2115 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option2113 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2113 = witTypes.None[int32]() + case 1: + + option2113 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2115 = golem_core_types.MakeResultValuePayloadOkValue(option2113) + + case 1: + var option2114 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2114 = witTypes.None[int32]() + case 1: + + option2114 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2115 = golem_core_types.MakeResultValuePayloadErrValue(option2114) + + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeResultValue(variant2115) + + case 23: + value2116 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2118 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2118 = witTypes.None[string]() + case 1: + value2117 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2118 = witTypes.Some[string](value2117) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value2116, option2118}) + + case 24: + value2119 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2121 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2121 = witTypes.None[string]() + case 1: + value2120 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2121 = witTypes.Some[string](value2120) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value2119, option2121}) + + case 25: + value2122 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodePathValue(value2122) + + case 26: + value2123 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeUrlValue(value2123) + + case 27: + + variant2126 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant2126 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value2124 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2124}) + + case 30: + value2125 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value2125, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant2126 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant2126 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result2127 = append(result2127, variant2126) + } + + value2128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 13*4)))) + result2130 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 14*4))))), index*(2*4)) + value2129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2130 = append(result2130, value2129) + } + + result2142 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 17*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 16*4))))), index*(2*4)) + result2141 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant2140 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2131 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2133 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option2133 = witTypes.None[string]() + case 1: + value2132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option2133 = witTypes.Some[string](value2132) + default: + panic("unreachable") + } + var option2134 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option2134 = witTypes.None[uint64]() + case 1: + + option2134 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result2138 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value2135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2137 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value2136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant2137 = golem_api_context.MakeAttributeValueString(value2136) + + default: + panic("unreachable") + } + + result2138 = append(result2138, golem_api_context.Attribute{value2135, variant2137}) + } + + variant2140 = MakeSpanDataLocalSpan(LocalSpanData{value2131, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option2133, option2134, result2138, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value2139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2140 = MakeSpanDataExternalSpan(ExternalSpanData{value2139}) + + default: + panic("unreachable") + } + + result2141 = append(result2141, variant2140) + } + + result2142 = append(result2142, result2141) + } + + variant2146 = MakeAgentInvocationAgentMethodInvocation(AgentMethodInvocationParameters{value1922, value1923, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result2099, result2103, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}, golem_core_types.SchemaValueTree{result2127, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))}}, value2128, result2130, result2142}) + + case 2: + + variant2146 = MakeAgentInvocationSaveSnapshot() + + case 3: + value2143 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant2146 = MakeAgentInvocationLoadSnapshot(LoadSnapshotParameters{SnapshotData{value2143, value2144}}) + + case 4: + value2145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant2146 = MakeAgentInvocationProcessOplogEntries(ProcessOplogEntriesParameters{value2145}) + + case 5: + + variant2146 = MakeAgentInvocationManualUpdate(ManualUpdateParameters{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryPendingAgentInvocation(PendingAgentInvocationParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant2146}) + + case 15: + var variant2149 UpdateDescription + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + variant2149 = MakeUpdateDescriptionAutoUpdate() + + case 1: + value2147 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + value2148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + + variant2149 = MakeUpdateDescriptionSnapshotBased(golem_api_host.Snapshot{value2147, value2148}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryPendingUpdate(PendingUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), variant2149}) + + case 16: + result2155 := make([]PluginInstallationDescription, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), index*(24+6*4)) + value2150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + value2151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4)))) + result2154 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4))))), index*(4*4)) + value2152 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2153 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2154 = append(result2154, witTypes.Tuple2[string, string]{value2152, value2153}) + } + + result2155 = append(result2155, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2150, value2151, result2154}) + } + + variant2471 = MakePublicOplogEntrySuccessfulUpdate(SuccessfulUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), result2155}) + + case 17: + var option2157 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option2157 = witTypes.None[string]() + case 1: + value2156 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + + option2157 = witTypes.Some[string](value2156) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryFailedUpdate(FailedUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), option2157}) + + case 18: + + variant2471 = MakePublicOplogEntryGrowMemory(GrowMemoryParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 19: + + variant2471 = MakePublicOplogEntryFilesystemStorageUsageUpdate(FilesystemStorageUsageUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, *(*int64)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 20: + value2158 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2159 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant2471 = MakePublicOplogEntryCreateResource(CreateResourceParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), value2158, value2159}) + + case 21: + value2160 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2161 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant2471 = MakePublicOplogEntryDropResource(DropResourceParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), value2160, value2161}) + + case 22: + value2162 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) + value2163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + variant2471 = MakePublicOplogEntryLog(LogParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24)))), value2162, value2163}) + + case 23: + + variant2471 = MakePublicOplogEntryRestart(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}}) + + case 24: + value2164 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + value2165 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + result2168 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(4*4)) + value2166 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2168 = append(result2168, witTypes.Tuple2[string, string]{value2166, value2167}) + } + + variant2471 = MakePublicOplogEntryActivatePlugin(ActivatePluginParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 40)), value2164, value2165, result2168}}) + + case 25: + value2169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + value2170 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + result2173 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(4*4)) + value2171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2172 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2173 = append(result2173, witTypes.Tuple2[string, string]{value2171, value2172}) + } + + variant2471 = MakePublicOplogEntryDeactivatePlugin(DeactivatePluginParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 40)), value2169, value2170, result2173}}) + + case 26: + + variant2471 = MakePublicOplogEntryRevert(RevertParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, OplogRegion{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}) + + case 27: + value2174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2471 = MakePublicOplogEntryCancelPendingInvocation(CancelPendingInvocationParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2174}) + + case 28: + value2175 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + var option2177 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option2177 = witTypes.None[string]() + case 1: + value2176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option2177 = witTypes.Some[string](value2176) + default: + panic("unreachable") + } + var option2179 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) { + case 0: + + option2179 = witTypes.None[string]() + case 1: + value2178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 7*4)))) + + option2179 = witTypes.Some[string](value2178) + default: + panic("unreachable") + } + result2183 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 8*4))))), index*(5*4)) + value2180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2182 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value2181 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant2182 = golem_api_context.MakeAttributeValueString(value2181) + + default: + panic("unreachable") + } + + result2183 = append(result2183, golem_api_context.Attribute{value2180, variant2182}) + } + + variant2471 = MakePublicOplogEntryStartSpan(StartSpanParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2175, option2177, option2179, result2183}) + + case 29: + value2184 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2471 = MakePublicOplogEntryFinishSpan(FinishSpanParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2184}) + + case 30: + value2185 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + value2186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + var variant2188 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) { + case 0: + value2187 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + variant2188 = golem_api_context.MakeAttributeValueString(value2187) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntrySetSpanAttribute(SetSpanAttributeParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2185, value2186, variant2188}) + + case 31: + var variant2189 golem_api_host.PersistenceLevel + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2189 = golem_api_host.MakePersistenceLevelPersistNothing() + + case 1: + + variant2189 = golem_api_host.MakePersistenceLevelPersistRemoteSideEffects() + + case 2: + + variant2189 = golem_api_host.MakePersistenceLevelSmart() + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryChangePersistenceLevel(ChangePersistenceLevelParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant2189}) + + case 32: + value2190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2471 = MakePublicOplogEntryBeginRemoteTransaction(BeginRemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2190}) + + case 33: + + variant2471 = MakePublicOplogEntryPreCommitRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 34: + + variant2471 = MakePublicOplogEntryPreRollbackRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 35: + + variant2471 = MakePublicOplogEntryCommittedRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 36: + + variant2471 = MakePublicOplogEntryRolledBackRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + case 37: + value2191 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + value2192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) + + variant2471 = MakePublicOplogEntrySnapshot(SnapshotParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, SnapshotData{value2191, value2192}}) + + case 38: + value2193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + value2194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + result2197 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4))))), index*(4*4)) + value2195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2197 = append(result2197, witTypes.Tuple2[string, string]{value2195, value2196}) + } + + value2198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 7*4)))) + + variant2471 = MakePublicOplogEntryOplogProcessorCheckpoint(OplogProcessorCheckpointParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 40)), value2193, value2194, result2197}, golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 6*4))))}}, value2198}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 8*4))))}) + + case 39: + value2199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + result2230 := make([]golem_api_retry.PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))))), index*(16+4*4)) + var variant2229 golem_api_retry.PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2200 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2202 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2202 = golem_api_retry.MakePredicateValueText(value2201) + + case 1: + + variant2202 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2202 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropEq(golem_api_retry.PropertyComparison{value2200, variant2202}) + + case 1: + value2203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2205 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2204 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2205 = golem_api_retry.MakePredicateValueText(value2204) + + case 1: + + variant2205 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2205 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropNeq(golem_api_retry.PropertyComparison{value2203, variant2205}) + + case 2: + value2206 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2208 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2207 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2208 = golem_api_retry.MakePredicateValueText(value2207) + + case 1: + + variant2208 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2208 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropGt(golem_api_retry.PropertyComparison{value2206, variant2208}) + + case 3: + value2209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2211 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2210 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2211 = golem_api_retry.MakePredicateValueText(value2210) + + case 1: + + variant2211 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2211 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropGte(golem_api_retry.PropertyComparison{value2209, variant2211}) + + case 4: + value2212 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2214 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2213 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2214 = golem_api_retry.MakePredicateValueText(value2213) + + case 1: + + variant2214 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2214 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropLt(golem_api_retry.PropertyComparison{value2212, variant2214}) + + case 5: + value2215 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2217 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2216 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2217 = golem_api_retry.MakePredicateValueText(value2216) + + case 1: + + variant2217 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2217 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropLte(golem_api_retry.PropertyComparison{value2215, variant2217}) + + case 6: + value2218 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropExists(value2218) + + case 7: + value2219 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2222 := make([]golem_api_retry.PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant2221 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2220 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2221 = golem_api_retry.MakePredicateValueText(value2220) + + case 1: + + variant2221 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant2221 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result2222 = append(result2222, variant2221) + } + + variant2229 = golem_api_retry.MakePredicateNodePropIn(golem_api_retry.PropertySetCheck{value2219, result2222}) + + case 8: + value2223 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropMatches(golem_api_retry.PropertyPattern{value2223, value2224}) + + case 9: + value2225 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropStartsWith(golem_api_retry.PropertyPattern{value2225, value2226}) + + case 10: + value2227 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropContains(golem_api_retry.PropertyPattern{value2227, value2228}) + + case 11: + + variant2229 = golem_api_retry.MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2229 = golem_api_retry.MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2229 = golem_api_retry.MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant2229 = golem_api_retry.MakePredicateNodePredTrue() + + case 15: + + variant2229 = golem_api_retry.MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result2230 = append(result2230, variant2229) + } + + result2263 := make([]golem_api_retry.PolicyNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))))), index*32) + var variant2262 golem_api_retry.PolicyNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2262 = golem_api_retry.MakePolicyNodePeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 1: + + variant2262 = golem_api_retry.MakePolicyNodeExponential(golem_api_retry.ExponentialConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*float64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 2: + + variant2262 = golem_api_retry.MakePolicyNodeFibonacci(golem_api_retry.FibonacciConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 3: + + variant2262 = golem_api_retry.MakePolicyNodeImmediate() + + case 4: + + variant2262 = golem_api_retry.MakePolicyNodeNever() + + case 5: + + variant2262 = golem_api_retry.MakePolicyNodeCountBox(golem_api_retry.CountBoxConfig{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 6: + + variant2262 = golem_api_retry.MakePolicyNodeTimeBox(golem_api_retry.TimeBoxConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 7: + + variant2262 = golem_api_retry.MakePolicyNodeClampDelay(golem_api_retry.ClampConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 8: + + variant2262 = golem_api_retry.MakePolicyNodeAddDelay(golem_api_retry.AddDelayConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 9: + + variant2262 = golem_api_retry.MakePolicyNodeJitter(golem_api_retry.JitterConfig{*(*float64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 10: + result2261 := make([]golem_api_retry.PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(16+4*4)) + var variant2260 golem_api_retry.PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2233 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2232 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2233 = golem_api_retry.MakePredicateValueText(value2232) + + case 1: + + variant2233 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2233 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropEq(golem_api_retry.PropertyComparison{value2231, variant2233}) + + case 1: + value2234 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2236 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2235 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2236 = golem_api_retry.MakePredicateValueText(value2235) + + case 1: + + variant2236 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2236 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropNeq(golem_api_retry.PropertyComparison{value2234, variant2236}) + + case 2: + value2237 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2239 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2238 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2239 = golem_api_retry.MakePredicateValueText(value2238) + + case 1: + + variant2239 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2239 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropGt(golem_api_retry.PropertyComparison{value2237, variant2239}) + + case 3: + value2240 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2242 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2241 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2242 = golem_api_retry.MakePredicateValueText(value2241) + + case 1: + + variant2242 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2242 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropGte(golem_api_retry.PropertyComparison{value2240, variant2242}) + + case 4: + value2243 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2245 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2244 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2245 = golem_api_retry.MakePredicateValueText(value2244) + + case 1: + + variant2245 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2245 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropLt(golem_api_retry.PropertyComparison{value2243, variant2245}) + + case 5: + value2246 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2248 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2247 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2248 = golem_api_retry.MakePredicateValueText(value2247) + + case 1: + + variant2248 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2248 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropLte(golem_api_retry.PropertyComparison{value2246, variant2248}) + + case 6: + value2249 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropExists(value2249) + + case 7: + value2250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2253 := make([]golem_api_retry.PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant2252 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2251 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2252 = golem_api_retry.MakePredicateValueText(value2251) + + case 1: + + variant2252 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant2252 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result2253 = append(result2253, variant2252) + } + + variant2260 = golem_api_retry.MakePredicateNodePropIn(golem_api_retry.PropertySetCheck{value2250, result2253}) + + case 8: + value2254 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2255 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropMatches(golem_api_retry.PropertyPattern{value2254, value2255}) + + case 9: + value2256 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropStartsWith(golem_api_retry.PropertyPattern{value2256, value2257}) + + case 10: + value2258 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2259 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropContains(golem_api_retry.PropertyPattern{value2258, value2259}) + + case 11: + + variant2260 = golem_api_retry.MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2260 = golem_api_retry.MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2260 = golem_api_retry.MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant2260 = golem_api_retry.MakePredicateNodePredTrue() + + case 15: + + variant2260 = golem_api_retry.MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result2261 = append(result2261, variant2260) + } + + variant2262 = golem_api_retry.MakePolicyNodeFilteredOn(golem_api_retry.FilteredConfig{golem_api_retry.RetryPredicate{result2261}, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 11: + + variant2262 = golem_api_retry.MakePolicyNodeAndThen(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2262 = golem_api_retry.MakePolicyNodePolicyUnion(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2262 = golem_api_retry.MakePolicyNodePolicyIntersect(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + default: + panic("unreachable") + } + + result2263 = append(result2263, variant2262) + } + + variant2471 = MakePublicOplogEntrySetRetryPolicy(SetRetryPolicyParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, golem_api_retry.NamedRetryPolicy{value2199, uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))), golem_api_retry.RetryPredicate{result2230}, golem_api_retry.RetryPolicy{result2263}}}) + + case 40: + value2264 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 1*4)))) + + variant2471 = MakePublicOplogEntryRemoveRetryPolicy(RemoveRetryPolicyParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, value2264}) + + case 41: + var variant2265 QueuedCardEvent + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2265 = MakeQueuedCardEventInstall(QueuedCardEventInstall{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}}) + + case 1: + + variant2265 = MakeQueuedCardEventRevoke(QueuedCardEventRevoke{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCardEventQueued(CardEventQueuedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, variant2265}) + + case 42: + var option2266 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + option2266 = witTypes.None[uint64]() + case 1: + + option2266 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCardInstalled(CardInstalledParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, option2266, golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 48)))}}}) + + case 43: + + variant2471 = MakePublicOplogEntryCardInstallFailed(CardInstallFailedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))))}) + + case 44: + + variant2471 = MakePublicOplogEntryCardRevoked(CardRevokedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}}) + + case 45: + + variant2471 = MakePublicOplogEntryCardExpired(CardExpiredParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}}}) + + case 46: + result2442 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant2430 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2430 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant2430 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option2273 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2273 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2268 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2268 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2267 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2267 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2267 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2267 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2268 = witTypes.Some[golem_core_types.NumericBound](variant2267) + default: + panic("unreachable") + } + var option2270 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2270 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2269 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2269 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2269 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2269 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2270 = witTypes.Some[golem_core_types.NumericBound](variant2269) + default: + panic("unreachable") + } + var option2272 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2272 = witTypes.None[string]() + case 1: + value2271 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2272 = witTypes.Some[string](value2271) + default: + panic("unreachable") + } + + option2273 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2268, option2270, option2272}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS8Type(option2273) + + case 3: + var option2280 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2280 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2275 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2275 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2274 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2274 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2274 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2274 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2275 = witTypes.Some[golem_core_types.NumericBound](variant2274) + default: + panic("unreachable") + } + var option2277 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2277 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2276 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2276 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2276 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2276 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2277 = witTypes.Some[golem_core_types.NumericBound](variant2276) + default: + panic("unreachable") + } + var option2279 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2279 = witTypes.None[string]() + case 1: + value2278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2279 = witTypes.Some[string](value2278) + default: + panic("unreachable") + } + + option2280 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2275, option2277, option2279}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS16Type(option2280) + + case 4: + var option2287 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2287 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2282 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2282 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2281 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2281 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2281 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2281 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2282 = witTypes.Some[golem_core_types.NumericBound](variant2281) + default: + panic("unreachable") + } + var option2284 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2284 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2283 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2283 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2283 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2283 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2284 = witTypes.Some[golem_core_types.NumericBound](variant2283) + default: + panic("unreachable") + } + var option2286 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2286 = witTypes.None[string]() + case 1: + value2285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2286 = witTypes.Some[string](value2285) + default: + panic("unreachable") + } + + option2287 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2282, option2284, option2286}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS32Type(option2287) + + case 5: + var option2294 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2294 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2289 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2289 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2288 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2288 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2288 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2288 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2289 = witTypes.Some[golem_core_types.NumericBound](variant2288) + default: + panic("unreachable") + } + var option2291 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2291 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2290 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2290 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2290 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2290 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2291 = witTypes.Some[golem_core_types.NumericBound](variant2290) + default: + panic("unreachable") + } + var option2293 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2293 = witTypes.None[string]() + case 1: + value2292 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2293 = witTypes.Some[string](value2292) + default: + panic("unreachable") + } + + option2294 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2289, option2291, option2293}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS64Type(option2294) + + case 6: + var option2301 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2301 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2296 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2296 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2295 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2295 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2295 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2295 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2296 = witTypes.Some[golem_core_types.NumericBound](variant2295) + default: + panic("unreachable") + } + var option2298 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2298 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2297 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2297 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2297 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2297 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2298 = witTypes.Some[golem_core_types.NumericBound](variant2297) + default: + panic("unreachable") + } + var option2300 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2300 = witTypes.None[string]() + case 1: + value2299 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2300 = witTypes.Some[string](value2299) + default: + panic("unreachable") + } + + option2301 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2296, option2298, option2300}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU8Type(option2301) + + case 7: + var option2308 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2308 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2303 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2303 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2302 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2302 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2302 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2302 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2303 = witTypes.Some[golem_core_types.NumericBound](variant2302) + default: + panic("unreachable") + } + var option2305 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2305 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2304 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2304 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2304 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2304 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2305 = witTypes.Some[golem_core_types.NumericBound](variant2304) + default: + panic("unreachable") + } + var option2307 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2307 = witTypes.None[string]() + case 1: + value2306 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2307 = witTypes.Some[string](value2306) + default: + panic("unreachable") + } + + option2308 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2303, option2305, option2307}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU16Type(option2308) + + case 8: + var option2315 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2315 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2310 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2310 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2309 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2309 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2309 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2309 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2310 = witTypes.Some[golem_core_types.NumericBound](variant2309) + default: + panic("unreachable") + } + var option2312 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2312 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2311 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2311 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2311 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2311 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2312 = witTypes.Some[golem_core_types.NumericBound](variant2311) + default: + panic("unreachable") + } + var option2314 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2314 = witTypes.None[string]() + case 1: + value2313 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2314 = witTypes.Some[string](value2313) + default: + panic("unreachable") + } + + option2315 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2310, option2312, option2314}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU32Type(option2315) + + case 9: + var option2322 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2322 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2317 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2317 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2316 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2316 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2316 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2316 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2317 = witTypes.Some[golem_core_types.NumericBound](variant2316) + default: + panic("unreachable") + } + var option2319 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2319 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2318 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2318 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2318 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2318 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2319 = witTypes.Some[golem_core_types.NumericBound](variant2318) + default: + panic("unreachable") + } + var option2321 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2321 = witTypes.None[string]() + case 1: + value2320 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2321 = witTypes.Some[string](value2320) + default: + panic("unreachable") + } + + option2322 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2317, option2319, option2321}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU64Type(option2322) + + case 10: + var option2329 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2329 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2324 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2324 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2323 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2323 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2323 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2323 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2324 = witTypes.Some[golem_core_types.NumericBound](variant2323) + default: + panic("unreachable") + } + var option2326 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2326 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2325 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2325 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2325 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2325 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2326 = witTypes.Some[golem_core_types.NumericBound](variant2325) + default: + panic("unreachable") + } + var option2328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2328 = witTypes.None[string]() + case 1: + value2327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2328 = witTypes.Some[string](value2327) + default: + panic("unreachable") + } + + option2329 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2324, option2326, option2328}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyF32Type(option2329) + + case 11: + var option2336 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2336 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2331 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2331 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2330 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2330 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2330 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2330 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2331 = witTypes.Some[golem_core_types.NumericBound](variant2330) + default: + panic("unreachable") + } + var option2333 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2333 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2332 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2332 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2332 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2332 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2333 = witTypes.Some[golem_core_types.NumericBound](variant2332) + default: + panic("unreachable") + } + var option2335 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2335 = witTypes.None[string]() + case 1: + value2334 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2335 = witTypes.Some[string](value2334) + default: + panic("unreachable") + } + + option2336 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2331, option2333, option2335}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyF64Type(option2336) + + case 12: + + variant2430 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant2430 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result2349 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value2337 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2339 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option2339 = witTypes.None[string]() + case 1: + value2338 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option2339 = witTypes.Some[string](value2338) + default: + panic("unreachable") + } + result2341 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value2340 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2341 = append(result2341, value2340) + } + + result2343 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value2342 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2343 = append(result2343, value2342) + } + + var option2345 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option2345 = witTypes.None[string]() + case 1: + value2344 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option2345 = witTypes.Some[string](value2344) + default: + panic("unreachable") + } + var option2348 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option2348 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2347 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant2347 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2347 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2347 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant2347 = golem_core_types.MakeRoleOther(value2346) + + default: + panic("unreachable") + } + + option2348 = witTypes.Some[golem_core_types.Role](variant2347) + default: + panic("unreachable") + } + + result2349 = append(result2349, golem_core_types.NamedFieldType{value2337, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option2339, result2341, result2343, option2345, option2348}}) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyRecordType(result2349) + + case 15: + result2363 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value2350 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2351 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2351 = witTypes.None[int32]() + case 1: + + option2351 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option2353 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2353 = witTypes.None[string]() + case 1: + value2352 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2353 = witTypes.Some[string](value2352) + default: + panic("unreachable") + } + result2355 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2355 = append(result2355, value2354) + } + + result2357 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value2356 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2357 = append(result2357, value2356) + } + + var option2359 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option2359 = witTypes.None[string]() + case 1: + value2358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option2359 = witTypes.Some[string](value2358) + default: + panic("unreachable") + } + var option2362 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option2362 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2361 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant2361 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2361 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2361 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2360 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant2361 = golem_core_types.MakeRoleOther(value2360) + + default: + panic("unreachable") + } + + option2362 = witTypes.Some[golem_core_types.Role](variant2361) + default: + panic("unreachable") + } + + result2363 = append(result2363, golem_core_types.VariantCaseType{value2350, option2351, golem_core_types.MetadataEnvelope{option2353, result2355, result2357, option2359, option2362}}) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyVariantType(result2363) + + case 16: + result2365 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2364 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2365 = append(result2365, value2364) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyEnumType(result2365) + + case 17: + result2367 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2366 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2367 = append(result2367, value2366) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyFlagsType(result2367) + + case 18: + result2368 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2368 = append(result2368, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyTupleType(result2368) + + case 19: + + variant2430 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant2430 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant2430 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant2430 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option2369 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2369 = witTypes.None[int32]() + case 1: + + option2369 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option2370 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2370 = witTypes.None[int32]() + case 1: + + option2370 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option2369, option2370}) + + case 24: + var option2373 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2373 = witTypes.None[[]string]() + case 1: + result2372 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2372 = append(result2372, value2371) + } + + option2373 = witTypes.Some[[]string](result2372) + default: + panic("unreachable") + } + var option2374 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2374 = witTypes.None[uint32]() + case 1: + + option2374 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2375 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2375 = witTypes.None[uint32]() + case 1: + + option2375 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option2377 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option2377 = witTypes.None[string]() + case 1: + value2376 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option2377 = witTypes.Some[string](value2376) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option2373, option2374, option2375, option2377}) + + case 25: + var option2380 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2380 = witTypes.None[[]string]() + case 1: + result2379 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2379 = append(result2379, value2378) + } + + option2380 = witTypes.Some[[]string](result2379) + default: + panic("unreachable") + } + var option2381 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2381 = witTypes.None[uint32]() + case 1: + + option2381 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2382 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2382 = witTypes.None[uint32]() + case 1: + + option2382 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option2380, option2381, option2382}) + + case 26: + var option2385 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2385 = witTypes.None[[]string]() + case 1: + result2384 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2383 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2384 = append(result2384, value2383) + } + + option2385 = witTypes.Some[[]string](result2384) + default: + panic("unreachable") + } + var option2388 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2388 = witTypes.None[[]string]() + case 1: + result2387 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2386 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2387 = append(result2387, value2386) + } + + option2388 = witTypes.Some[[]string](result2387) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option2385, option2388}) + + case 27: + var option2391 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2391 = witTypes.None[[]string]() + case 1: + result2390 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2389 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2390 = append(result2390, value2389) + } + + option2391 = witTypes.Some[[]string](result2390) + default: + panic("unreachable") + } + var option2394 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2394 = witTypes.None[[]string]() + case 1: + result2393 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value2392 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2393 = append(result2393, value2392) + } + + option2394 = witTypes.Some[[]string](result2393) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option2391, option2394}) + + case 28: + + variant2430 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant2430 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value2395 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2397 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2396 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2397 = append(result2397, value2396) + } + + var option2399 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2399 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2398 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option2399 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value2398}) + default: + panic("unreachable") + } + var option2401 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option2401 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2400 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option2401 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value2400}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value2395, result2397, option2399, option2401}) + + case 31: + result2423 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value2402 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2411 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value2403 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRulePrefix(value2403) + + case 1: + value2404 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleSuffix(value2404) + + case 2: + value2405 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleContains(value2405) + + case 3: + value2406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleRegex(value2406) + + case 4: + value2407 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option2409 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option2409 = witTypes.None[string]() + case 1: + value2408 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option2409 = witTypes.Some[string](value2408) + default: + panic("unreachable") + } + + variant2411 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value2407, option2409}) + + case 5: + value2410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value2410) + + default: + panic("unreachable") + } + var option2413 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option2413 = witTypes.None[string]() + case 1: + value2412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option2413 = witTypes.Some[string](value2412) + default: + panic("unreachable") + } + result2415 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value2414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2415 = append(result2415, value2414) + } + + result2417 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value2416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2417 = append(result2417, value2416) + } + + var option2419 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option2419 = witTypes.None[string]() + case 1: + value2418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option2419 = witTypes.Some[string](value2418) + default: + panic("unreachable") + } + var option2422 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option2422 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2421 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant2421 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2421 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2421 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2420 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant2421 = golem_core_types.MakeRoleOther(value2420) + + default: + panic("unreachable") + } + + option2422 = witTypes.Some[golem_core_types.Role](variant2421) + default: + panic("unreachable") + } + + result2423 = append(result2423, golem_core_types.UnionBranch{value2402, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant2411, golem_core_types.MetadataEnvelope{option2413, result2415, result2417, option2419, option2422}}) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result2423}) + + case 32: + var option2425 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2425 = witTypes.None[string]() + case 1: + value2424 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option2425 = witTypes.Some[string](value2424) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option2425}) + + case 33: + var option2427 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2427 = witTypes.None[string]() + case 1: + value2426 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option2427 = witTypes.Some[string](value2426) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option2427}) + + case 34: + var option2428 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2428 = witTypes.None[int32]() + case 1: + + option2428 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyFutureType(option2428) + + case 35: + var option2429 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2429 = witTypes.None[int32]() + case 1: + + option2429 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyStreamType(option2429) + + default: + panic("unreachable") + } + var option2432 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option2432 = witTypes.None[string]() + case 1: + value2431 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option2432 = witTypes.Some[string](value2431) + default: + panic("unreachable") + } + result2434 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value2433 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2434 = append(result2434, value2433) + } + + result2436 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value2435 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2436 = append(result2436, value2435) + } + + var option2438 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option2438 = witTypes.None[string]() + case 1: + value2437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option2438 = witTypes.Some[string](value2437) + default: + panic("unreachable") + } + var option2441 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option2441 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2440 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant2440 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2440 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2440 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2439 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant2440 = golem_core_types.MakeRoleOther(value2439) + + default: + panic("unreachable") + } + + option2441 = witTypes.Some[golem_core_types.Role](variant2440) + default: + panic("unreachable") + } + + result2442 = append(result2442, golem_core_types.SchemaTypeNode{variant2430, golem_core_types.MetadataEnvelope{option2432, result2434, result2436, option2438, option2441}}) + } + + result2446 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value2443 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2445 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2445 = witTypes.None[string]() + case 1: + value2444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option2445 = witTypes.Some[string](value2444) + default: + panic("unreachable") + } + + result2446 = append(result2446, golem_core_types.SchemaTypeDef{value2443, option2445, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result2470 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant2469 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2469 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant2469 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant2469 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant2469 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant2469 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant2469 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant2469 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant2469 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant2469 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant2469 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant2469 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant2469 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value2447 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeStringValue(value2447) + + case 13: + result2448 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2448 = append(result2448, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeRecordValue(result2448) + + case 14: + var option2449 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2449 = witTypes.None[int32]() + case 1: + + option2449 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option2449}) + + case 15: + + variant2469 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result2450 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result2450 = append(result2450, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeFlagsValue(result2450) + + case 17: + result2451 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2451 = append(result2451, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeTupleValue(result2451) + + case 18: + result2452 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2452 = append(result2452, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeListValue(result2452) + + case 19: + result2453 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2453 = append(result2453, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeFixedListValue(result2453) + + case 20: + result2454 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result2454 = append(result2454, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeMapValue(result2454) + + case 21: + var option2455 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2455 = witTypes.None[int32]() + case 1: + + option2455 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeOptionValue(option2455) + + case 22: + var variant2458 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option2456 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2456 = witTypes.None[int32]() + case 1: + + option2456 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2458 = golem_core_types.MakeResultValuePayloadOkValue(option2456) + + case 1: + var option2457 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2457 = witTypes.None[int32]() + case 1: + + option2457 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2458 = golem_core_types.MakeResultValuePayloadErrValue(option2457) + + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeResultValue(variant2458) + + case 23: + value2459 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2461 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2461 = witTypes.None[string]() + case 1: + value2460 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2461 = witTypes.Some[string](value2460) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value2459, option2461}) + + case 24: + value2462 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2464 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2464 = witTypes.None[string]() + case 1: + value2463 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2464 = witTypes.Some[string](value2463) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value2462, option2464}) + + case 25: + value2465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodePathValue(value2465) + + case 26: + value2466 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeUrlValue(value2466) + + case 27: + + variant2469 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant2469 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value2467 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2467}) + + case 30: + value2468 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value2468, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant2469 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant2469 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result2470 = append(result2470, variant2469) + } + + variant2471 = MakePublicOplogEntryHostStreamFrame(HostStreamFrameParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)))), golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result2442, result2446, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result2470, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}}) + + case 47: + + variant2471 = MakePublicOplogEntryCompletionDiscarded(CompletionDiscardedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 24)))}) + + default: + panic("unreachable") + } + + result2472 = append(result2472, variant2471) + } + + option2473 = witTypes.Some[[]PublicOplogEntry](result2472) + default: + panic("unreachable") + } + result2474 := option2473 + return result2474 + +} + +//go:wasmimport golem:api/oplog@1.5.0 [constructor]search-oplog +func wasm_import_constructor_search_oplog(arg0 int64, arg1 int64, arg2 uintptr, arg3 uint32, arg4 uintptr, arg5 uint32) int32 + +func MakeSearchOplog(agentId golem_core_types.AgentId, text string) *SearchOplog { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData((agentId).AgentId)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData(text)) + pinner.Pin(utf80) + result := wasm_import_constructor_search_oplog(int64((((agentId).ComponentId).Uuid).HighBits), int64((((agentId).ComponentId).Uuid).LowBits), uintptr(utf8), uint32(len((agentId).AgentId)), uintptr(utf80), uint32(len(text))) + return SearchOplogFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport golem:api/oplog@1.5.0 [method]search-oplog.get-next +func wasm_import_method_search_oplog_get_next(arg0 int32, arg1 uintptr) + +func (self *SearchOplog) GetNext() witTypes.Option[[]witTypes.Tuple2[uint64, PublicOplogEntry]] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_search_oplog_get_next((self).Handle(), returnArea) + var option2473 witTypes.Option[[]witTypes.Tuple2[uint64, PublicOplogEntry]] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option2473 = witTypes.None[[]witTypes.Tuple2[uint64, PublicOplogEntry]]() + case 1: + result2472 := make([]witTypes.Tuple2[uint64, PublicOplogEntry], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(176+10*4)) + var variant2471 PublicOplogEntry + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4)))) + result := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))))), index*(4*4)) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result = append(result, witTypes.Tuple2[string, string]{value0, value1}) + } + + var option witTypes.Option[golem_core_types.AgentId] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (96 + 4*4)))) { + case 0: + + option = witTypes.None[golem_core_types.AgentId]() + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (120 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (120 + 5*4)))) + + option = witTypes.Some[golem_core_types.AgentId](golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (104 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (112 + 4*4))))}}, value2}) + default: + panic("unreachable") + } + result8 := make([]PluginInstallationDescription, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 6*4))))), index*(24+6*4)) + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4)))) + result7 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4))))), index*(4*4)) + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result7 = append(result7, witTypes.Tuple2[string, string]{value5, value6}) + } + + result8 = append(result8, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value3, value4, result7}) + } + + result214 := make([]LocalAgentConfigEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 8*4))))), index*(10*4)) + result10 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(2*4)) + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result10 = append(result10, value9) + } + + result185 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))), index*(56+22*4)) + var variant173 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant173 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant173 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option16 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option16 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option11 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option11 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option11 = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option13 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option13 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant12 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant12 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant12 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant12 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option13 = witTypes.Some[golem_core_types.NumericBound](variant12) + default: + panic("unreachable") + } + var option15 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option15 = witTypes.None[string]() + case 1: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option15 = witTypes.Some[string](value14) + default: + panic("unreachable") + } + + option16 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option11, option13, option15}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS8Type(option16) + + case 3: + var option23 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option23 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option18 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option18 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant17 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant17 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant17 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant17 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option18 = witTypes.Some[golem_core_types.NumericBound](variant17) + default: + panic("unreachable") + } + var option20 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option20 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant19 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant19 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant19 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant19 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option20 = witTypes.Some[golem_core_types.NumericBound](variant19) + default: + panic("unreachable") + } + var option22 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option22 = witTypes.None[string]() + case 1: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option22 = witTypes.Some[string](value21) + default: + panic("unreachable") + } + + option23 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option18, option20, option22}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS16Type(option23) + + case 4: + var option30 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option30 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option25 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option25 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant24 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant24 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant24 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant24 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option25 = witTypes.Some[golem_core_types.NumericBound](variant24) + default: + panic("unreachable") + } + var option27 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option27 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant26 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant26 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant26 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant26 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option27 = witTypes.Some[golem_core_types.NumericBound](variant26) + default: + panic("unreachable") + } + var option29 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option29 = witTypes.None[string]() + case 1: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option29 = witTypes.Some[string](value28) + default: + panic("unreachable") + } + + option30 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option25, option27, option29}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS32Type(option30) + + case 5: + var option37 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option37 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option32 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option32 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant31 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant31 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant31 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant31 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option32 = witTypes.Some[golem_core_types.NumericBound](variant31) + default: + panic("unreachable") + } + var option34 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option34 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant33 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant33 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant33 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant33 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option34 = witTypes.Some[golem_core_types.NumericBound](variant33) + default: + panic("unreachable") + } + var option36 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option36 = witTypes.None[string]() + case 1: + value35 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option36 = witTypes.Some[string](value35) + default: + panic("unreachable") + } + + option37 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option32, option34, option36}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyS64Type(option37) + + case 6: + var option44 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option44 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option39 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option39 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant38 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant38 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant38 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant38 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option39 = witTypes.Some[golem_core_types.NumericBound](variant38) + default: + panic("unreachable") + } + var option41 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant40 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant40 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant40 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant40 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericBound](variant40) + default: + panic("unreachable") + } + var option43 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option43 = witTypes.None[string]() + case 1: + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option43 = witTypes.Some[string](value42) + default: + panic("unreachable") + } + + option44 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option39, option41, option43}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU8Type(option44) + + case 7: + var option51 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option51 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option46 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option46 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant45 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant45 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant45 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant45 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option46 = witTypes.Some[golem_core_types.NumericBound](variant45) + default: + panic("unreachable") + } + var option48 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant47 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant47 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant47 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant47 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericBound](variant47) + default: + panic("unreachable") + } + var option50 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option50 = witTypes.None[string]() + case 1: + value49 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option50 = witTypes.Some[string](value49) + default: + panic("unreachable") + } + + option51 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option46, option48, option50}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU16Type(option51) + + case 8: + var option58 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option58 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option53 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option53 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant52 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant52 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant52 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant52 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option53 = witTypes.Some[golem_core_types.NumericBound](variant52) + default: + panic("unreachable") + } + var option55 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant54 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant54 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant54 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant54 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericBound](variant54) + default: + panic("unreachable") + } + var option57 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option57 = witTypes.None[string]() + case 1: + value56 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option57 = witTypes.Some[string](value56) + default: + panic("unreachable") + } + + option58 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option53, option55, option57}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU32Type(option58) + + case 9: + var option65 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option65 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option60 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option60 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant59 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant59 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant59 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant59 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option60 = witTypes.Some[golem_core_types.NumericBound](variant59) + default: + panic("unreachable") + } + var option62 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant61 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant61 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant61 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant61 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericBound](variant61) + default: + panic("unreachable") + } + var option64 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option64 = witTypes.None[string]() + case 1: + value63 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option64 = witTypes.Some[string](value63) + default: + panic("unreachable") + } + + option65 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option60, option62, option64}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyU64Type(option65) + + case 10: + var option72 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option72 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option67 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option67 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant66 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant66 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant66 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant66 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option67 = witTypes.Some[golem_core_types.NumericBound](variant66) + default: + panic("unreachable") + } + var option69 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option69 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant68 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant68 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant68 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant68 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option69 = witTypes.Some[golem_core_types.NumericBound](variant68) + default: + panic("unreachable") + } + var option71 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option71 = witTypes.None[string]() + case 1: + value70 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option71 = witTypes.Some[string](value70) + default: + panic("unreachable") + } + + option72 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option67, option69, option71}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyF32Type(option72) + + case 11: + var option79 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option79 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option74 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option74 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant73 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant73 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant73 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant73 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option74 = witTypes.Some[golem_core_types.NumericBound](variant73) + default: + panic("unreachable") + } + var option76 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option76 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant75 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant75 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant75 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant75 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option76 = witTypes.Some[golem_core_types.NumericBound](variant75) + default: + panic("unreachable") + } + var option78 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option78 = witTypes.None[string]() + case 1: + value77 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option78 = witTypes.Some[string](value77) + default: + panic("unreachable") + } + + option79 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option74, option76, option78}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyF64Type(option79) + + case 12: + + variant173 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant173 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result92 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value80 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option82 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option82 = witTypes.None[string]() + case 1: + value81 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option82 = witTypes.Some[string](value81) + default: + panic("unreachable") + } + result84 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value83 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result84 = append(result84, value83) + } + + result86 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value85 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result86 = append(result86, value85) + } + + var option88 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option88 = witTypes.None[string]() + case 1: + value87 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option88 = witTypes.Some[string](value87) + default: + panic("unreachable") + } + var option91 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option91 = witTypes.None[golem_core_types.Role]() + case 1: + var variant90 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant90 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant90 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant90 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value89 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant90 = golem_core_types.MakeRoleOther(value89) + + default: + panic("unreachable") + } + + option91 = witTypes.Some[golem_core_types.Role](variant90) + default: + panic("unreachable") + } + + result92 = append(result92, golem_core_types.NamedFieldType{value80, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option82, result84, result86, option88, option91}}) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyRecordType(result92) + + case 15: + result106 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value93 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option94 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option94 = witTypes.None[int32]() + case 1: + + option94 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option96 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option96 = witTypes.None[string]() + case 1: + value95 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option96 = witTypes.Some[string](value95) + default: + panic("unreachable") + } + result98 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value97 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result98 = append(result98, value97) + } + + result100 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value99 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result100 = append(result100, value99) + } + + var option102 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option102 = witTypes.None[string]() + case 1: + value101 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option102 = witTypes.Some[string](value101) + default: + panic("unreachable") + } + var option105 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option105 = witTypes.None[golem_core_types.Role]() + case 1: + var variant104 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant104 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant104 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant104 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value103 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant104 = golem_core_types.MakeRoleOther(value103) + + default: + panic("unreachable") + } + + option105 = witTypes.Some[golem_core_types.Role](variant104) + default: + panic("unreachable") + } + + result106 = append(result106, golem_core_types.VariantCaseType{value93, option94, golem_core_types.MetadataEnvelope{option96, result98, result100, option102, option105}}) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyVariantType(result106) + + case 16: + result108 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value107 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result108 = append(result108, value107) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyEnumType(result108) + + case 17: + result110 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value109 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result110 = append(result110, value109) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyFlagsType(result110) + + case 18: + result111 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result111 = append(result111, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyTupleType(result111) + + case 19: + + variant173 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant173 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant173 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant173 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option112 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option112 = witTypes.None[int32]() + case 1: + + option112 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option113 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option113 = witTypes.None[int32]() + case 1: + + option113 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option112, option113}) + + case 24: + var option116 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option116 = witTypes.None[[]string]() + case 1: + result115 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value114 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result115 = append(result115, value114) + } + + option116 = witTypes.Some[[]string](result115) + default: + panic("unreachable") + } + var option117 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option117 = witTypes.None[uint32]() + case 1: + + option117 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option118 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option118 = witTypes.None[uint32]() + case 1: + + option118 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option120 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option120 = witTypes.None[string]() + case 1: + value119 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option120 = witTypes.Some[string](value119) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option116, option117, option118, option120}) + + case 25: + var option123 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option123 = witTypes.None[[]string]() + case 1: + result122 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value121 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result122 = append(result122, value121) + } + + option123 = witTypes.Some[[]string](result122) + default: + panic("unreachable") + } + var option124 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option124 = witTypes.None[uint32]() + case 1: + + option124 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option125 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option125 = witTypes.None[uint32]() + case 1: + + option125 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option123, option124, option125}) + + case 26: + var option128 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option128 = witTypes.None[[]string]() + case 1: + result127 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result127 = append(result127, value126) + } + + option128 = witTypes.Some[[]string](result127) + default: + panic("unreachable") + } + var option131 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option131 = witTypes.None[[]string]() + case 1: + result130 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result130 = append(result130, value129) + } + + option131 = witTypes.Some[[]string](result130) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option128, option131}) + + case 27: + var option134 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option134 = witTypes.None[[]string]() + case 1: + result133 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result133 = append(result133, value132) + } + + option134 = witTypes.Some[[]string](result133) + default: + panic("unreachable") + } + var option137 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option137 = witTypes.None[[]string]() + case 1: + result136 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result136 = append(result136, value135) + } + + option137 = witTypes.Some[[]string](result136) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option134, option137}) + + case 28: + + variant173 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant173 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result140 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result140 = append(result140, value139) + } + + var option142 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option142 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value141 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option142 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value141}) + default: + panic("unreachable") + } + var option144 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option144 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value143 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option144 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value143}) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value138, result140, option142, option144}) + + case 31: + result166 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant154 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRulePrefix(value146) + + case 1: + value147 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleSuffix(value147) + + case 2: + value148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleContains(value148) + + case 3: + value149 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleRegex(value149) + + case 4: + value150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option152 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option152 = witTypes.None[string]() + case 1: + value151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option152 = witTypes.Some[string](value151) + default: + panic("unreachable") + } + + variant154 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value150, option152}) + + case 5: + value153 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant154 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value153) + + default: + panic("unreachable") + } + var option156 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option156 = witTypes.None[string]() + case 1: + value155 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option156 = witTypes.Some[string](value155) + default: + panic("unreachable") + } + result158 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result158 = append(result158, value157) + } + + result160 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value159 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result160 = append(result160, value159) + } + + var option162 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option162 = witTypes.None[string]() + case 1: + value161 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option162 = witTypes.Some[string](value161) + default: + panic("unreachable") + } + var option165 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option165 = witTypes.None[golem_core_types.Role]() + case 1: + var variant164 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant164 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant164 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant164 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant164 = golem_core_types.MakeRoleOther(value163) + + default: + panic("unreachable") + } + + option165 = witTypes.Some[golem_core_types.Role](variant164) + default: + panic("unreachable") + } + + result166 = append(result166, golem_core_types.UnionBranch{value145, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant154, golem_core_types.MetadataEnvelope{option156, result158, result160, option162, option165}}) + } + + variant173 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result166}) + + case 32: + var option168 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option168 = witTypes.None[string]() + case 1: + value167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option168 = witTypes.Some[string](value167) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option168}) + + case 33: + var option170 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option170 = witTypes.None[string]() + case 1: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option170 = witTypes.Some[string](value169) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option170}) + + case 34: + var option171 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option171 = witTypes.None[int32]() + case 1: + + option171 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyFutureType(option171) + + case 35: + var option172 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option172 = witTypes.None[int32]() + case 1: + + option172 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant173 = golem_core_types.MakeSchemaTypeBodyStreamType(option172) + + default: + panic("unreachable") + } + var option175 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option175 = witTypes.None[string]() + case 1: + value174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option175 = witTypes.Some[string](value174) + default: + panic("unreachable") + } + result177 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result177 = append(result177, value176) + } + + result179 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result179 = append(result179, value178) + } + + var option181 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option181 = witTypes.None[string]() + case 1: + value180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option181 = witTypes.Some[string](value180) + default: + panic("unreachable") + } + var option184 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option184 = witTypes.None[golem_core_types.Role]() + case 1: + var variant183 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant183 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant183 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant183 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value182 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant183 = golem_core_types.MakeRoleOther(value182) + + default: + panic("unreachable") + } + + option184 = witTypes.Some[golem_core_types.Role](variant183) + default: + panic("unreachable") + } + + result185 = append(result185, golem_core_types.SchemaTypeNode{variant173, golem_core_types.MetadataEnvelope{option175, result177, result179, option181, option184}}) + } + + result189 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))))), index*(6*4)) + value186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option188 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option188 = witTypes.None[string]() + case 1: + value187 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option188 = witTypes.Some[string](value187) + default: + panic("unreachable") + } + + result189 = append(result189, golem_core_types.SchemaTypeDef{value186, option188, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result213 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))))), index*(16+4*4)) + var variant212 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant212 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant212 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant212 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant212 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant212 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant212 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant212 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant212 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant212 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant212 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant212 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant212 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeStringValue(value190) + + case 13: + result191 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result191 = append(result191, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeRecordValue(result191) + + case 14: + var option192 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option192 = witTypes.None[int32]() + case 1: + + option192 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option192}) + + case 15: + + variant212 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result193 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result193 = append(result193, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant212 = golem_core_types.MakeSchemaValueNodeFlagsValue(result193) + + case 17: + result194 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result194 = append(result194, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeTupleValue(result194) + + case 18: + result195 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result195 = append(result195, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeListValue(result195) + + case 19: + result196 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result196 = append(result196, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant212 = golem_core_types.MakeSchemaValueNodeFixedListValue(result196) + + case 20: + result197 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result197 = append(result197, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant212 = golem_core_types.MakeSchemaValueNodeMapValue(result197) + + case 21: + var option198 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option198 = witTypes.None[int32]() + case 1: + + option198 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeOptionValue(option198) + + case 22: + var variant201 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option199 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option199 = witTypes.None[int32]() + case 1: + + option199 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant201 = golem_core_types.MakeResultValuePayloadOkValue(option199) + + case 1: + var option200 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option200 = witTypes.None[int32]() + case 1: + + option200 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant201 = golem_core_types.MakeResultValuePayloadErrValue(option200) + + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeResultValue(variant201) + + case 23: + value202 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option204 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option204 = witTypes.None[string]() + case 1: + value203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option204 = witTypes.Some[string](value203) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value202, option204}) + + case 24: + value205 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option207 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option207 = witTypes.None[string]() + case 1: + value206 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option207 = witTypes.Some[string](value206) + default: + panic("unreachable") + } + + variant212 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value205, option207}) + + case 25: + value208 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodePathValue(value208) + + case 26: + value209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeUrlValue(value209) + + case 27: + + variant212 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant212 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value210 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value210}) + + case 30: + value211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant212 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value211, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant212 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant212 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result213 = append(result213, variant212) + } + + result214 = append(result214, LocalAgentConfigEntry{result10, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result185, result189, *(*int32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))}, golem_core_types.SchemaValueTree{result213, *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))}}}) + } + + var option215 witTypes.Option[golem_core_types.Uuid] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (136 + 10*4)))) { + case 0: + + option215 = witTypes.None[golem_core_types.Uuid]() + case 1: + + option215 = witTypes.Some[golem_core_types.Uuid](golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (144 + 10*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (152 + 10*4))))}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCreate(CreateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}, value}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4))))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 2*4)))), result, golem_core_types.AccountId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 4*4))))}}, golem_api_host.EnvironmentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (88 + 4*4))))}}, option, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (120 + 6*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (128 + 6*4)))), result8, result214, option215, golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (160 + 10*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (168 + 10*4))))}}) + + case 1: + var option216 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option216 = witTypes.None[uint64]() + case 1: + + option216 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))) + default: + panic("unreachable") + } + value217 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4)))) + var option422 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4)))) { + case 0: + + option422 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result393 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 3*4))))), index*(56+22*4)) + var variant381 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant381 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant381 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option224 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option224 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option219 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option219 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant218 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant218 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant218 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant218 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option219 = witTypes.Some[golem_core_types.NumericBound](variant218) + default: + panic("unreachable") + } + var option221 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option221 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant220 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant220 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant220 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant220 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option221 = witTypes.Some[golem_core_types.NumericBound](variant220) + default: + panic("unreachable") + } + var option223 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option223 = witTypes.None[string]() + case 1: + value222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option223 = witTypes.Some[string](value222) + default: + panic("unreachable") + } + + option224 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option219, option221, option223}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS8Type(option224) + + case 3: + var option231 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option231 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option226 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option226 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant225 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant225 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant225 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant225 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option226 = witTypes.Some[golem_core_types.NumericBound](variant225) + default: + panic("unreachable") + } + var option228 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option228 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant227 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant227 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant227 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant227 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option228 = witTypes.Some[golem_core_types.NumericBound](variant227) + default: + panic("unreachable") + } + var option230 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option230 = witTypes.None[string]() + case 1: + value229 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option230 = witTypes.Some[string](value229) + default: + panic("unreachable") + } + + option231 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option226, option228, option230}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS16Type(option231) + + case 4: + var option238 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option238 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option233 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option233 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant232 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant232 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant232 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant232 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option233 = witTypes.Some[golem_core_types.NumericBound](variant232) + default: + panic("unreachable") + } + var option235 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option235 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant234 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant234 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant234 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant234 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option235 = witTypes.Some[golem_core_types.NumericBound](variant234) + default: + panic("unreachable") + } + var option237 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option237 = witTypes.None[string]() + case 1: + value236 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option237 = witTypes.Some[string](value236) + default: + panic("unreachable") + } + + option238 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option233, option235, option237}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS32Type(option238) + + case 5: + var option245 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option245 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option240 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option240 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant239 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant239 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant239 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant239 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option240 = witTypes.Some[golem_core_types.NumericBound](variant239) + default: + panic("unreachable") + } + var option242 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option242 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant241 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant241 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant241 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant241 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option242 = witTypes.Some[golem_core_types.NumericBound](variant241) + default: + panic("unreachable") + } + var option244 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option244 = witTypes.None[string]() + case 1: + value243 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option244 = witTypes.Some[string](value243) + default: + panic("unreachable") + } + + option245 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option240, option242, option244}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyS64Type(option245) + + case 6: + var option252 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option252 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option247 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option247 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant246 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant246 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant246 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant246 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option247 = witTypes.Some[golem_core_types.NumericBound](variant246) + default: + panic("unreachable") + } + var option249 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option249 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant248 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant248 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant248 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant248 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option249 = witTypes.Some[golem_core_types.NumericBound](variant248) + default: + panic("unreachable") + } + var option251 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option251 = witTypes.None[string]() + case 1: + value250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option251 = witTypes.Some[string](value250) + default: + panic("unreachable") + } + + option252 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option247, option249, option251}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU8Type(option252) + + case 7: + var option259 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option259 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option254 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option254 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant253 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant253 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant253 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant253 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option254 = witTypes.Some[golem_core_types.NumericBound](variant253) + default: + panic("unreachable") + } + var option256 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option256 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant255 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant255 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant255 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant255 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option256 = witTypes.Some[golem_core_types.NumericBound](variant255) + default: + panic("unreachable") + } + var option258 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option258 = witTypes.None[string]() + case 1: + value257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option258 = witTypes.Some[string](value257) + default: + panic("unreachable") + } + + option259 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option254, option256, option258}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU16Type(option259) + + case 8: + var option266 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option266 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option261 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option261 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant260 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant260 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant260 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant260 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option261 = witTypes.Some[golem_core_types.NumericBound](variant260) + default: + panic("unreachable") + } + var option263 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option263 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant262 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant262 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant262 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant262 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option263 = witTypes.Some[golem_core_types.NumericBound](variant262) + default: + panic("unreachable") + } + var option265 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option265 = witTypes.None[string]() + case 1: + value264 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option265 = witTypes.Some[string](value264) + default: + panic("unreachable") + } + + option266 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option261, option263, option265}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU32Type(option266) + + case 9: + var option273 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option273 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option268 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option268 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant267 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant267 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant267 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant267 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option268 = witTypes.Some[golem_core_types.NumericBound](variant267) + default: + panic("unreachable") + } + var option270 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option270 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant269 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant269 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant269 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant269 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option270 = witTypes.Some[golem_core_types.NumericBound](variant269) + default: + panic("unreachable") + } + var option272 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option272 = witTypes.None[string]() + case 1: + value271 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option272 = witTypes.Some[string](value271) + default: + panic("unreachable") + } + + option273 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option268, option270, option272}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyU64Type(option273) + + case 10: + var option280 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option280 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option275 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option275 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant274 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant274 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant274 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant274 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option275 = witTypes.Some[golem_core_types.NumericBound](variant274) + default: + panic("unreachable") + } + var option277 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option277 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant276 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant276 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant276 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant276 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option277 = witTypes.Some[golem_core_types.NumericBound](variant276) + default: + panic("unreachable") + } + var option279 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option279 = witTypes.None[string]() + case 1: + value278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option279 = witTypes.Some[string](value278) + default: + panic("unreachable") + } + + option280 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option275, option277, option279}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyF32Type(option280) + + case 11: + var option287 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option287 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option282 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option282 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant281 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant281 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant281 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant281 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option282 = witTypes.Some[golem_core_types.NumericBound](variant281) + default: + panic("unreachable") + } + var option284 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option284 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant283 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant283 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant283 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant283 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option284 = witTypes.Some[golem_core_types.NumericBound](variant283) + default: + panic("unreachable") + } + var option286 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option286 = witTypes.None[string]() + case 1: + value285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option286 = witTypes.Some[string](value285) + default: + panic("unreachable") + } + + option287 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option282, option284, option286}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyF64Type(option287) + + case 12: + + variant381 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant381 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result300 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value288 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option290 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option290 = witTypes.None[string]() + case 1: + value289 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option290 = witTypes.Some[string](value289) + default: + panic("unreachable") + } + result292 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value291 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result292 = append(result292, value291) + } + + result294 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value293 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result294 = append(result294, value293) + } + + var option296 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option296 = witTypes.None[string]() + case 1: + value295 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option296 = witTypes.Some[string](value295) + default: + panic("unreachable") + } + var option299 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option299 = witTypes.None[golem_core_types.Role]() + case 1: + var variant298 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant298 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant298 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant298 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value297 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant298 = golem_core_types.MakeRoleOther(value297) + + default: + panic("unreachable") + } + + option299 = witTypes.Some[golem_core_types.Role](variant298) + default: + panic("unreachable") + } + + result300 = append(result300, golem_core_types.NamedFieldType{value288, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option290, result292, result294, option296, option299}}) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyRecordType(result300) + + case 15: + result314 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value301 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option302 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option302 = witTypes.None[int32]() + case 1: + + option302 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option304 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option304 = witTypes.None[string]() + case 1: + value303 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option304 = witTypes.Some[string](value303) + default: + panic("unreachable") + } + result306 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value305 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result306 = append(result306, value305) + } + + result308 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value307 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result308 = append(result308, value307) + } + + var option310 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option310 = witTypes.None[string]() + case 1: + value309 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option310 = witTypes.Some[string](value309) + default: + panic("unreachable") + } + var option313 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option313 = witTypes.None[golem_core_types.Role]() + case 1: + var variant312 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant312 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant312 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant312 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value311 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant312 = golem_core_types.MakeRoleOther(value311) + + default: + panic("unreachable") + } + + option313 = witTypes.Some[golem_core_types.Role](variant312) + default: + panic("unreachable") + } + + result314 = append(result314, golem_core_types.VariantCaseType{value301, option302, golem_core_types.MetadataEnvelope{option304, result306, result308, option310, option313}}) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyVariantType(result314) + + case 16: + result316 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value315 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result316 = append(result316, value315) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyEnumType(result316) + + case 17: + result318 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value317 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result318 = append(result318, value317) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyFlagsType(result318) + + case 18: + result319 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result319 = append(result319, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyTupleType(result319) + + case 19: + + variant381 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant381 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant381 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant381 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option320 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option320 = witTypes.None[int32]() + case 1: + + option320 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option321 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option321 = witTypes.None[int32]() + case 1: + + option321 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option320, option321}) + + case 24: + var option324 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option324 = witTypes.None[[]string]() + case 1: + result323 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value322 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result323 = append(result323, value322) + } + + option324 = witTypes.Some[[]string](result323) + default: + panic("unreachable") + } + var option325 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option325 = witTypes.None[uint32]() + case 1: + + option325 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option326 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option326 = witTypes.None[uint32]() + case 1: + + option326 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option328 = witTypes.None[string]() + case 1: + value327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option328 = witTypes.Some[string](value327) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option324, option325, option326, option328}) + + case 25: + var option331 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option331 = witTypes.None[[]string]() + case 1: + result330 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value329 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result330 = append(result330, value329) + } + + option331 = witTypes.Some[[]string](result330) + default: + panic("unreachable") + } + var option332 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option332 = witTypes.None[uint32]() + case 1: + + option332 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option333 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option333 = witTypes.None[uint32]() + case 1: + + option333 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option331, option332, option333}) + + case 26: + var option336 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option336 = witTypes.None[[]string]() + case 1: + result335 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value334 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result335 = append(result335, value334) + } + + option336 = witTypes.Some[[]string](result335) + default: + panic("unreachable") + } + var option339 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option339 = witTypes.None[[]string]() + case 1: + result338 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value337 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result338 = append(result338, value337) + } + + option339 = witTypes.Some[[]string](result338) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option336, option339}) + + case 27: + var option342 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option342 = witTypes.None[[]string]() + case 1: + result341 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value340 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result341 = append(result341, value340) + } + + option342 = witTypes.Some[[]string](result341) + default: + panic("unreachable") + } + var option345 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option345 = witTypes.None[[]string]() + case 1: + result344 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value343 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result344 = append(result344, value343) + } + + option345 = witTypes.Some[[]string](result344) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option342, option345}) + + case 28: + + variant381 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant381 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result348 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value347 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result348 = append(result348, value347) + } + + var option350 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option350 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value349 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option350 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value349}) + default: + panic("unreachable") + } + var option352 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option352 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option352 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value351}) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value346, result348, option350, option352}) + + case 31: + result374 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value353 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant362 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRulePrefix(value354) + + case 1: + value355 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleSuffix(value355) + + case 2: + value356 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleContains(value356) + + case 3: + value357 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleRegex(value357) + + case 4: + value358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option360 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option360 = witTypes.None[string]() + case 1: + value359 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option360 = witTypes.Some[string](value359) + default: + panic("unreachable") + } + + variant362 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value358, option360}) + + case 5: + value361 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant362 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value361) + + default: + panic("unreachable") + } + var option364 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option364 = witTypes.None[string]() + case 1: + value363 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option364 = witTypes.Some[string](value363) + default: + panic("unreachable") + } + result366 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value365 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result366 = append(result366, value365) + } + + result368 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value367 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result368 = append(result368, value367) + } + + var option370 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option370 = witTypes.None[string]() + case 1: + value369 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option370 = witTypes.Some[string](value369) + default: + panic("unreachable") + } + var option373 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option373 = witTypes.None[golem_core_types.Role]() + case 1: + var variant372 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant372 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant372 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant372 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant372 = golem_core_types.MakeRoleOther(value371) + + default: + panic("unreachable") + } + + option373 = witTypes.Some[golem_core_types.Role](variant372) + default: + panic("unreachable") + } + + result374 = append(result374, golem_core_types.UnionBranch{value353, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant362, golem_core_types.MetadataEnvelope{option364, result366, result368, option370, option373}}) + } + + variant381 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result374}) + + case 32: + var option376 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option376 = witTypes.None[string]() + case 1: + value375 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option376 = witTypes.Some[string](value375) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option376}) + + case 33: + var option378 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option378 = witTypes.None[string]() + case 1: + value377 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option378 = witTypes.Some[string](value377) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option378}) + + case 34: + var option379 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option379 = witTypes.None[int32]() + case 1: + + option379 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyFutureType(option379) + + case 35: + var option380 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option380 = witTypes.None[int32]() + case 1: + + option380 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant381 = golem_core_types.MakeSchemaTypeBodyStreamType(option380) + + default: + panic("unreachable") + } + var option383 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option383 = witTypes.None[string]() + case 1: + value382 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option383 = witTypes.Some[string](value382) + default: + panic("unreachable") + } + result385 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value384 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result385 = append(result385, value384) + } + + result387 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value386 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result387 = append(result387, value386) + } + + var option389 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option389 = witTypes.None[string]() + case 1: + value388 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option389 = witTypes.Some[string](value388) + default: + panic("unreachable") + } + var option392 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option392 = witTypes.None[golem_core_types.Role]() + case 1: + var variant391 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant391 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant391 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant391 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value390 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant391 = golem_core_types.MakeRoleOther(value390) + + default: + panic("unreachable") + } + + option392 = witTypes.Some[golem_core_types.Role](variant391) + default: + panic("unreachable") + } + + result393 = append(result393, golem_core_types.SchemaTypeNode{variant381, golem_core_types.MetadataEnvelope{option383, result385, result387, option389, option392}}) + } + + result397 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4))))), index*(6*4)) + value394 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option396 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option396 = witTypes.None[string]() + case 1: + value395 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option396 = witTypes.Some[string](value395) + default: + panic("unreachable") + } + + result397 = append(result397, golem_core_types.SchemaTypeDef{value394, option396, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result421 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))))), index*(16+4*4)) + var variant420 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant420 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant420 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant420 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant420 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant420 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant420 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant420 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant420 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant420 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant420 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant420 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant420 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value398 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeStringValue(value398) + + case 13: + result399 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result399 = append(result399, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeRecordValue(result399) + + case 14: + var option400 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option400 = witTypes.None[int32]() + case 1: + + option400 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option400}) + + case 15: + + variant420 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result401 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result401 = append(result401, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant420 = golem_core_types.MakeSchemaValueNodeFlagsValue(result401) + + case 17: + result402 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result402 = append(result402, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeTupleValue(result402) + + case 18: + result403 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result403 = append(result403, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeListValue(result403) + + case 19: + result404 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result404 = append(result404, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant420 = golem_core_types.MakeSchemaValueNodeFixedListValue(result404) + + case 20: + result405 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result405 = append(result405, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant420 = golem_core_types.MakeSchemaValueNodeMapValue(result405) + + case 21: + var option406 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option406 = witTypes.None[int32]() + case 1: + + option406 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeOptionValue(option406) + + case 22: + var variant409 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option407 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option407 = witTypes.None[int32]() + case 1: + + option407 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant409 = golem_core_types.MakeResultValuePayloadOkValue(option407) + + case 1: + var option408 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option408 = witTypes.None[int32]() + case 1: + + option408 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant409 = golem_core_types.MakeResultValuePayloadErrValue(option408) + + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeResultValue(variant409) + + case 23: + value410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option412 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option412 = witTypes.None[string]() + case 1: + value411 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option412 = witTypes.Some[string](value411) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value410, option412}) + + case 24: + value413 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option415 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option415 = witTypes.None[string]() + case 1: + value414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option415 = witTypes.Some[string](value414) + default: + panic("unreachable") + } + + variant420 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value413, option415}) + + case 25: + value416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodePathValue(value416) + + case 26: + value417 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeUrlValue(value417) + + case 27: + + variant420 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant420 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value418}) + + case 30: + value419 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant420 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value419, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant420 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant420 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result421 = append(result421, variant420) + } + + option422 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result393, result397, *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))}, golem_core_types.SchemaValueTree{result421, *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 10*4)))}}) + default: + panic("unreachable") + } + var variant425 WrappedFunctionType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) { + case 0: + + variant425 = MakeWrappedFunctionTypeReadLocal() + + case 1: + + variant425 = MakeWrappedFunctionTypeWriteLocal() + + case 2: + + variant425 = MakeWrappedFunctionTypeReadRemote() + + case 3: + + variant425 = MakeWrappedFunctionTypeWriteRemote() + + case 4: + var option423 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 10*4)))) { + case 0: + + option423 = witTypes.None[uint64]() + case 1: + + option423 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 10*4))))) + default: + panic("unreachable") + } + + variant425 = MakeWrappedFunctionTypeWriteRemoteBatched(option423) + + case 5: + var option424 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 10*4)))) { + case 0: + + option424 = witTypes.None[uint64]() + case 1: + + option424 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 10*4))))) + default: + panic("unreachable") + } + + variant425 = MakeWrappedFunctionTypeWriteRemoteTransaction(option424) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryStart(StartParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, option216, value217, option422, variant425}) + + case 2: + var option630 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option630 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result601 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))))), index*(56+22*4)) + var variant589 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant589 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant589 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option432 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option432 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option427 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option427 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant426 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant426 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant426 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant426 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option427 = witTypes.Some[golem_core_types.NumericBound](variant426) + default: + panic("unreachable") + } + var option429 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option429 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant428 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant428 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant428 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant428 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option429 = witTypes.Some[golem_core_types.NumericBound](variant428) + default: + panic("unreachable") + } + var option431 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option431 = witTypes.None[string]() + case 1: + value430 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option431 = witTypes.Some[string](value430) + default: + panic("unreachable") + } + + option432 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option427, option429, option431}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS8Type(option432) + + case 3: + var option439 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option439 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option434 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option434 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant433 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant433 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant433 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant433 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option434 = witTypes.Some[golem_core_types.NumericBound](variant433) + default: + panic("unreachable") + } + var option436 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option436 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant435 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant435 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant435 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant435 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option436 = witTypes.Some[golem_core_types.NumericBound](variant435) + default: + panic("unreachable") + } + var option438 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option438 = witTypes.None[string]() + case 1: + value437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option438 = witTypes.Some[string](value437) + default: + panic("unreachable") + } + + option439 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option434, option436, option438}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS16Type(option439) + + case 4: + var option446 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option446 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option441 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option441 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant440 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant440 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant440 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant440 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option441 = witTypes.Some[golem_core_types.NumericBound](variant440) + default: + panic("unreachable") + } + var option443 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option443 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant442 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant442 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant442 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant442 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option443 = witTypes.Some[golem_core_types.NumericBound](variant442) + default: + panic("unreachable") + } + var option445 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option445 = witTypes.None[string]() + case 1: + value444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option445 = witTypes.Some[string](value444) + default: + panic("unreachable") + } + + option446 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option441, option443, option445}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS32Type(option446) + + case 5: + var option453 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option453 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option448 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option448 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant447 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant447 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant447 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant447 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option448 = witTypes.Some[golem_core_types.NumericBound](variant447) + default: + panic("unreachable") + } + var option450 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option450 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant449 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant449 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant449 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant449 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option450 = witTypes.Some[golem_core_types.NumericBound](variant449) + default: + panic("unreachable") + } + var option452 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option452 = witTypes.None[string]() + case 1: + value451 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option452 = witTypes.Some[string](value451) + default: + panic("unreachable") + } + + option453 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option448, option450, option452}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyS64Type(option453) + + case 6: + var option460 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option460 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option455 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option455 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant454 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant454 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant454 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant454 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option455 = witTypes.Some[golem_core_types.NumericBound](variant454) + default: + panic("unreachable") + } + var option457 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option457 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant456 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant456 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant456 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant456 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option457 = witTypes.Some[golem_core_types.NumericBound](variant456) + default: + panic("unreachable") + } + var option459 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option459 = witTypes.None[string]() + case 1: + value458 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option459 = witTypes.Some[string](value458) + default: + panic("unreachable") + } + + option460 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option455, option457, option459}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU8Type(option460) + + case 7: + var option467 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option467 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option462 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option462 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant461 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant461 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant461 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant461 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option462 = witTypes.Some[golem_core_types.NumericBound](variant461) + default: + panic("unreachable") + } + var option464 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option464 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant463 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant463 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant463 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant463 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option464 = witTypes.Some[golem_core_types.NumericBound](variant463) + default: + panic("unreachable") + } + var option466 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option466 = witTypes.None[string]() + case 1: + value465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option466 = witTypes.Some[string](value465) + default: + panic("unreachable") + } + + option467 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option462, option464, option466}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU16Type(option467) + + case 8: + var option474 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option474 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option469 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option469 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant468 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant468 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant468 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant468 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option469 = witTypes.Some[golem_core_types.NumericBound](variant468) + default: + panic("unreachable") + } + var option471 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option471 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant470 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant470 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant470 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant470 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option471 = witTypes.Some[golem_core_types.NumericBound](variant470) + default: + panic("unreachable") + } + var option473 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option473 = witTypes.None[string]() + case 1: + value472 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option473 = witTypes.Some[string](value472) + default: + panic("unreachable") + } + + option474 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option469, option471, option473}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU32Type(option474) + + case 9: + var option481 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option481 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option476 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option476 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant475 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant475 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant475 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant475 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option476 = witTypes.Some[golem_core_types.NumericBound](variant475) + default: + panic("unreachable") + } + var option478 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option478 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant477 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant477 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant477 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant477 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option478 = witTypes.Some[golem_core_types.NumericBound](variant477) + default: + panic("unreachable") + } + var option480 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option480 = witTypes.None[string]() + case 1: + value479 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option480 = witTypes.Some[string](value479) + default: + panic("unreachable") + } + + option481 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option476, option478, option480}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyU64Type(option481) + + case 10: + var option488 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option488 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option483 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option483 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant482 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant482 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant482 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant482 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option483 = witTypes.Some[golem_core_types.NumericBound](variant482) + default: + panic("unreachable") + } + var option485 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option485 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant484 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant484 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant484 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant484 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option485 = witTypes.Some[golem_core_types.NumericBound](variant484) + default: + panic("unreachable") + } + var option487 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option487 = witTypes.None[string]() + case 1: + value486 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option487 = witTypes.Some[string](value486) + default: + panic("unreachable") + } + + option488 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option483, option485, option487}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyF32Type(option488) + + case 11: + var option495 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option495 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option490 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option490 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant489 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant489 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant489 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant489 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option490 = witTypes.Some[golem_core_types.NumericBound](variant489) + default: + panic("unreachable") + } + var option492 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option492 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant491 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant491 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant491 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant491 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option492 = witTypes.Some[golem_core_types.NumericBound](variant491) + default: + panic("unreachable") + } + var option494 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option494 = witTypes.None[string]() + case 1: + value493 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option494 = witTypes.Some[string](value493) + default: + panic("unreachable") + } + + option495 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option490, option492, option494}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyF64Type(option495) + + case 12: + + variant589 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant589 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result508 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value496 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option498 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option498 = witTypes.None[string]() + case 1: + value497 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option498 = witTypes.Some[string](value497) + default: + panic("unreachable") + } + result500 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value499 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result500 = append(result500, value499) + } + + result502 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value501 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result502 = append(result502, value501) + } + + var option504 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option504 = witTypes.None[string]() + case 1: + value503 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option504 = witTypes.Some[string](value503) + default: + panic("unreachable") + } + var option507 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option507 = witTypes.None[golem_core_types.Role]() + case 1: + var variant506 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant506 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant506 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant506 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value505 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant506 = golem_core_types.MakeRoleOther(value505) + + default: + panic("unreachable") + } + + option507 = witTypes.Some[golem_core_types.Role](variant506) + default: + panic("unreachable") + } + + result508 = append(result508, golem_core_types.NamedFieldType{value496, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option498, result500, result502, option504, option507}}) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyRecordType(result508) + + case 15: + result522 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value509 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option510 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option510 = witTypes.None[int32]() + case 1: + + option510 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option512 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option512 = witTypes.None[string]() + case 1: + value511 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option512 = witTypes.Some[string](value511) + default: + panic("unreachable") + } + result514 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value513 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result514 = append(result514, value513) + } + + result516 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value515 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result516 = append(result516, value515) + } + + var option518 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option518 = witTypes.None[string]() + case 1: + value517 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option518 = witTypes.Some[string](value517) + default: + panic("unreachable") + } + var option521 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option521 = witTypes.None[golem_core_types.Role]() + case 1: + var variant520 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant520 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant520 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant520 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value519 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant520 = golem_core_types.MakeRoleOther(value519) + + default: + panic("unreachable") + } + + option521 = witTypes.Some[golem_core_types.Role](variant520) + default: + panic("unreachable") + } + + result522 = append(result522, golem_core_types.VariantCaseType{value509, option510, golem_core_types.MetadataEnvelope{option512, result514, result516, option518, option521}}) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyVariantType(result522) + + case 16: + result524 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value523 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result524 = append(result524, value523) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyEnumType(result524) + + case 17: + result526 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value525 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result526 = append(result526, value525) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyFlagsType(result526) + + case 18: + result527 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result527 = append(result527, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyTupleType(result527) + + case 19: + + variant589 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant589 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant589 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant589 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option528 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option528 = witTypes.None[int32]() + case 1: + + option528 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option529 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option529 = witTypes.None[int32]() + case 1: + + option529 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option528, option529}) + + case 24: + var option532 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option532 = witTypes.None[[]string]() + case 1: + result531 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value530 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result531 = append(result531, value530) + } + + option532 = witTypes.Some[[]string](result531) + default: + panic("unreachable") + } + var option533 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option533 = witTypes.None[uint32]() + case 1: + + option533 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option534 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option534 = witTypes.None[uint32]() + case 1: + + option534 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option536 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option536 = witTypes.None[string]() + case 1: + value535 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option536 = witTypes.Some[string](value535) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option532, option533, option534, option536}) + + case 25: + var option539 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option539 = witTypes.None[[]string]() + case 1: + result538 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value537 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result538 = append(result538, value537) + } + + option539 = witTypes.Some[[]string](result538) + default: + panic("unreachable") + } + var option540 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option540 = witTypes.None[uint32]() + case 1: + + option540 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option541 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option541 = witTypes.None[uint32]() + case 1: + + option541 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option539, option540, option541}) + + case 26: + var option544 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option544 = witTypes.None[[]string]() + case 1: + result543 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value542 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result543 = append(result543, value542) + } + + option544 = witTypes.Some[[]string](result543) + default: + panic("unreachable") + } + var option547 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option547 = witTypes.None[[]string]() + case 1: + result546 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value545 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result546 = append(result546, value545) + } + + option547 = witTypes.Some[[]string](result546) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option544, option547}) + + case 27: + var option550 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option550 = witTypes.None[[]string]() + case 1: + result549 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value548 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result549 = append(result549, value548) + } + + option550 = witTypes.Some[[]string](result549) + default: + panic("unreachable") + } + var option553 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option553 = witTypes.None[[]string]() + case 1: + result552 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value551 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result552 = append(result552, value551) + } + + option553 = witTypes.Some[[]string](result552) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option550, option553}) + + case 28: + + variant589 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant589 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value554 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result556 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value555 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result556 = append(result556, value555) + } + + var option558 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option558 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value557 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option558 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value557}) + default: + panic("unreachable") + } + var option560 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option560 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value559 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option560 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value559}) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value554, result556, option558, option560}) + + case 31: + result582 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value561 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant570 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value562 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRulePrefix(value562) + + case 1: + value563 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleSuffix(value563) + + case 2: + value564 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleContains(value564) + + case 3: + value565 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleRegex(value565) + + case 4: + value566 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option568 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option568 = witTypes.None[string]() + case 1: + value567 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option568 = witTypes.Some[string](value567) + default: + panic("unreachable") + } + + variant570 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value566, option568}) + + case 5: + value569 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant570 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value569) + + default: + panic("unreachable") + } + var option572 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option572 = witTypes.None[string]() + case 1: + value571 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option572 = witTypes.Some[string](value571) + default: + panic("unreachable") + } + result574 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value573 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result574 = append(result574, value573) + } + + result576 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value575 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result576 = append(result576, value575) + } + + var option578 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option578 = witTypes.None[string]() + case 1: + value577 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option578 = witTypes.Some[string](value577) + default: + panic("unreachable") + } + var option581 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option581 = witTypes.None[golem_core_types.Role]() + case 1: + var variant580 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant580 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant580 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant580 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value579 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant580 = golem_core_types.MakeRoleOther(value579) + + default: + panic("unreachable") + } + + option581 = witTypes.Some[golem_core_types.Role](variant580) + default: + panic("unreachable") + } + + result582 = append(result582, golem_core_types.UnionBranch{value561, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant570, golem_core_types.MetadataEnvelope{option572, result574, result576, option578, option581}}) + } + + variant589 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result582}) + + case 32: + var option584 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option584 = witTypes.None[string]() + case 1: + value583 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option584 = witTypes.Some[string](value583) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option584}) + + case 33: + var option586 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option586 = witTypes.None[string]() + case 1: + value585 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option586 = witTypes.Some[string](value585) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option586}) + + case 34: + var option587 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option587 = witTypes.None[int32]() + case 1: + + option587 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyFutureType(option587) + + case 35: + var option588 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option588 = witTypes.None[int32]() + case 1: + + option588 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant589 = golem_core_types.MakeSchemaTypeBodyStreamType(option588) + + default: + panic("unreachable") + } + var option591 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option591 = witTypes.None[string]() + case 1: + value590 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option591 = witTypes.Some[string](value590) + default: + panic("unreachable") + } + result593 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value592 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result593 = append(result593, value592) + } + + result595 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value594 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result595 = append(result595, value594) + } + + var option597 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option597 = witTypes.None[string]() + case 1: + value596 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option597 = witTypes.Some[string](value596) + default: + panic("unreachable") + } + var option600 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option600 = witTypes.None[golem_core_types.Role]() + case 1: + var variant599 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant599 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant599 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant599 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value598 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant599 = golem_core_types.MakeRoleOther(value598) + + default: + panic("unreachable") + } + + option600 = witTypes.Some[golem_core_types.Role](variant599) + default: + panic("unreachable") + } + + result601 = append(result601, golem_core_types.SchemaTypeNode{variant589, golem_core_types.MetadataEnvelope{option591, result593, result595, option597, option600}}) + } + + result605 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))))), index*(6*4)) + value602 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option604 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option604 = witTypes.None[string]() + case 1: + value603 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option604 = witTypes.Some[string](value603) + default: + panic("unreachable") + } + + result605 = append(result605, golem_core_types.SchemaTypeDef{value602, option604, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result629 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))))), index*(16+4*4)) + var variant628 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant628 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant628 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant628 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant628 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant628 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant628 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant628 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant628 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant628 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant628 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant628 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant628 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value606 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeStringValue(value606) + + case 13: + result607 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result607 = append(result607, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeRecordValue(result607) + + case 14: + var option608 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option608 = witTypes.None[int32]() + case 1: + + option608 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option608}) + + case 15: + + variant628 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result609 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result609 = append(result609, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant628 = golem_core_types.MakeSchemaValueNodeFlagsValue(result609) + + case 17: + result610 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result610 = append(result610, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeTupleValue(result610) + + case 18: + result611 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result611 = append(result611, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeListValue(result611) + + case 19: + result612 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result612 = append(result612, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant628 = golem_core_types.MakeSchemaValueNodeFixedListValue(result612) + + case 20: + result613 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result613 = append(result613, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant628 = golem_core_types.MakeSchemaValueNodeMapValue(result613) + + case 21: + var option614 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option614 = witTypes.None[int32]() + case 1: + + option614 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeOptionValue(option614) + + case 22: + var variant617 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option615 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option615 = witTypes.None[int32]() + case 1: + + option615 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant617 = golem_core_types.MakeResultValuePayloadOkValue(option615) + + case 1: + var option616 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option616 = witTypes.None[int32]() + case 1: + + option616 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant617 = golem_core_types.MakeResultValuePayloadErrValue(option616) + + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeResultValue(variant617) + + case 23: + value618 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option620 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option620 = witTypes.None[string]() + case 1: + value619 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option620 = witTypes.Some[string](value619) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value618, option620}) + + case 24: + value621 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option623 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option623 = witTypes.None[string]() + case 1: + value622 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option623 = witTypes.Some[string](value622) + default: + panic("unreachable") + } + + variant628 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value621, option623}) + + case 25: + value624 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodePathValue(value624) + + case 26: + value625 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeUrlValue(value625) + + case 27: + + variant628 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant628 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value626 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value626}) + + case 30: + value627 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant628 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value627, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant628 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant628 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result629 = append(result629, variant628) + } + + option630 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result601, result605, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))}, golem_core_types.SchemaValueTree{result629, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))}}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryEnd(EndParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), option630, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4)))) != 0)}) + + case 3: + var option835 witTypes.Option[golem_core_types.TypedSchemaValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option835 = witTypes.None[golem_core_types.TypedSchemaValue]() + case 1: + result806 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))))), index*(56+22*4)) + var variant794 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant794 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant794 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option637 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option637 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option632 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option632 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant631 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant631 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant631 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant631 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option632 = witTypes.Some[golem_core_types.NumericBound](variant631) + default: + panic("unreachable") + } + var option634 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option634 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant633 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant633 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant633 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant633 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option634 = witTypes.Some[golem_core_types.NumericBound](variant633) + default: + panic("unreachable") + } + var option636 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option636 = witTypes.None[string]() + case 1: + value635 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option636 = witTypes.Some[string](value635) + default: + panic("unreachable") + } + + option637 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option632, option634, option636}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS8Type(option637) + + case 3: + var option644 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option644 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option639 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option639 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant638 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant638 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant638 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant638 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option639 = witTypes.Some[golem_core_types.NumericBound](variant638) + default: + panic("unreachable") + } + var option641 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option641 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant640 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant640 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant640 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant640 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option641 = witTypes.Some[golem_core_types.NumericBound](variant640) + default: + panic("unreachable") + } + var option643 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option643 = witTypes.None[string]() + case 1: + value642 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option643 = witTypes.Some[string](value642) + default: + panic("unreachable") + } + + option644 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option639, option641, option643}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS16Type(option644) + + case 4: + var option651 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option651 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option646 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option646 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant645 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant645 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant645 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant645 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option646 = witTypes.Some[golem_core_types.NumericBound](variant645) + default: + panic("unreachable") + } + var option648 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option648 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant647 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant647 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant647 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant647 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option648 = witTypes.Some[golem_core_types.NumericBound](variant647) + default: + panic("unreachable") + } + var option650 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option650 = witTypes.None[string]() + case 1: + value649 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option650 = witTypes.Some[string](value649) + default: + panic("unreachable") + } + + option651 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option646, option648, option650}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS32Type(option651) + + case 5: + var option658 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option658 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option653 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option653 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant652 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant652 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant652 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant652 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option653 = witTypes.Some[golem_core_types.NumericBound](variant652) + default: + panic("unreachable") + } + var option655 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option655 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant654 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant654 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant654 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant654 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option655 = witTypes.Some[golem_core_types.NumericBound](variant654) + default: + panic("unreachable") + } + var option657 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option657 = witTypes.None[string]() + case 1: + value656 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option657 = witTypes.Some[string](value656) + default: + panic("unreachable") + } + + option658 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option653, option655, option657}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyS64Type(option658) + + case 6: + var option665 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option665 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option660 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option660 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant659 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant659 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant659 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant659 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option660 = witTypes.Some[golem_core_types.NumericBound](variant659) + default: + panic("unreachable") + } + var option662 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option662 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant661 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant661 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant661 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant661 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option662 = witTypes.Some[golem_core_types.NumericBound](variant661) + default: + panic("unreachable") + } + var option664 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option664 = witTypes.None[string]() + case 1: + value663 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option664 = witTypes.Some[string](value663) + default: + panic("unreachable") + } + + option665 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option660, option662, option664}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU8Type(option665) + + case 7: + var option672 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option672 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option667 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option667 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant666 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant666 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant666 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant666 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option667 = witTypes.Some[golem_core_types.NumericBound](variant666) + default: + panic("unreachable") + } + var option669 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option669 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant668 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant668 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant668 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant668 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option669 = witTypes.Some[golem_core_types.NumericBound](variant668) + default: + panic("unreachable") + } + var option671 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option671 = witTypes.None[string]() + case 1: + value670 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option671 = witTypes.Some[string](value670) + default: + panic("unreachable") + } + + option672 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option667, option669, option671}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU16Type(option672) + + case 8: + var option679 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option679 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option674 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option674 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant673 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant673 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant673 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant673 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option674 = witTypes.Some[golem_core_types.NumericBound](variant673) + default: + panic("unreachable") + } + var option676 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option676 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant675 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant675 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant675 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant675 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option676 = witTypes.Some[golem_core_types.NumericBound](variant675) + default: + panic("unreachable") + } + var option678 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option678 = witTypes.None[string]() + case 1: + value677 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option678 = witTypes.Some[string](value677) + default: + panic("unreachable") + } + + option679 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option674, option676, option678}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU32Type(option679) + + case 9: + var option686 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option686 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option681 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option681 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant680 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant680 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant680 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant680 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option681 = witTypes.Some[golem_core_types.NumericBound](variant680) + default: + panic("unreachable") + } + var option683 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option683 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant682 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant682 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant682 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant682 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option683 = witTypes.Some[golem_core_types.NumericBound](variant682) + default: + panic("unreachable") + } + var option685 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option685 = witTypes.None[string]() + case 1: + value684 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option685 = witTypes.Some[string](value684) + default: + panic("unreachable") + } + + option686 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option681, option683, option685}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyU64Type(option686) + + case 10: + var option693 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option693 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option688 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option688 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant687 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant687 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant687 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant687 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option688 = witTypes.Some[golem_core_types.NumericBound](variant687) + default: + panic("unreachable") + } + var option690 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option690 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant689 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant689 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant689 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant689 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option690 = witTypes.Some[golem_core_types.NumericBound](variant689) + default: + panic("unreachable") + } + var option692 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option692 = witTypes.None[string]() + case 1: + value691 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option692 = witTypes.Some[string](value691) + default: + panic("unreachable") + } + + option693 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option688, option690, option692}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyF32Type(option693) + + case 11: + var option700 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option700 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option695 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option695 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant694 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant694 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant694 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant694 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option695 = witTypes.Some[golem_core_types.NumericBound](variant694) + default: + panic("unreachable") + } + var option697 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option697 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant696 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant696 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant696 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant696 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option697 = witTypes.Some[golem_core_types.NumericBound](variant696) + default: + panic("unreachable") + } + var option699 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option699 = witTypes.None[string]() + case 1: + value698 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option699 = witTypes.Some[string](value698) + default: + panic("unreachable") + } + + option700 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option695, option697, option699}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyF64Type(option700) + + case 12: + + variant794 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant794 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result713 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value701 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option703 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option703 = witTypes.None[string]() + case 1: + value702 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option703 = witTypes.Some[string](value702) + default: + panic("unreachable") + } + result705 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value704 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result705 = append(result705, value704) + } + + result707 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value706 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result707 = append(result707, value706) + } + + var option709 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option709 = witTypes.None[string]() + case 1: + value708 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option709 = witTypes.Some[string](value708) + default: + panic("unreachable") + } + var option712 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option712 = witTypes.None[golem_core_types.Role]() + case 1: + var variant711 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant711 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant711 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant711 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value710 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant711 = golem_core_types.MakeRoleOther(value710) + + default: + panic("unreachable") + } + + option712 = witTypes.Some[golem_core_types.Role](variant711) + default: + panic("unreachable") + } + + result713 = append(result713, golem_core_types.NamedFieldType{value701, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option703, result705, result707, option709, option712}}) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyRecordType(result713) + + case 15: + result727 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value714 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option715 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option715 = witTypes.None[int32]() + case 1: + + option715 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option717 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option717 = witTypes.None[string]() + case 1: + value716 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option717 = witTypes.Some[string](value716) + default: + panic("unreachable") + } + result719 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value718 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result719 = append(result719, value718) + } + + result721 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value720 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result721 = append(result721, value720) + } + + var option723 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option723 = witTypes.None[string]() + case 1: + value722 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option723 = witTypes.Some[string](value722) + default: + panic("unreachable") + } + var option726 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option726 = witTypes.None[golem_core_types.Role]() + case 1: + var variant725 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant725 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant725 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant725 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value724 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant725 = golem_core_types.MakeRoleOther(value724) + + default: + panic("unreachable") + } + + option726 = witTypes.Some[golem_core_types.Role](variant725) + default: + panic("unreachable") + } + + result727 = append(result727, golem_core_types.VariantCaseType{value714, option715, golem_core_types.MetadataEnvelope{option717, result719, result721, option723, option726}}) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyVariantType(result727) + + case 16: + result729 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value728 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result729 = append(result729, value728) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyEnumType(result729) + + case 17: + result731 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value730 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result731 = append(result731, value730) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyFlagsType(result731) + + case 18: + result732 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result732 = append(result732, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyTupleType(result732) + + case 19: + + variant794 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant794 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant794 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant794 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option733 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option733 = witTypes.None[int32]() + case 1: + + option733 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option734 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option734 = witTypes.None[int32]() + case 1: + + option734 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option733, option734}) + + case 24: + var option737 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option737 = witTypes.None[[]string]() + case 1: + result736 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value735 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result736 = append(result736, value735) + } + + option737 = witTypes.Some[[]string](result736) + default: + panic("unreachable") + } + var option738 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option738 = witTypes.None[uint32]() + case 1: + + option738 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option739 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option739 = witTypes.None[uint32]() + case 1: + + option739 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option741 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option741 = witTypes.None[string]() + case 1: + value740 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option741 = witTypes.Some[string](value740) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option737, option738, option739, option741}) + + case 25: + var option744 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option744 = witTypes.None[[]string]() + case 1: + result743 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value742 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result743 = append(result743, value742) + } + + option744 = witTypes.Some[[]string](result743) + default: + panic("unreachable") + } + var option745 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option745 = witTypes.None[uint32]() + case 1: + + option745 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option746 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option746 = witTypes.None[uint32]() + case 1: + + option746 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option744, option745, option746}) + + case 26: + var option749 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option749 = witTypes.None[[]string]() + case 1: + result748 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value747 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result748 = append(result748, value747) + } + + option749 = witTypes.Some[[]string](result748) + default: + panic("unreachable") + } + var option752 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option752 = witTypes.None[[]string]() + case 1: + result751 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value750 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result751 = append(result751, value750) + } + + option752 = witTypes.Some[[]string](result751) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option749, option752}) + + case 27: + var option755 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option755 = witTypes.None[[]string]() + case 1: + result754 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value753 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result754 = append(result754, value753) + } + + option755 = witTypes.Some[[]string](result754) + default: + panic("unreachable") + } + var option758 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option758 = witTypes.None[[]string]() + case 1: + result757 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value756 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result757 = append(result757, value756) + } + + option758 = witTypes.Some[[]string](result757) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option755, option758}) + + case 28: + + variant794 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant794 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value759 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result761 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value760 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result761 = append(result761, value760) + } + + var option763 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option763 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value762 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option763 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value762}) + default: + panic("unreachable") + } + var option765 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option765 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value764 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option765 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value764}) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value759, result761, option763, option765}) + + case 31: + result787 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value766 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant775 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value767 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRulePrefix(value767) + + case 1: + value768 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleSuffix(value768) + + case 2: + value769 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleContains(value769) + + case 3: + value770 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleRegex(value770) + + case 4: + value771 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option773 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option773 = witTypes.None[string]() + case 1: + value772 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option773 = witTypes.Some[string](value772) + default: + panic("unreachable") + } + + variant775 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value771, option773}) + + case 5: + value774 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant775 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value774) + + default: + panic("unreachable") + } + var option777 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option777 = witTypes.None[string]() + case 1: + value776 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option777 = witTypes.Some[string](value776) + default: + panic("unreachable") + } + result779 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value778 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result779 = append(result779, value778) + } + + result781 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value780 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result781 = append(result781, value780) + } + + var option783 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option783 = witTypes.None[string]() + case 1: + value782 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option783 = witTypes.Some[string](value782) + default: + panic("unreachable") + } + var option786 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option786 = witTypes.None[golem_core_types.Role]() + case 1: + var variant785 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant785 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant785 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant785 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value784 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant785 = golem_core_types.MakeRoleOther(value784) + + default: + panic("unreachable") + } + + option786 = witTypes.Some[golem_core_types.Role](variant785) + default: + panic("unreachable") + } + + result787 = append(result787, golem_core_types.UnionBranch{value766, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant775, golem_core_types.MetadataEnvelope{option777, result779, result781, option783, option786}}) + } + + variant794 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result787}) + + case 32: + var option789 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option789 = witTypes.None[string]() + case 1: + value788 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option789 = witTypes.Some[string](value788) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option789}) + + case 33: + var option791 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option791 = witTypes.None[string]() + case 1: + value790 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option791 = witTypes.Some[string](value790) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option791}) + + case 34: + var option792 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option792 = witTypes.None[int32]() + case 1: + + option792 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyFutureType(option792) + + case 35: + var option793 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option793 = witTypes.None[int32]() + case 1: + + option793 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant794 = golem_core_types.MakeSchemaTypeBodyStreamType(option793) + + default: + panic("unreachable") + } + var option796 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option796 = witTypes.None[string]() + case 1: + value795 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option796 = witTypes.Some[string](value795) + default: + panic("unreachable") + } + result798 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value797 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result798 = append(result798, value797) + } + + result800 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value799 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result800 = append(result800, value799) + } + + var option802 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option802 = witTypes.None[string]() + case 1: + value801 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option802 = witTypes.Some[string](value801) + default: + panic("unreachable") + } + var option805 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option805 = witTypes.None[golem_core_types.Role]() + case 1: + var variant804 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant804 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant804 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant804 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value803 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant804 = golem_core_types.MakeRoleOther(value803) + + default: + panic("unreachable") + } + + option805 = witTypes.Some[golem_core_types.Role](variant804) + default: + panic("unreachable") + } + + result806 = append(result806, golem_core_types.SchemaTypeNode{variant794, golem_core_types.MetadataEnvelope{option796, result798, result800, option802, option805}}) + } + + result810 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))))), index*(6*4)) + value807 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option809 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option809 = witTypes.None[string]() + case 1: + value808 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option809 = witTypes.Some[string](value808) + default: + panic("unreachable") + } + + result810 = append(result810, golem_core_types.SchemaTypeDef{value807, option809, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result834 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))))), index*(16+4*4)) + var variant833 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant833 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant833 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant833 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant833 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant833 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant833 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant833 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant833 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant833 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant833 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant833 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant833 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value811 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeStringValue(value811) + + case 13: + result812 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result812 = append(result812, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeRecordValue(result812) + + case 14: + var option813 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option813 = witTypes.None[int32]() + case 1: + + option813 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option813}) + + case 15: + + variant833 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result814 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result814 = append(result814, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant833 = golem_core_types.MakeSchemaValueNodeFlagsValue(result814) + + case 17: + result815 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result815 = append(result815, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeTupleValue(result815) + + case 18: + result816 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result816 = append(result816, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeListValue(result816) + + case 19: + result817 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result817 = append(result817, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant833 = golem_core_types.MakeSchemaValueNodeFixedListValue(result817) + + case 20: + result818 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result818 = append(result818, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant833 = golem_core_types.MakeSchemaValueNodeMapValue(result818) + + case 21: + var option819 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option819 = witTypes.None[int32]() + case 1: + + option819 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeOptionValue(option819) + + case 22: + var variant822 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option820 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option820 = witTypes.None[int32]() + case 1: + + option820 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant822 = golem_core_types.MakeResultValuePayloadOkValue(option820) + + case 1: + var option821 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option821 = witTypes.None[int32]() + case 1: + + option821 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant822 = golem_core_types.MakeResultValuePayloadErrValue(option821) + + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeResultValue(variant822) + + case 23: + value823 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option825 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option825 = witTypes.None[string]() + case 1: + value824 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option825 = witTypes.Some[string](value824) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value823, option825}) + + case 24: + value826 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option828 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option828 = witTypes.None[string]() + case 1: + value827 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option828 = witTypes.Some[string](value827) + default: + panic("unreachable") + } + + variant833 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value826, option828}) + + case 25: + value829 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodePathValue(value829) + + case 26: + value830 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeUrlValue(value830) + + case 27: + + variant833 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant833 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value831 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value831}) + + case 30: + value832 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant833 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value832, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant833 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant833 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result834 = append(result834, variant833) + } + + option835 = witTypes.Some[golem_core_types.TypedSchemaValue](golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result806, result810, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))}, golem_core_types.SchemaValueTree{result834, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))}}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCancelled(CancelledParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), option835}) + + case 4: + var variant1280 AgentInvocation + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + value836 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + result1012 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))))), index*(56+22*4)) + var variant1000 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1000 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1000 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option843 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option843 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option838 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option838 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant837 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant837 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant837 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant837 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option838 = witTypes.Some[golem_core_types.NumericBound](variant837) + default: + panic("unreachable") + } + var option840 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option840 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant839 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant839 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant839 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant839 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option840 = witTypes.Some[golem_core_types.NumericBound](variant839) + default: + panic("unreachable") + } + var option842 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option842 = witTypes.None[string]() + case 1: + value841 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option842 = witTypes.Some[string](value841) + default: + panic("unreachable") + } + + option843 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option838, option840, option842}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS8Type(option843) + + case 3: + var option850 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option850 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option845 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option845 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant844 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant844 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant844 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant844 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option845 = witTypes.Some[golem_core_types.NumericBound](variant844) + default: + panic("unreachable") + } + var option847 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option847 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant846 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant846 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant846 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant846 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option847 = witTypes.Some[golem_core_types.NumericBound](variant846) + default: + panic("unreachable") + } + var option849 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option849 = witTypes.None[string]() + case 1: + value848 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option849 = witTypes.Some[string](value848) + default: + panic("unreachable") + } + + option850 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option845, option847, option849}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS16Type(option850) + + case 4: + var option857 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option857 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option852 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option852 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant851 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant851 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant851 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant851 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option852 = witTypes.Some[golem_core_types.NumericBound](variant851) + default: + panic("unreachable") + } + var option854 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option854 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant853 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant853 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant853 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant853 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option854 = witTypes.Some[golem_core_types.NumericBound](variant853) + default: + panic("unreachable") + } + var option856 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option856 = witTypes.None[string]() + case 1: + value855 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option856 = witTypes.Some[string](value855) + default: + panic("unreachable") + } + + option857 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option852, option854, option856}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS32Type(option857) + + case 5: + var option864 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option864 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option859 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option859 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant858 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant858 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant858 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant858 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option859 = witTypes.Some[golem_core_types.NumericBound](variant858) + default: + panic("unreachable") + } + var option861 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option861 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant860 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant860 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant860 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant860 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option861 = witTypes.Some[golem_core_types.NumericBound](variant860) + default: + panic("unreachable") + } + var option863 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option863 = witTypes.None[string]() + case 1: + value862 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option863 = witTypes.Some[string](value862) + default: + panic("unreachable") + } + + option864 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option859, option861, option863}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyS64Type(option864) + + case 6: + var option871 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option871 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option866 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option866 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant865 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant865 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant865 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant865 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option866 = witTypes.Some[golem_core_types.NumericBound](variant865) + default: + panic("unreachable") + } + var option868 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option868 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant867 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant867 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant867 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant867 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option868 = witTypes.Some[golem_core_types.NumericBound](variant867) + default: + panic("unreachable") + } + var option870 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option870 = witTypes.None[string]() + case 1: + value869 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option870 = witTypes.Some[string](value869) + default: + panic("unreachable") + } + + option871 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option866, option868, option870}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU8Type(option871) + + case 7: + var option878 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option878 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option873 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option873 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant872 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant872 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant872 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant872 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option873 = witTypes.Some[golem_core_types.NumericBound](variant872) + default: + panic("unreachable") + } + var option875 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option875 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant874 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant874 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant874 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant874 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option875 = witTypes.Some[golem_core_types.NumericBound](variant874) + default: + panic("unreachable") + } + var option877 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option877 = witTypes.None[string]() + case 1: + value876 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option877 = witTypes.Some[string](value876) + default: + panic("unreachable") + } + + option878 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option873, option875, option877}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU16Type(option878) + + case 8: + var option885 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option885 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option880 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option880 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant879 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant879 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant879 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant879 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option880 = witTypes.Some[golem_core_types.NumericBound](variant879) + default: + panic("unreachable") + } + var option882 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option882 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant881 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant881 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant881 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant881 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option882 = witTypes.Some[golem_core_types.NumericBound](variant881) + default: + panic("unreachable") + } + var option884 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option884 = witTypes.None[string]() + case 1: + value883 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option884 = witTypes.Some[string](value883) + default: + panic("unreachable") + } + + option885 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option880, option882, option884}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU32Type(option885) + + case 9: + var option892 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option892 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option887 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option887 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant886 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant886 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant886 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant886 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option887 = witTypes.Some[golem_core_types.NumericBound](variant886) + default: + panic("unreachable") + } + var option889 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option889 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant888 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant888 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant888 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant888 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option889 = witTypes.Some[golem_core_types.NumericBound](variant888) + default: + panic("unreachable") + } + var option891 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option891 = witTypes.None[string]() + case 1: + value890 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option891 = witTypes.Some[string](value890) + default: + panic("unreachable") + } + + option892 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option887, option889, option891}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyU64Type(option892) + + case 10: + var option899 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option899 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option894 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option894 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant893 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant893 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant893 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant893 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option894 = witTypes.Some[golem_core_types.NumericBound](variant893) + default: + panic("unreachable") + } + var option896 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option896 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant895 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant895 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant895 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant895 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option896 = witTypes.Some[golem_core_types.NumericBound](variant895) + default: + panic("unreachable") + } + var option898 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option898 = witTypes.None[string]() + case 1: + value897 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option898 = witTypes.Some[string](value897) + default: + panic("unreachable") + } + + option899 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option894, option896, option898}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyF32Type(option899) + + case 11: + var option906 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option906 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option901 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option901 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant900 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant900 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant900 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant900 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option901 = witTypes.Some[golem_core_types.NumericBound](variant900) + default: + panic("unreachable") + } + var option903 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option903 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant902 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant902 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant902 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant902 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option903 = witTypes.Some[golem_core_types.NumericBound](variant902) + default: + panic("unreachable") + } + var option905 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option905 = witTypes.None[string]() + case 1: + value904 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option905 = witTypes.Some[string](value904) + default: + panic("unreachable") + } + + option906 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option901, option903, option905}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyF64Type(option906) + + case 12: + + variant1000 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1000 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result919 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value907 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option909 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option909 = witTypes.None[string]() + case 1: + value908 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option909 = witTypes.Some[string](value908) + default: + panic("unreachable") + } + result911 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value910 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result911 = append(result911, value910) + } + + result913 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value912 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result913 = append(result913, value912) + } + + var option915 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option915 = witTypes.None[string]() + case 1: + value914 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option915 = witTypes.Some[string](value914) + default: + panic("unreachable") + } + var option918 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option918 = witTypes.None[golem_core_types.Role]() + case 1: + var variant917 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant917 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant917 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant917 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value916 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant917 = golem_core_types.MakeRoleOther(value916) + + default: + panic("unreachable") + } + + option918 = witTypes.Some[golem_core_types.Role](variant917) + default: + panic("unreachable") + } + + result919 = append(result919, golem_core_types.NamedFieldType{value907, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option909, result911, result913, option915, option918}}) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyRecordType(result919) + + case 15: + result933 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value920 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option921 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option921 = witTypes.None[int32]() + case 1: + + option921 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option923 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option923 = witTypes.None[string]() + case 1: + value922 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option923 = witTypes.Some[string](value922) + default: + panic("unreachable") + } + result925 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value924 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result925 = append(result925, value924) + } + + result927 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value926 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result927 = append(result927, value926) + } + + var option929 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option929 = witTypes.None[string]() + case 1: + value928 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option929 = witTypes.Some[string](value928) + default: + panic("unreachable") + } + var option932 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option932 = witTypes.None[golem_core_types.Role]() + case 1: + var variant931 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant931 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant931 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant931 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value930 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant931 = golem_core_types.MakeRoleOther(value930) + + default: + panic("unreachable") + } + + option932 = witTypes.Some[golem_core_types.Role](variant931) + default: + panic("unreachable") + } + + result933 = append(result933, golem_core_types.VariantCaseType{value920, option921, golem_core_types.MetadataEnvelope{option923, result925, result927, option929, option932}}) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyVariantType(result933) + + case 16: + result935 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value934 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result935 = append(result935, value934) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyEnumType(result935) + + case 17: + result937 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value936 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result937 = append(result937, value936) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyFlagsType(result937) + + case 18: + result938 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result938 = append(result938, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyTupleType(result938) + + case 19: + + variant1000 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1000 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1000 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1000 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option939 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option939 = witTypes.None[int32]() + case 1: + + option939 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option940 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option940 = witTypes.None[int32]() + case 1: + + option940 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option939, option940}) + + case 24: + var option943 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option943 = witTypes.None[[]string]() + case 1: + result942 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value941 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result942 = append(result942, value941) + } + + option943 = witTypes.Some[[]string](result942) + default: + panic("unreachable") + } + var option944 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option944 = witTypes.None[uint32]() + case 1: + + option944 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option945 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option945 = witTypes.None[uint32]() + case 1: + + option945 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option947 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option947 = witTypes.None[string]() + case 1: + value946 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option947 = witTypes.Some[string](value946) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option943, option944, option945, option947}) + + case 25: + var option950 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option950 = witTypes.None[[]string]() + case 1: + result949 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value948 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result949 = append(result949, value948) + } + + option950 = witTypes.Some[[]string](result949) + default: + panic("unreachable") + } + var option951 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option951 = witTypes.None[uint32]() + case 1: + + option951 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option952 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option952 = witTypes.None[uint32]() + case 1: + + option952 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option950, option951, option952}) + + case 26: + var option955 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option955 = witTypes.None[[]string]() + case 1: + result954 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value953 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result954 = append(result954, value953) + } + + option955 = witTypes.Some[[]string](result954) + default: + panic("unreachable") + } + var option958 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option958 = witTypes.None[[]string]() + case 1: + result957 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value956 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result957 = append(result957, value956) + } + + option958 = witTypes.Some[[]string](result957) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option955, option958}) + + case 27: + var option961 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option961 = witTypes.None[[]string]() + case 1: + result960 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value959 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result960 = append(result960, value959) + } + + option961 = witTypes.Some[[]string](result960) + default: + panic("unreachable") + } + var option964 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option964 = witTypes.None[[]string]() + case 1: + result963 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value962 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result963 = append(result963, value962) + } + + option964 = witTypes.Some[[]string](result963) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option961, option964}) + + case 28: + + variant1000 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1000 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value965 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result967 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value966 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result967 = append(result967, value966) + } + + var option969 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option969 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value968 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option969 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value968}) + default: + panic("unreachable") + } + var option971 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option971 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value970 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option971 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value970}) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value965, result967, option969, option971}) + + case 31: + result993 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value972 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant981 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value973 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRulePrefix(value973) + + case 1: + value974 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleSuffix(value974) + + case 2: + value975 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleContains(value975) + + case 3: + value976 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleRegex(value976) + + case 4: + value977 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option979 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option979 = witTypes.None[string]() + case 1: + value978 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option979 = witTypes.Some[string](value978) + default: + panic("unreachable") + } + + variant981 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value977, option979}) + + case 5: + value980 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant981 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value980) + + default: + panic("unreachable") + } + var option983 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option983 = witTypes.None[string]() + case 1: + value982 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option983 = witTypes.Some[string](value982) + default: + panic("unreachable") + } + result985 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value984 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result985 = append(result985, value984) + } + + result987 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value986 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result987 = append(result987, value986) + } + + var option989 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option989 = witTypes.None[string]() + case 1: + value988 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option989 = witTypes.Some[string](value988) + default: + panic("unreachable") + } + var option992 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option992 = witTypes.None[golem_core_types.Role]() + case 1: + var variant991 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant991 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant991 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant991 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value990 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant991 = golem_core_types.MakeRoleOther(value990) + + default: + panic("unreachable") + } + + option992 = witTypes.Some[golem_core_types.Role](variant991) + default: + panic("unreachable") + } + + result993 = append(result993, golem_core_types.UnionBranch{value972, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant981, golem_core_types.MetadataEnvelope{option983, result985, result987, option989, option992}}) + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result993}) + + case 32: + var option995 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option995 = witTypes.None[string]() + case 1: + value994 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option995 = witTypes.Some[string](value994) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option995}) + + case 33: + var option997 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option997 = witTypes.None[string]() + case 1: + value996 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option997 = witTypes.Some[string](value996) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option997}) + + case 34: + var option998 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option998 = witTypes.None[int32]() + case 1: + + option998 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyFutureType(option998) + + case 35: + var option999 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option999 = witTypes.None[int32]() + case 1: + + option999 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1000 = golem_core_types.MakeSchemaTypeBodyStreamType(option999) + + default: + panic("unreachable") + } + var option1002 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1002 = witTypes.None[string]() + case 1: + value1001 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1002 = witTypes.Some[string](value1001) + default: + panic("unreachable") + } + result1004 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1003 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1004 = append(result1004, value1003) + } + + result1006 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1005 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1006 = append(result1006, value1005) + } + + var option1008 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1008 = witTypes.None[string]() + case 1: + value1007 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1008 = witTypes.Some[string](value1007) + default: + panic("unreachable") + } + var option1011 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1011 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1010 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1010 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1010 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1010 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1009 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1010 = golem_core_types.MakeRoleOther(value1009) + + default: + panic("unreachable") + } + + option1011 = witTypes.Some[golem_core_types.Role](variant1010) + default: + panic("unreachable") + } + + result1012 = append(result1012, golem_core_types.SchemaTypeNode{variant1000, golem_core_types.MetadataEnvelope{option1002, result1004, result1006, option1008, option1011}}) + } + + result1016 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))), index*(6*4)) + value1013 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1015 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1015 = witTypes.None[string]() + case 1: + value1014 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1015 = witTypes.Some[string](value1014) + default: + panic("unreachable") + } + + result1016 = append(result1016, golem_core_types.SchemaTypeDef{value1013, option1015, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1040 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4))))), index*(16+4*4)) + var variant1039 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1039 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1039 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1039 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1039 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1039 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1039 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1039 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1039 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1039 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1039 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1039 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1039 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1017 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeStringValue(value1017) + + case 13: + result1018 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1018 = append(result1018, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeRecordValue(result1018) + + case 14: + var option1019 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1019 = witTypes.None[int32]() + case 1: + + option1019 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1019}) + + case 15: + + variant1039 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1020 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1020 = append(result1020, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1020) + + case 17: + result1021 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1021 = append(result1021, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeTupleValue(result1021) + + case 18: + result1022 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1022 = append(result1022, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeListValue(result1022) + + case 19: + result1023 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1023 = append(result1023, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1023) + + case 20: + result1024 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1024 = append(result1024, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1039 = golem_core_types.MakeSchemaValueNodeMapValue(result1024) + + case 21: + var option1025 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1025 = witTypes.None[int32]() + case 1: + + option1025 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeOptionValue(option1025) + + case 22: + var variant1028 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1026 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1026 = witTypes.None[int32]() + case 1: + + option1026 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1028 = golem_core_types.MakeResultValuePayloadOkValue(option1026) + + case 1: + var option1027 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1027 = witTypes.None[int32]() + case 1: + + option1027 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1028 = golem_core_types.MakeResultValuePayloadErrValue(option1027) + + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeResultValue(variant1028) + + case 23: + value1029 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1031 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1031 = witTypes.None[string]() + case 1: + value1030 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1031 = witTypes.Some[string](value1030) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1029, option1031}) + + case 24: + value1032 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1034 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1034 = witTypes.None[string]() + case 1: + value1033 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1034 = witTypes.Some[string](value1033) + default: + panic("unreachable") + } + + variant1039 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1032, option1034}) + + case 25: + value1035 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodePathValue(value1035) + + case 26: + value1036 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeUrlValue(value1036) + + case 27: + + variant1039 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1039 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1037 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1037}) + + case 30: + value1038 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1039 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1038, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1039 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1039 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1040 = append(result1040, variant1039) + } + + value1041 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 11*4)))) + result1043 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 13*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 13*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 12*4))))), index*(2*4)) + value1042 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1043 = append(result1043, value1042) + } + + result1055 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 14*4))))), index*(2*4)) + result1054 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1053 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1044 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1046 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1046 = witTypes.None[string]() + case 1: + value1045 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1046 = witTypes.Some[string](value1045) + default: + panic("unreachable") + } + var option1047 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1047 = witTypes.None[uint64]() + case 1: + + option1047 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1051 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1048 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1050 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1049 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1050 = golem_api_context.MakeAttributeValueString(value1049) + + default: + panic("unreachable") + } + + result1051 = append(result1051, golem_api_context.Attribute{value1048, variant1050}) + } + + variant1053 = MakeSpanDataLocalSpan(LocalSpanData{value1044, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1046, option1047, result1051, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1052 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1053 = MakeSpanDataExternalSpan(ExternalSpanData{value1052}) + + default: + panic("unreachable") + } + + result1054 = append(result1054, variant1053) + } + + result1055 = append(result1055, result1054) + } + + variant1280 = MakeAgentInvocationAgentInitialization(AgentInitializationParameters{value836, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1012, result1016, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))}, golem_core_types.SchemaValueTree{result1040, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4)))}}, value1041, result1043, result1055}) + + case 1: + value1056 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + value1057 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + result1233 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))), index*(56+22*4)) + var variant1221 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1221 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1221 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1064 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1064 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1059 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1059 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1058 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1058 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1058 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1058 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1059 = witTypes.Some[golem_core_types.NumericBound](variant1058) + default: + panic("unreachable") + } + var option1061 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1061 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1060 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1060 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1060 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1060 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1061 = witTypes.Some[golem_core_types.NumericBound](variant1060) + default: + panic("unreachable") + } + var option1063 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1063 = witTypes.None[string]() + case 1: + value1062 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1063 = witTypes.Some[string](value1062) + default: + panic("unreachable") + } + + option1064 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1059, option1061, option1063}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS8Type(option1064) + + case 3: + var option1071 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1071 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1066 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1066 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1065 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1065 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1065 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1065 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1066 = witTypes.Some[golem_core_types.NumericBound](variant1065) + default: + panic("unreachable") + } + var option1068 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1068 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1067 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1067 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1067 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1067 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1068 = witTypes.Some[golem_core_types.NumericBound](variant1067) + default: + panic("unreachable") + } + var option1070 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1070 = witTypes.None[string]() + case 1: + value1069 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1070 = witTypes.Some[string](value1069) + default: + panic("unreachable") + } + + option1071 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1066, option1068, option1070}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS16Type(option1071) + + case 4: + var option1078 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1078 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1073 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1073 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1072 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1072 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1072 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1072 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1073 = witTypes.Some[golem_core_types.NumericBound](variant1072) + default: + panic("unreachable") + } + var option1075 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1075 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1074 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1074 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1074 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1074 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1075 = witTypes.Some[golem_core_types.NumericBound](variant1074) + default: + panic("unreachable") + } + var option1077 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1077 = witTypes.None[string]() + case 1: + value1076 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1077 = witTypes.Some[string](value1076) + default: + panic("unreachable") + } + + option1078 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1073, option1075, option1077}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS32Type(option1078) + + case 5: + var option1085 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1085 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1080 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1080 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1079 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1079 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1079 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1079 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1080 = witTypes.Some[golem_core_types.NumericBound](variant1079) + default: + panic("unreachable") + } + var option1082 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1082 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1081 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1081 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1081 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1081 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1082 = witTypes.Some[golem_core_types.NumericBound](variant1081) + default: + panic("unreachable") + } + var option1084 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1084 = witTypes.None[string]() + case 1: + value1083 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1084 = witTypes.Some[string](value1083) + default: + panic("unreachable") + } + + option1085 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1080, option1082, option1084}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyS64Type(option1085) + + case 6: + var option1092 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1092 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1087 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1087 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1086 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1086 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1086 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1086 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1087 = witTypes.Some[golem_core_types.NumericBound](variant1086) + default: + panic("unreachable") + } + var option1089 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1089 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1088 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1088 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1088 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1088 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1089 = witTypes.Some[golem_core_types.NumericBound](variant1088) + default: + panic("unreachable") + } + var option1091 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1091 = witTypes.None[string]() + case 1: + value1090 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1091 = witTypes.Some[string](value1090) + default: + panic("unreachable") + } + + option1092 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1087, option1089, option1091}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU8Type(option1092) + + case 7: + var option1099 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1099 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1094 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1094 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1093 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1093 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1093 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1093 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1094 = witTypes.Some[golem_core_types.NumericBound](variant1093) + default: + panic("unreachable") + } + var option1096 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1096 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1095 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1095 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1095 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1095 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1096 = witTypes.Some[golem_core_types.NumericBound](variant1095) + default: + panic("unreachable") + } + var option1098 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1098 = witTypes.None[string]() + case 1: + value1097 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1098 = witTypes.Some[string](value1097) + default: + panic("unreachable") + } + + option1099 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1094, option1096, option1098}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU16Type(option1099) + + case 8: + var option1106 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1106 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1101 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1101 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1100 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1100 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1100 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1100 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1101 = witTypes.Some[golem_core_types.NumericBound](variant1100) + default: + panic("unreachable") + } + var option1103 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1103 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1102 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1102 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1102 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1102 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1103 = witTypes.Some[golem_core_types.NumericBound](variant1102) + default: + panic("unreachable") + } + var option1105 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1105 = witTypes.None[string]() + case 1: + value1104 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1105 = witTypes.Some[string](value1104) + default: + panic("unreachable") + } + + option1106 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1101, option1103, option1105}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU32Type(option1106) + + case 9: + var option1113 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1113 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1108 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1108 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1107 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1107 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1107 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1107 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1108 = witTypes.Some[golem_core_types.NumericBound](variant1107) + default: + panic("unreachable") + } + var option1110 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1110 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1109 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1109 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1109 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1109 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1110 = witTypes.Some[golem_core_types.NumericBound](variant1109) + default: + panic("unreachable") + } + var option1112 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1112 = witTypes.None[string]() + case 1: + value1111 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1112 = witTypes.Some[string](value1111) + default: + panic("unreachable") + } + + option1113 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1108, option1110, option1112}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyU64Type(option1113) + + case 10: + var option1120 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1120 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1115 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1115 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1114 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1114 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1114 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1114 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1115 = witTypes.Some[golem_core_types.NumericBound](variant1114) + default: + panic("unreachable") + } + var option1117 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1117 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1116 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1116 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1116 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1116 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1117 = witTypes.Some[golem_core_types.NumericBound](variant1116) + default: + panic("unreachable") + } + var option1119 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1119 = witTypes.None[string]() + case 1: + value1118 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1119 = witTypes.Some[string](value1118) + default: + panic("unreachable") + } + + option1120 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1115, option1117, option1119}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyF32Type(option1120) + + case 11: + var option1127 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1127 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1122 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1122 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1121 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1121 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1121 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1121 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1122 = witTypes.Some[golem_core_types.NumericBound](variant1121) + default: + panic("unreachable") + } + var option1124 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1124 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1123 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1123 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1123 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1123 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1124 = witTypes.Some[golem_core_types.NumericBound](variant1123) + default: + panic("unreachable") + } + var option1126 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1126 = witTypes.None[string]() + case 1: + value1125 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1126 = witTypes.Some[string](value1125) + default: + panic("unreachable") + } + + option1127 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1122, option1124, option1126}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyF64Type(option1127) + + case 12: + + variant1221 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1221 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1140 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1130 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1130 = witTypes.None[string]() + case 1: + value1129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1130 = witTypes.Some[string](value1129) + default: + panic("unreachable") + } + result1132 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1131 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1132 = append(result1132, value1131) + } + + result1134 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1133 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1134 = append(result1134, value1133) + } + + var option1136 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1136 = witTypes.None[string]() + case 1: + value1135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1136 = witTypes.Some[string](value1135) + default: + panic("unreachable") + } + var option1139 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1139 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1138 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1138 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1138 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1138 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1138 = golem_core_types.MakeRoleOther(value1137) + + default: + panic("unreachable") + } + + option1139 = witTypes.Some[golem_core_types.Role](variant1138) + default: + panic("unreachable") + } + + result1140 = append(result1140, golem_core_types.NamedFieldType{value1128, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1130, result1132, result1134, option1136, option1139}}) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyRecordType(result1140) + + case 15: + result1154 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1141 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1142 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1142 = witTypes.None[int32]() + case 1: + + option1142 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1144 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1144 = witTypes.None[string]() + case 1: + value1143 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1144 = witTypes.Some[string](value1143) + default: + panic("unreachable") + } + result1146 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1146 = append(result1146, value1145) + } + + result1148 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1147 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1148 = append(result1148, value1147) + } + + var option1150 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1150 = witTypes.None[string]() + case 1: + value1149 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1150 = witTypes.Some[string](value1149) + default: + panic("unreachable") + } + var option1153 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1153 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1152 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1152 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1152 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1152 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1152 = golem_core_types.MakeRoleOther(value1151) + + default: + panic("unreachable") + } + + option1153 = witTypes.Some[golem_core_types.Role](variant1152) + default: + panic("unreachable") + } + + result1154 = append(result1154, golem_core_types.VariantCaseType{value1141, option1142, golem_core_types.MetadataEnvelope{option1144, result1146, result1148, option1150, option1153}}) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyVariantType(result1154) + + case 16: + result1156 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1155 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1156 = append(result1156, value1155) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyEnumType(result1156) + + case 17: + result1158 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1157 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1158 = append(result1158, value1157) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1158) + + case 18: + result1159 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1159 = append(result1159, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyTupleType(result1159) + + case 19: + + variant1221 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1221 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1221 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1221 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1160 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1160 = witTypes.None[int32]() + case 1: + + option1160 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1161 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1161 = witTypes.None[int32]() + case 1: + + option1161 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1160, option1161}) + + case 24: + var option1164 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1164 = witTypes.None[[]string]() + case 1: + result1163 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1162 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1163 = append(result1163, value1162) + } + + option1164 = witTypes.Some[[]string](result1163) + default: + panic("unreachable") + } + var option1165 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1165 = witTypes.None[uint32]() + case 1: + + option1165 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1166 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1166 = witTypes.None[uint32]() + case 1: + + option1166 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1168 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1168 = witTypes.None[string]() + case 1: + value1167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1168 = witTypes.Some[string](value1167) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1164, option1165, option1166, option1168}) + + case 25: + var option1171 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1171 = witTypes.None[[]string]() + case 1: + result1170 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1170 = append(result1170, value1169) + } + + option1171 = witTypes.Some[[]string](result1170) + default: + panic("unreachable") + } + var option1172 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1172 = witTypes.None[uint32]() + case 1: + + option1172 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1173 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1173 = witTypes.None[uint32]() + case 1: + + option1173 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1171, option1172, option1173}) + + case 26: + var option1176 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1176 = witTypes.None[[]string]() + case 1: + result1175 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1175 = append(result1175, value1174) + } + + option1176 = witTypes.Some[[]string](result1175) + default: + panic("unreachable") + } + var option1179 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1179 = witTypes.None[[]string]() + case 1: + result1178 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1177 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1178 = append(result1178, value1177) + } + + option1179 = witTypes.Some[[]string](result1178) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1176, option1179}) + + case 27: + var option1182 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1182 = witTypes.None[[]string]() + case 1: + result1181 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1181 = append(result1181, value1180) + } + + option1182 = witTypes.Some[[]string](result1181) + default: + panic("unreachable") + } + var option1185 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1185 = witTypes.None[[]string]() + case 1: + result1184 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1183 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1184 = append(result1184, value1183) + } + + option1185 = witTypes.Some[[]string](result1184) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1182, option1185}) + + case 28: + + variant1221 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1221 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1188 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1187 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1188 = append(result1188, value1187) + } + + var option1190 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1190 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1189 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1190 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1189}) + default: + panic("unreachable") + } + var option1192 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1192 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1191 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1192 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1191}) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1186, result1188, option1190, option1192}) + + case 31: + result1214 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1202 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRulePrefix(value1194) + + case 1: + value1195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleSuffix(value1195) + + case 2: + value1196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleContains(value1196) + + case 3: + value1197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleRegex(value1197) + + case 4: + value1198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1200 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1200 = witTypes.None[string]() + case 1: + value1199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1200 = witTypes.Some[string](value1199) + default: + panic("unreachable") + } + + variant1202 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1198, option1200}) + + case 5: + value1201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1202 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1201) + + default: + panic("unreachable") + } + var option1204 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1204 = witTypes.None[string]() + case 1: + value1203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1204 = witTypes.Some[string](value1203) + default: + panic("unreachable") + } + result1206 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1205 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1206 = append(result1206, value1205) + } + + result1208 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1207 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1208 = append(result1208, value1207) + } + + var option1210 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1210 = witTypes.None[string]() + case 1: + value1209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1210 = witTypes.Some[string](value1209) + default: + panic("unreachable") + } + var option1213 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1213 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1212 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1212 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1212 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1212 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1211 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1212 = golem_core_types.MakeRoleOther(value1211) + + default: + panic("unreachable") + } + + option1213 = witTypes.Some[golem_core_types.Role](variant1212) + default: + panic("unreachable") + } + + result1214 = append(result1214, golem_core_types.UnionBranch{value1193, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1202, golem_core_types.MetadataEnvelope{option1204, result1206, result1208, option1210, option1213}}) + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1214}) + + case 32: + var option1216 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1216 = witTypes.None[string]() + case 1: + value1215 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1216 = witTypes.Some[string](value1215) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1216}) + + case 33: + var option1218 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1218 = witTypes.None[string]() + case 1: + value1217 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1218 = witTypes.Some[string](value1217) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1218}) + + case 34: + var option1219 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1219 = witTypes.None[int32]() + case 1: + + option1219 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyFutureType(option1219) + + case 35: + var option1220 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1220 = witTypes.None[int32]() + case 1: + + option1220 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1221 = golem_core_types.MakeSchemaTypeBodyStreamType(option1220) + + default: + panic("unreachable") + } + var option1223 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1223 = witTypes.None[string]() + case 1: + value1222 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1223 = witTypes.Some[string](value1222) + default: + panic("unreachable") + } + result1225 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1225 = append(result1225, value1224) + } + + result1227 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1227 = append(result1227, value1226) + } + + var option1229 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1229 = witTypes.None[string]() + case 1: + value1228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1229 = witTypes.Some[string](value1228) + default: + panic("unreachable") + } + var option1232 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1232 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1231 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1231 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1231 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1231 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1230 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1231 = golem_core_types.MakeRoleOther(value1230) + + default: + panic("unreachable") + } + + option1232 = witTypes.Some[golem_core_types.Role](variant1231) + default: + panic("unreachable") + } + + result1233 = append(result1233, golem_core_types.SchemaTypeNode{variant1221, golem_core_types.MetadataEnvelope{option1223, result1225, result1227, option1229, option1232}}) + } + + result1237 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))))), index*(6*4)) + value1234 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1236 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1236 = witTypes.None[string]() + case 1: + value1235 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1236 = witTypes.Some[string](value1235) + default: + panic("unreachable") + } + + result1237 = append(result1237, golem_core_types.SchemaTypeDef{value1234, option1236, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1261 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4))))), index*(16+4*4)) + var variant1260 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1260 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1260 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1260 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1260 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1260 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1260 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1260 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1260 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1260 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1260 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1260 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1260 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1238 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeStringValue(value1238) + + case 13: + result1239 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1239 = append(result1239, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeRecordValue(result1239) + + case 14: + var option1240 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1240 = witTypes.None[int32]() + case 1: + + option1240 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1240}) + + case 15: + + variant1260 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1241 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1241 = append(result1241, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1241) + + case 17: + result1242 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1242 = append(result1242, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeTupleValue(result1242) + + case 18: + result1243 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1243 = append(result1243, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeListValue(result1243) + + case 19: + result1244 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1244 = append(result1244, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1244) + + case 20: + result1245 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1245 = append(result1245, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1260 = golem_core_types.MakeSchemaValueNodeMapValue(result1245) + + case 21: + var option1246 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1246 = witTypes.None[int32]() + case 1: + + option1246 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeOptionValue(option1246) + + case 22: + var variant1249 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1247 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1247 = witTypes.None[int32]() + case 1: + + option1247 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1249 = golem_core_types.MakeResultValuePayloadOkValue(option1247) + + case 1: + var option1248 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1248 = witTypes.None[int32]() + case 1: + + option1248 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1249 = golem_core_types.MakeResultValuePayloadErrValue(option1248) + + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeResultValue(variant1249) + + case 23: + value1250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1252 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1252 = witTypes.None[string]() + case 1: + value1251 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1252 = witTypes.Some[string](value1251) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1250, option1252}) + + case 24: + value1253 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1255 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1255 = witTypes.None[string]() + case 1: + value1254 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1255 = witTypes.Some[string](value1254) + default: + panic("unreachable") + } + + variant1260 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1253, option1255}) + + case 25: + value1256 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodePathValue(value1256) + + case 26: + value1257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeUrlValue(value1257) + + case 27: + + variant1260 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1260 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1258 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1258}) + + case 30: + value1259 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1260 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1259, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1260 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1260 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1261 = append(result1261, variant1260) + } + + value1262 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 13*4)))) + result1264 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 14*4))))), index*(2*4)) + value1263 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1264 = append(result1264, value1263) + } + + result1276 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 17*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 17*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 16*4))))), index*(2*4)) + result1275 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1274 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1265 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1267 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1267 = witTypes.None[string]() + case 1: + value1266 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1267 = witTypes.Some[string](value1266) + default: + panic("unreachable") + } + var option1268 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1268 = witTypes.None[uint64]() + case 1: + + option1268 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1272 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1269 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1271 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1270 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1271 = golem_api_context.MakeAttributeValueString(value1270) + + default: + panic("unreachable") + } + + result1272 = append(result1272, golem_api_context.Attribute{value1269, variant1271}) + } + + variant1274 = MakeSpanDataLocalSpan(LocalSpanData{value1265, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1267, option1268, result1272, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1273 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1274 = MakeSpanDataExternalSpan(ExternalSpanData{value1273}) + + default: + panic("unreachable") + } + + result1275 = append(result1275, variant1274) + } + + result1276 = append(result1276, result1275) + } + + variant1280 = MakeAgentInvocationAgentMethodInvocation(AgentMethodInvocationParameters{value1056, value1057, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1233, result1237, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))}, golem_core_types.SchemaValueTree{result1261, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 11*4)))}}, value1262, result1264, result1276}) + + case 2: + + variant1280 = MakeAgentInvocationSaveSnapshot() + + case 3: + value1277 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + value1278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + + variant1280 = MakeAgentInvocationLoadSnapshot(LoadSnapshotParameters{SnapshotData{value1277, value1278}}) + + case 4: + value1279 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + + variant1280 = MakeAgentInvocationProcessOplogEntries(ProcessOplogEntriesParameters{value1279}) + + case 5: + + variant1280 = MakeAgentInvocationManualUpdate(ManualUpdateParameters{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryAgentInvocationStarted(AgentInvocationStartedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, variant1280}) + + case 5: + var variant1695 AgentInvocationResult + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + result1456 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant1444 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1444 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1444 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1287 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1287 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1282 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1282 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1281 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1281 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1281 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1281 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1282 = witTypes.Some[golem_core_types.NumericBound](variant1281) + default: + panic("unreachable") + } + var option1284 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1284 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1283 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1283 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1283 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1283 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1284 = witTypes.Some[golem_core_types.NumericBound](variant1283) + default: + panic("unreachable") + } + var option1286 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1286 = witTypes.None[string]() + case 1: + value1285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1286 = witTypes.Some[string](value1285) + default: + panic("unreachable") + } + + option1287 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1282, option1284, option1286}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS8Type(option1287) + + case 3: + var option1294 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1294 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1289 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1289 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1288 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1288 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1288 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1288 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1289 = witTypes.Some[golem_core_types.NumericBound](variant1288) + default: + panic("unreachable") + } + var option1291 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1291 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1290 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1290 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1290 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1290 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1291 = witTypes.Some[golem_core_types.NumericBound](variant1290) + default: + panic("unreachable") + } + var option1293 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1293 = witTypes.None[string]() + case 1: + value1292 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1293 = witTypes.Some[string](value1292) + default: + panic("unreachable") + } + + option1294 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1289, option1291, option1293}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS16Type(option1294) + + case 4: + var option1301 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1301 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1296 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1296 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1295 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1295 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1295 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1295 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1296 = witTypes.Some[golem_core_types.NumericBound](variant1295) + default: + panic("unreachable") + } + var option1298 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1298 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1297 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1297 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1297 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1297 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1298 = witTypes.Some[golem_core_types.NumericBound](variant1297) + default: + panic("unreachable") + } + var option1300 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1300 = witTypes.None[string]() + case 1: + value1299 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1300 = witTypes.Some[string](value1299) + default: + panic("unreachable") + } + + option1301 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1296, option1298, option1300}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS32Type(option1301) + + case 5: + var option1308 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1308 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1303 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1303 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1302 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1302 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1302 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1302 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1303 = witTypes.Some[golem_core_types.NumericBound](variant1302) + default: + panic("unreachable") + } + var option1305 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1305 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1304 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1304 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1304 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1304 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1305 = witTypes.Some[golem_core_types.NumericBound](variant1304) + default: + panic("unreachable") + } + var option1307 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1307 = witTypes.None[string]() + case 1: + value1306 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1307 = witTypes.Some[string](value1306) + default: + panic("unreachable") + } + + option1308 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1303, option1305, option1307}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyS64Type(option1308) + + case 6: + var option1315 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1315 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1310 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1310 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1309 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1309 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1309 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1309 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1310 = witTypes.Some[golem_core_types.NumericBound](variant1309) + default: + panic("unreachable") + } + var option1312 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1312 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1311 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1311 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1311 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1311 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1312 = witTypes.Some[golem_core_types.NumericBound](variant1311) + default: + panic("unreachable") + } + var option1314 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1314 = witTypes.None[string]() + case 1: + value1313 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1314 = witTypes.Some[string](value1313) + default: + panic("unreachable") + } + + option1315 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1310, option1312, option1314}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU8Type(option1315) + + case 7: + var option1322 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1322 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1317 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1317 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1316 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1316 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1316 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1316 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1317 = witTypes.Some[golem_core_types.NumericBound](variant1316) + default: + panic("unreachable") + } + var option1319 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1319 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1318 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1318 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1318 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1318 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1319 = witTypes.Some[golem_core_types.NumericBound](variant1318) + default: + panic("unreachable") + } + var option1321 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1321 = witTypes.None[string]() + case 1: + value1320 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1321 = witTypes.Some[string](value1320) + default: + panic("unreachable") + } + + option1322 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1317, option1319, option1321}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU16Type(option1322) + + case 8: + var option1329 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1329 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1324 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1324 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1323 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1323 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1323 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1323 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1324 = witTypes.Some[golem_core_types.NumericBound](variant1323) + default: + panic("unreachable") + } + var option1326 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1326 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1325 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1325 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1325 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1325 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1326 = witTypes.Some[golem_core_types.NumericBound](variant1325) + default: + panic("unreachable") + } + var option1328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1328 = witTypes.None[string]() + case 1: + value1327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1328 = witTypes.Some[string](value1327) + default: + panic("unreachable") + } + + option1329 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1324, option1326, option1328}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU32Type(option1329) + + case 9: + var option1336 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1336 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1331 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1331 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1330 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1330 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1330 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1330 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1331 = witTypes.Some[golem_core_types.NumericBound](variant1330) + default: + panic("unreachable") + } + var option1333 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1333 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1332 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1332 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1332 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1332 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1333 = witTypes.Some[golem_core_types.NumericBound](variant1332) + default: + panic("unreachable") + } + var option1335 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1335 = witTypes.None[string]() + case 1: + value1334 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1335 = witTypes.Some[string](value1334) + default: + panic("unreachable") + } + + option1336 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1331, option1333, option1335}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyU64Type(option1336) + + case 10: + var option1343 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1343 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1338 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1338 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1337 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1337 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1337 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1337 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1338 = witTypes.Some[golem_core_types.NumericBound](variant1337) + default: + panic("unreachable") + } + var option1340 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1340 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1339 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1339 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1339 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1339 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1340 = witTypes.Some[golem_core_types.NumericBound](variant1339) + default: + panic("unreachable") + } + var option1342 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1342 = witTypes.None[string]() + case 1: + value1341 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1342 = witTypes.Some[string](value1341) + default: + panic("unreachable") + } + + option1343 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1338, option1340, option1342}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyF32Type(option1343) + + case 11: + var option1350 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1350 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1345 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1345 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1344 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1344 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1344 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1344 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1345 = witTypes.Some[golem_core_types.NumericBound](variant1344) + default: + panic("unreachable") + } + var option1347 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1347 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1346 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1346 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1346 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1346 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1347 = witTypes.Some[golem_core_types.NumericBound](variant1346) + default: + panic("unreachable") + } + var option1349 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1349 = witTypes.None[string]() + case 1: + value1348 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1349 = witTypes.Some[string](value1348) + default: + panic("unreachable") + } + + option1350 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1345, option1347, option1349}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyF64Type(option1350) + + case 12: + + variant1444 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1444 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1363 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1351 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1353 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1353 = witTypes.None[string]() + case 1: + value1352 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1353 = witTypes.Some[string](value1352) + default: + panic("unreachable") + } + result1355 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1355 = append(result1355, value1354) + } + + result1357 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1356 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1357 = append(result1357, value1356) + } + + var option1359 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1359 = witTypes.None[string]() + case 1: + value1358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1359 = witTypes.Some[string](value1358) + default: + panic("unreachable") + } + var option1362 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1362 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1361 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1361 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1361 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1361 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1360 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1361 = golem_core_types.MakeRoleOther(value1360) + + default: + panic("unreachable") + } + + option1362 = witTypes.Some[golem_core_types.Role](variant1361) + default: + panic("unreachable") + } + + result1363 = append(result1363, golem_core_types.NamedFieldType{value1351, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1353, result1355, result1357, option1359, option1362}}) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyRecordType(result1363) + + case 15: + result1377 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1364 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1365 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1365 = witTypes.None[int32]() + case 1: + + option1365 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1367 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1367 = witTypes.None[string]() + case 1: + value1366 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1367 = witTypes.Some[string](value1366) + default: + panic("unreachable") + } + result1369 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1368 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1369 = append(result1369, value1368) + } + + result1371 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1370 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1371 = append(result1371, value1370) + } + + var option1373 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1373 = witTypes.None[string]() + case 1: + value1372 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1373 = witTypes.Some[string](value1372) + default: + panic("unreachable") + } + var option1376 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1376 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1375 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1375 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1375 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1375 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1374 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1375 = golem_core_types.MakeRoleOther(value1374) + + default: + panic("unreachable") + } + + option1376 = witTypes.Some[golem_core_types.Role](variant1375) + default: + panic("unreachable") + } + + result1377 = append(result1377, golem_core_types.VariantCaseType{value1364, option1365, golem_core_types.MetadataEnvelope{option1367, result1369, result1371, option1373, option1376}}) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyVariantType(result1377) + + case 16: + result1379 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1379 = append(result1379, value1378) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyEnumType(result1379) + + case 17: + result1381 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1380 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1381 = append(result1381, value1380) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1381) + + case 18: + result1382 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1382 = append(result1382, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyTupleType(result1382) + + case 19: + + variant1444 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1444 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1444 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1444 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1383 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1383 = witTypes.None[int32]() + case 1: + + option1383 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1384 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1384 = witTypes.None[int32]() + case 1: + + option1384 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1383, option1384}) + + case 24: + var option1387 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1387 = witTypes.None[[]string]() + case 1: + result1386 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1385 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1386 = append(result1386, value1385) + } + + option1387 = witTypes.Some[[]string](result1386) + default: + panic("unreachable") + } + var option1388 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1388 = witTypes.None[uint32]() + case 1: + + option1388 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1389 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1389 = witTypes.None[uint32]() + case 1: + + option1389 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1391 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1391 = witTypes.None[string]() + case 1: + value1390 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1391 = witTypes.Some[string](value1390) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1387, option1388, option1389, option1391}) + + case 25: + var option1394 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1394 = witTypes.None[[]string]() + case 1: + result1393 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1392 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1393 = append(result1393, value1392) + } + + option1394 = witTypes.Some[[]string](result1393) + default: + panic("unreachable") + } + var option1395 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1395 = witTypes.None[uint32]() + case 1: + + option1395 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1396 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1396 = witTypes.None[uint32]() + case 1: + + option1396 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1394, option1395, option1396}) + + case 26: + var option1399 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1399 = witTypes.None[[]string]() + case 1: + result1398 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1397 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1398 = append(result1398, value1397) + } + + option1399 = witTypes.Some[[]string](result1398) + default: + panic("unreachable") + } + var option1402 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1402 = witTypes.None[[]string]() + case 1: + result1401 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1400 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1401 = append(result1401, value1400) + } + + option1402 = witTypes.Some[[]string](result1401) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1399, option1402}) + + case 27: + var option1405 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1405 = witTypes.None[[]string]() + case 1: + result1404 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1403 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1404 = append(result1404, value1403) + } + + option1405 = witTypes.Some[[]string](result1404) + default: + panic("unreachable") + } + var option1408 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1408 = witTypes.None[[]string]() + case 1: + result1407 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1407 = append(result1407, value1406) + } + + option1408 = witTypes.Some[[]string](result1407) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1405, option1408}) + + case 28: + + variant1444 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1444 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1409 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1411 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1411 = append(result1411, value1410) + } + + var option1413 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1413 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1413 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1412}) + default: + panic("unreachable") + } + var option1415 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1415 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1415 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1414}) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1409, result1411, option1413, option1415}) + + case 31: + result1437 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1425 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1417 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRulePrefix(value1417) + + case 1: + value1418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleSuffix(value1418) + + case 2: + value1419 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleContains(value1419) + + case 3: + value1420 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleRegex(value1420) + + case 4: + value1421 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1423 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1423 = witTypes.None[string]() + case 1: + value1422 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1423 = witTypes.Some[string](value1422) + default: + panic("unreachable") + } + + variant1425 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1421, option1423}) + + case 5: + value1424 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1425 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1424) + + default: + panic("unreachable") + } + var option1427 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1427 = witTypes.None[string]() + case 1: + value1426 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1427 = witTypes.Some[string](value1426) + default: + panic("unreachable") + } + result1429 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1428 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1429 = append(result1429, value1428) + } + + result1431 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1430 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1431 = append(result1431, value1430) + } + + var option1433 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1433 = witTypes.None[string]() + case 1: + value1432 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1433 = witTypes.Some[string](value1432) + default: + panic("unreachable") + } + var option1436 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1436 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1435 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1435 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1435 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1435 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1434 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1435 = golem_core_types.MakeRoleOther(value1434) + + default: + panic("unreachable") + } + + option1436 = witTypes.Some[golem_core_types.Role](variant1435) + default: + panic("unreachable") + } + + result1437 = append(result1437, golem_core_types.UnionBranch{value1416, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1425, golem_core_types.MetadataEnvelope{option1427, result1429, result1431, option1433, option1436}}) + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1437}) + + case 32: + var option1439 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1439 = witTypes.None[string]() + case 1: + value1438 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1439 = witTypes.Some[string](value1438) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1439}) + + case 33: + var option1441 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1441 = witTypes.None[string]() + case 1: + value1440 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1441 = witTypes.Some[string](value1440) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1441}) + + case 34: + var option1442 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1442 = witTypes.None[int32]() + case 1: + + option1442 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyFutureType(option1442) + + case 35: + var option1443 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1443 = witTypes.None[int32]() + case 1: + + option1443 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1444 = golem_core_types.MakeSchemaTypeBodyStreamType(option1443) + + default: + panic("unreachable") + } + var option1446 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1446 = witTypes.None[string]() + case 1: + value1445 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1446 = witTypes.Some[string](value1445) + default: + panic("unreachable") + } + result1448 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1447 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1448 = append(result1448, value1447) + } + + result1450 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1449 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1450 = append(result1450, value1449) + } + + var option1452 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1452 = witTypes.None[string]() + case 1: + value1451 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1452 = witTypes.Some[string](value1451) + default: + panic("unreachable") + } + var option1455 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1455 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1454 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1454 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1454 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1454 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1453 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1454 = golem_core_types.MakeRoleOther(value1453) + + default: + panic("unreachable") + } + + option1455 = witTypes.Some[golem_core_types.Role](variant1454) + default: + panic("unreachable") + } + + result1456 = append(result1456, golem_core_types.SchemaTypeNode{variant1444, golem_core_types.MetadataEnvelope{option1446, result1448, result1450, option1452, option1455}}) + } + + result1460 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value1457 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1459 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1459 = witTypes.None[string]() + case 1: + value1458 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1459 = witTypes.Some[string](value1458) + default: + panic("unreachable") + } + + result1460 = append(result1460, golem_core_types.SchemaTypeDef{value1457, option1459, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1484 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant1483 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1483 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1483 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1483 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1483 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1483 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1483 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1483 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1483 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1483 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1483 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1483 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1483 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1461 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeStringValue(value1461) + + case 13: + result1462 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1462 = append(result1462, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeRecordValue(result1462) + + case 14: + var option1463 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1463 = witTypes.None[int32]() + case 1: + + option1463 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1463}) + + case 15: + + variant1483 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1464 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1464 = append(result1464, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1464) + + case 17: + result1465 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1465 = append(result1465, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeTupleValue(result1465) + + case 18: + result1466 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1466 = append(result1466, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeListValue(result1466) + + case 19: + result1467 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1467 = append(result1467, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1467) + + case 20: + result1468 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1468 = append(result1468, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1483 = golem_core_types.MakeSchemaValueNodeMapValue(result1468) + + case 21: + var option1469 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1469 = witTypes.None[int32]() + case 1: + + option1469 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeOptionValue(option1469) + + case 22: + var variant1472 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1470 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1470 = witTypes.None[int32]() + case 1: + + option1470 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1472 = golem_core_types.MakeResultValuePayloadOkValue(option1470) + + case 1: + var option1471 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1471 = witTypes.None[int32]() + case 1: + + option1471 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1472 = golem_core_types.MakeResultValuePayloadErrValue(option1471) + + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeResultValue(variant1472) + + case 23: + value1473 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1475 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1475 = witTypes.None[string]() + case 1: + value1474 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1475 = witTypes.Some[string](value1474) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1473, option1475}) + + case 24: + value1476 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1478 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1478 = witTypes.None[string]() + case 1: + value1477 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1478 = witTypes.Some[string](value1477) + default: + panic("unreachable") + } + + variant1483 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1476, option1478}) + + case 25: + value1479 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodePathValue(value1479) + + case 26: + value1480 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeUrlValue(value1480) + + case 27: + + variant1483 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1483 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1481 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1481}) + + case 30: + value1482 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1483 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1482, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1483 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1483 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1484 = append(result1484, variant1483) + } + + variant1695 = MakeAgentInvocationResultAgentInitialization(AgentInvocationOutputParameters{golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1456, result1460, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result1484, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}}) + + case 1: + result1660 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4))))), index*(56+22*4)) + var variant1648 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1648 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1648 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1491 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1491 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1486 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1486 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1485 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1485 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1485 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1485 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1486 = witTypes.Some[golem_core_types.NumericBound](variant1485) + default: + panic("unreachable") + } + var option1488 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1488 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1487 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1487 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1487 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1487 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1488 = witTypes.Some[golem_core_types.NumericBound](variant1487) + default: + panic("unreachable") + } + var option1490 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1490 = witTypes.None[string]() + case 1: + value1489 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1490 = witTypes.Some[string](value1489) + default: + panic("unreachable") + } + + option1491 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1486, option1488, option1490}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS8Type(option1491) + + case 3: + var option1498 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1498 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1493 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1493 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1492 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1492 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1492 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1492 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1493 = witTypes.Some[golem_core_types.NumericBound](variant1492) + default: + panic("unreachable") + } + var option1495 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1495 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1494 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1494 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1494 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1494 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1495 = witTypes.Some[golem_core_types.NumericBound](variant1494) + default: + panic("unreachable") + } + var option1497 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1497 = witTypes.None[string]() + case 1: + value1496 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1497 = witTypes.Some[string](value1496) + default: + panic("unreachable") + } + + option1498 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1493, option1495, option1497}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS16Type(option1498) + + case 4: + var option1505 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1505 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1500 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1500 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1499 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1499 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1499 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1499 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1500 = witTypes.Some[golem_core_types.NumericBound](variant1499) + default: + panic("unreachable") + } + var option1502 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1502 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1501 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1501 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1501 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1501 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1502 = witTypes.Some[golem_core_types.NumericBound](variant1501) + default: + panic("unreachable") + } + var option1504 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1504 = witTypes.None[string]() + case 1: + value1503 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1504 = witTypes.Some[string](value1503) + default: + panic("unreachable") + } + + option1505 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1500, option1502, option1504}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS32Type(option1505) + + case 5: + var option1512 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1512 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1507 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1507 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1506 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1506 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1506 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1506 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1507 = witTypes.Some[golem_core_types.NumericBound](variant1506) + default: + panic("unreachable") + } + var option1509 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1509 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1508 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1508 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1508 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1508 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1509 = witTypes.Some[golem_core_types.NumericBound](variant1508) + default: + panic("unreachable") + } + var option1511 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1511 = witTypes.None[string]() + case 1: + value1510 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1511 = witTypes.Some[string](value1510) + default: + panic("unreachable") + } + + option1512 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1507, option1509, option1511}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyS64Type(option1512) + + case 6: + var option1519 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1519 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1514 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1514 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1513 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1513 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1513 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1513 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1514 = witTypes.Some[golem_core_types.NumericBound](variant1513) + default: + panic("unreachable") + } + var option1516 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1516 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1515 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1515 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1515 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1515 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1516 = witTypes.Some[golem_core_types.NumericBound](variant1515) + default: + panic("unreachable") + } + var option1518 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1518 = witTypes.None[string]() + case 1: + value1517 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1518 = witTypes.Some[string](value1517) + default: + panic("unreachable") + } + + option1519 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1514, option1516, option1518}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU8Type(option1519) + + case 7: + var option1526 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1526 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1521 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1521 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1520 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1520 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1520 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1520 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1521 = witTypes.Some[golem_core_types.NumericBound](variant1520) + default: + panic("unreachable") + } + var option1523 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1523 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1522 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1522 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1522 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1522 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1523 = witTypes.Some[golem_core_types.NumericBound](variant1522) + default: + panic("unreachable") + } + var option1525 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1525 = witTypes.None[string]() + case 1: + value1524 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1525 = witTypes.Some[string](value1524) + default: + panic("unreachable") + } + + option1526 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1521, option1523, option1525}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU16Type(option1526) + + case 8: + var option1533 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1533 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1528 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1528 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1527 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1527 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1527 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1527 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1528 = witTypes.Some[golem_core_types.NumericBound](variant1527) + default: + panic("unreachable") + } + var option1530 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1530 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1529 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1529 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1529 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1529 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1530 = witTypes.Some[golem_core_types.NumericBound](variant1529) + default: + panic("unreachable") + } + var option1532 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1532 = witTypes.None[string]() + case 1: + value1531 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1532 = witTypes.Some[string](value1531) + default: + panic("unreachable") + } + + option1533 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1528, option1530, option1532}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU32Type(option1533) + + case 9: + var option1540 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1540 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1535 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1535 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1534 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1534 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1534 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1534 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1535 = witTypes.Some[golem_core_types.NumericBound](variant1534) + default: + panic("unreachable") + } + var option1537 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1537 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1536 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1536 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1536 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1536 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1537 = witTypes.Some[golem_core_types.NumericBound](variant1536) + default: + panic("unreachable") + } + var option1539 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1539 = witTypes.None[string]() + case 1: + value1538 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1539 = witTypes.Some[string](value1538) + default: + panic("unreachable") + } + + option1540 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1535, option1537, option1539}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyU64Type(option1540) + + case 10: + var option1547 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1547 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1542 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1542 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1541 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1541 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1541 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1541 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1542 = witTypes.Some[golem_core_types.NumericBound](variant1541) + default: + panic("unreachable") + } + var option1544 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1544 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1543 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1543 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1543 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1543 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1544 = witTypes.Some[golem_core_types.NumericBound](variant1543) + default: + panic("unreachable") + } + var option1546 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1546 = witTypes.None[string]() + case 1: + value1545 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1546 = witTypes.Some[string](value1545) + default: + panic("unreachable") + } + + option1547 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1542, option1544, option1546}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyF32Type(option1547) + + case 11: + var option1554 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1554 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1549 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1549 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1548 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1548 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1548 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1548 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1549 = witTypes.Some[golem_core_types.NumericBound](variant1548) + default: + panic("unreachable") + } + var option1551 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1551 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1550 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1550 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1550 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1550 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1551 = witTypes.Some[golem_core_types.NumericBound](variant1550) + default: + panic("unreachable") + } + var option1553 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1553 = witTypes.None[string]() + case 1: + value1552 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1553 = witTypes.Some[string](value1552) + default: + panic("unreachable") + } + + option1554 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1549, option1551, option1553}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyF64Type(option1554) + + case 12: + + variant1648 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1648 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1567 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1555 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1557 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1557 = witTypes.None[string]() + case 1: + value1556 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1557 = witTypes.Some[string](value1556) + default: + panic("unreachable") + } + result1559 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1558 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1559 = append(result1559, value1558) + } + + result1561 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1560 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1561 = append(result1561, value1560) + } + + var option1563 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1563 = witTypes.None[string]() + case 1: + value1562 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1563 = witTypes.Some[string](value1562) + default: + panic("unreachable") + } + var option1566 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1566 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1565 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1565 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1565 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1565 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1564 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1565 = golem_core_types.MakeRoleOther(value1564) + + default: + panic("unreachable") + } + + option1566 = witTypes.Some[golem_core_types.Role](variant1565) + default: + panic("unreachable") + } + + result1567 = append(result1567, golem_core_types.NamedFieldType{value1555, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1557, result1559, result1561, option1563, option1566}}) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyRecordType(result1567) + + case 15: + result1581 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1568 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1569 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1569 = witTypes.None[int32]() + case 1: + + option1569 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1571 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1571 = witTypes.None[string]() + case 1: + value1570 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1571 = witTypes.Some[string](value1570) + default: + panic("unreachable") + } + result1573 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1572 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1573 = append(result1573, value1572) + } + + result1575 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1574 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1575 = append(result1575, value1574) + } + + var option1577 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1577 = witTypes.None[string]() + case 1: + value1576 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1577 = witTypes.Some[string](value1576) + default: + panic("unreachable") + } + var option1580 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1580 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1579 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1579 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1579 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1579 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1578 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1579 = golem_core_types.MakeRoleOther(value1578) + + default: + panic("unreachable") + } + + option1580 = witTypes.Some[golem_core_types.Role](variant1579) + default: + panic("unreachable") + } + + result1581 = append(result1581, golem_core_types.VariantCaseType{value1568, option1569, golem_core_types.MetadataEnvelope{option1571, result1573, result1575, option1577, option1580}}) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyVariantType(result1581) + + case 16: + result1583 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1582 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1583 = append(result1583, value1582) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyEnumType(result1583) + + case 17: + result1585 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1584 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1585 = append(result1585, value1584) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1585) + + case 18: + result1586 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1586 = append(result1586, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyTupleType(result1586) + + case 19: + + variant1648 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1648 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1648 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1648 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1587 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1587 = witTypes.None[int32]() + case 1: + + option1587 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1588 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1588 = witTypes.None[int32]() + case 1: + + option1588 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1587, option1588}) + + case 24: + var option1591 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1591 = witTypes.None[[]string]() + case 1: + result1590 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1589 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1590 = append(result1590, value1589) + } + + option1591 = witTypes.Some[[]string](result1590) + default: + panic("unreachable") + } + var option1592 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1592 = witTypes.None[uint32]() + case 1: + + option1592 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1593 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1593 = witTypes.None[uint32]() + case 1: + + option1593 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1595 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1595 = witTypes.None[string]() + case 1: + value1594 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1595 = witTypes.Some[string](value1594) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1591, option1592, option1593, option1595}) + + case 25: + var option1598 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1598 = witTypes.None[[]string]() + case 1: + result1597 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1596 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1597 = append(result1597, value1596) + } + + option1598 = witTypes.Some[[]string](result1597) + default: + panic("unreachable") + } + var option1599 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1599 = witTypes.None[uint32]() + case 1: + + option1599 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1600 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1600 = witTypes.None[uint32]() + case 1: + + option1600 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1598, option1599, option1600}) + + case 26: + var option1603 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1603 = witTypes.None[[]string]() + case 1: + result1602 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1601 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1602 = append(result1602, value1601) + } + + option1603 = witTypes.Some[[]string](result1602) + default: + panic("unreachable") + } + var option1606 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1606 = witTypes.None[[]string]() + case 1: + result1605 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1604 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1605 = append(result1605, value1604) + } + + option1606 = witTypes.Some[[]string](result1605) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1603, option1606}) + + case 27: + var option1609 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1609 = witTypes.None[[]string]() + case 1: + result1608 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1607 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1608 = append(result1608, value1607) + } + + option1609 = witTypes.Some[[]string](result1608) + default: + panic("unreachable") + } + var option1612 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1612 = witTypes.None[[]string]() + case 1: + result1611 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1610 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1611 = append(result1611, value1610) + } + + option1612 = witTypes.Some[[]string](result1611) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1609, option1612}) + + case 28: + + variant1648 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1648 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1613 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1615 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1614 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1615 = append(result1615, value1614) + } + + var option1617 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1617 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1616 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1617 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1616}) + default: + panic("unreachable") + } + var option1619 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1619 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1618 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1619 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1618}) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1613, result1615, option1617, option1619}) + + case 31: + result1641 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1620 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1629 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1621 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRulePrefix(value1621) + + case 1: + value1622 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleSuffix(value1622) + + case 2: + value1623 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleContains(value1623) + + case 3: + value1624 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleRegex(value1624) + + case 4: + value1625 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1627 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1627 = witTypes.None[string]() + case 1: + value1626 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1627 = witTypes.Some[string](value1626) + default: + panic("unreachable") + } + + variant1629 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1625, option1627}) + + case 5: + value1628 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1629 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1628) + + default: + panic("unreachable") + } + var option1631 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1631 = witTypes.None[string]() + case 1: + value1630 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1631 = witTypes.Some[string](value1630) + default: + panic("unreachable") + } + result1633 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1632 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1633 = append(result1633, value1632) + } + + result1635 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1634 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1635 = append(result1635, value1634) + } + + var option1637 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1637 = witTypes.None[string]() + case 1: + value1636 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1637 = witTypes.Some[string](value1636) + default: + panic("unreachable") + } + var option1640 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1640 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1639 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1639 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1639 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1639 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1638 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1639 = golem_core_types.MakeRoleOther(value1638) + + default: + panic("unreachable") + } + + option1640 = witTypes.Some[golem_core_types.Role](variant1639) + default: + panic("unreachable") + } + + result1641 = append(result1641, golem_core_types.UnionBranch{value1620, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1629, golem_core_types.MetadataEnvelope{option1631, result1633, result1635, option1637, option1640}}) + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1641}) + + case 32: + var option1643 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1643 = witTypes.None[string]() + case 1: + value1642 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1643 = witTypes.Some[string](value1642) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1643}) + + case 33: + var option1645 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1645 = witTypes.None[string]() + case 1: + value1644 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1645 = witTypes.Some[string](value1644) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1645}) + + case 34: + var option1646 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1646 = witTypes.None[int32]() + case 1: + + option1646 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyFutureType(option1646) + + case 35: + var option1647 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1647 = witTypes.None[int32]() + case 1: + + option1647 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1648 = golem_core_types.MakeSchemaTypeBodyStreamType(option1647) + + default: + panic("unreachable") + } + var option1650 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1650 = witTypes.None[string]() + case 1: + value1649 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1650 = witTypes.Some[string](value1649) + default: + panic("unreachable") + } + result1652 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1651 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1652 = append(result1652, value1651) + } + + result1654 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1653 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1654 = append(result1654, value1653) + } + + var option1656 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1656 = witTypes.None[string]() + case 1: + value1655 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1656 = witTypes.Some[string](value1655) + default: + panic("unreachable") + } + var option1659 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1659 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1658 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1658 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1658 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1658 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1657 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1658 = golem_core_types.MakeRoleOther(value1657) + + default: + panic("unreachable") + } + + option1659 = witTypes.Some[golem_core_types.Role](variant1658) + default: + panic("unreachable") + } + + result1660 = append(result1660, golem_core_types.SchemaTypeNode{variant1648, golem_core_types.MetadataEnvelope{option1650, result1652, result1654, option1656, option1659}}) + } + + result1664 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(6*4)) + value1661 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1663 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1663 = witTypes.None[string]() + case 1: + value1662 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1663 = witTypes.Some[string](value1662) + default: + panic("unreachable") + } + + result1664 = append(result1664, golem_core_types.SchemaTypeDef{value1661, option1663, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1688 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))))), index*(16+4*4)) + var variant1687 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1687 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1687 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1687 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1687 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1687 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1687 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1687 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1687 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1687 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1687 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1687 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1687 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1665 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeStringValue(value1665) + + case 13: + result1666 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1666 = append(result1666, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeRecordValue(result1666) + + case 14: + var option1667 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1667 = witTypes.None[int32]() + case 1: + + option1667 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1667}) + + case 15: + + variant1687 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1668 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1668 = append(result1668, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1668) + + case 17: + result1669 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1669 = append(result1669, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeTupleValue(result1669) + + case 18: + result1670 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1670 = append(result1670, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeListValue(result1670) + + case 19: + result1671 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1671 = append(result1671, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1671) + + case 20: + result1672 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1672 = append(result1672, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1687 = golem_core_types.MakeSchemaValueNodeMapValue(result1672) + + case 21: + var option1673 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1673 = witTypes.None[int32]() + case 1: + + option1673 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeOptionValue(option1673) + + case 22: + var variant1676 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1674 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1674 = witTypes.None[int32]() + case 1: + + option1674 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1676 = golem_core_types.MakeResultValuePayloadOkValue(option1674) + + case 1: + var option1675 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1675 = witTypes.None[int32]() + case 1: + + option1675 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1676 = golem_core_types.MakeResultValuePayloadErrValue(option1675) + + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeResultValue(variant1676) + + case 23: + value1677 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1679 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1679 = witTypes.None[string]() + case 1: + value1678 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1679 = witTypes.Some[string](value1678) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1677, option1679}) + + case 24: + value1680 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1682 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1682 = witTypes.None[string]() + case 1: + value1681 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1682 = witTypes.Some[string](value1681) + default: + panic("unreachable") + } + + variant1687 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1680, option1682}) + + case 25: + value1683 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodePathValue(value1683) + + case 26: + value1684 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeUrlValue(value1684) + + case 27: + + variant1687 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1687 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1685 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1685}) + + case 30: + value1686 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1687 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1686, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1687 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1687 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1688 = append(result1688, variant1687) + } + + variant1695 = MakeAgentInvocationResultAgentMethod(AgentInvocationOutputParameters{golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1660, result1664, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))}, golem_core_types.SchemaValueTree{result1688, *(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4)))}}}) + + case 2: + + variant1695 = MakeAgentInvocationResultManualUpdate() + + case 3: + var option1690 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) { + case 0: + + option1690 = witTypes.None[string]() + case 1: + value1689 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + option1690 = witTypes.Some[string](value1689) + default: + panic("unreachable") + } + + variant1695 = MakeAgentInvocationResultLoadSnapshot(FallibleResultParameters{option1690}) + + case 4: + value1691 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + value1692 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + + variant1695 = MakeAgentInvocationResultSaveSnapshot(SaveSnapshotResultParameters{SnapshotData{value1691, value1692}}) + + case 5: + var option1694 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) { + case 0: + + option1694 = witTypes.None[string]() + case 1: + value1693 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + option1694 = witTypes.Some[string](value1693) + default: + panic("unreachable") + } + + variant1695 = MakeAgentInvocationResultProcessOplogEntries(FallibleResultParameters{option1694}) + + default: + panic("unreachable") + } + var option1697 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))) { + case 0: + + option1697 = witTypes.None[string]() + case 1: + value1696 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 11*4)))) + + option1697 = witTypes.Some[string](value1696) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryAgentInvocationFinished(AgentInvocationFinishedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, variant1695, option1697, *(*int64)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 12*4))))}) + + case 6: + + variant2471 = MakePublicOplogEntrySuspend(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 7: + value1698 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + var option1701 witTypes.Option[RetryPolicyState] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) { + case 0: + + option1701 = witTypes.None[RetryPolicyState]() + case 1: + result1700 := make([]StateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))), index*16) + var variant1699 StateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1699 = MakeStateNodeCounter(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)))) + + case 1: + + variant1699 = MakeStateNodeTerminal() + + case 2: + + variant1699 = MakeStateNodeWrapper(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4))) + + case 3: + + variant1699 = MakeStateNodeCountBox(CountBoxState{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 4: + + variant1699 = MakeStateNodeAndThen(AndThenState{*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) != 0)}) + + case 5: + + variant1699 = MakeStateNodePair(PairState{*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 8))}) + + default: + panic("unreachable") + } + + result1700 = append(result1700, variant1699) + } + + option1701 = witTypes.Some[RetryPolicyState](RetryPolicyState{result1700}) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryError(ErrorParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, value1698, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))), (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) != 0), option1701}) + + case 8: + + variant2471 = MakePublicOplogEntryNoOp(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 9: + + variant2471 = MakePublicOplogEntryJump(JumpParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, OplogRegion{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}) + + case 10: + + variant2471 = MakePublicOplogEntryInterrupted(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 11: + + variant2471 = MakePublicOplogEntryExited(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 12: + + variant2471 = MakePublicOplogEntryBeginAtomicRegion(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 13: + + variant2471 = MakePublicOplogEntryEndAtomicRegion(EndAtomicRegionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + case 14: + var variant2146 AgentInvocation + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + value1702 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + result1878 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4))))), index*(56+22*4)) + var variant1866 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1866 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant1866 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1709 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1709 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1704 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1704 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1703 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1703 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1703 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1703 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1704 = witTypes.Some[golem_core_types.NumericBound](variant1703) + default: + panic("unreachable") + } + var option1706 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1706 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1705 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1705 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1705 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1705 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1706 = witTypes.Some[golem_core_types.NumericBound](variant1705) + default: + panic("unreachable") + } + var option1708 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1708 = witTypes.None[string]() + case 1: + value1707 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1708 = witTypes.Some[string](value1707) + default: + panic("unreachable") + } + + option1709 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1704, option1706, option1708}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS8Type(option1709) + + case 3: + var option1716 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1716 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1711 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1711 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1710 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1710 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1710 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1710 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1711 = witTypes.Some[golem_core_types.NumericBound](variant1710) + default: + panic("unreachable") + } + var option1713 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1713 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1712 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1712 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1712 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1712 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1713 = witTypes.Some[golem_core_types.NumericBound](variant1712) + default: + panic("unreachable") + } + var option1715 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1715 = witTypes.None[string]() + case 1: + value1714 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1715 = witTypes.Some[string](value1714) + default: + panic("unreachable") + } + + option1716 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1711, option1713, option1715}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS16Type(option1716) + + case 4: + var option1723 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1723 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1718 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1718 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1717 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1717 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1717 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1717 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1718 = witTypes.Some[golem_core_types.NumericBound](variant1717) + default: + panic("unreachable") + } + var option1720 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1720 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1719 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1719 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1719 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1719 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1720 = witTypes.Some[golem_core_types.NumericBound](variant1719) + default: + panic("unreachable") + } + var option1722 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1722 = witTypes.None[string]() + case 1: + value1721 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1722 = witTypes.Some[string](value1721) + default: + panic("unreachable") + } + + option1723 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1718, option1720, option1722}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS32Type(option1723) + + case 5: + var option1730 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1730 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1725 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1725 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1724 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1724 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1724 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1724 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1725 = witTypes.Some[golem_core_types.NumericBound](variant1724) + default: + panic("unreachable") + } + var option1727 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1727 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1726 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1726 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1726 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1726 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1727 = witTypes.Some[golem_core_types.NumericBound](variant1726) + default: + panic("unreachable") + } + var option1729 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1729 = witTypes.None[string]() + case 1: + value1728 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1729 = witTypes.Some[string](value1728) + default: + panic("unreachable") + } + + option1730 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1725, option1727, option1729}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyS64Type(option1730) + + case 6: + var option1737 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1737 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1732 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1732 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1731 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1731 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1731 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1731 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1732 = witTypes.Some[golem_core_types.NumericBound](variant1731) + default: + panic("unreachable") + } + var option1734 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1734 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1733 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1733 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1733 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1733 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1734 = witTypes.Some[golem_core_types.NumericBound](variant1733) + default: + panic("unreachable") + } + var option1736 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1736 = witTypes.None[string]() + case 1: + value1735 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1736 = witTypes.Some[string](value1735) + default: + panic("unreachable") + } + + option1737 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1732, option1734, option1736}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU8Type(option1737) + + case 7: + var option1744 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1744 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1739 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1739 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1738 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1738 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1738 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1738 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1739 = witTypes.Some[golem_core_types.NumericBound](variant1738) + default: + panic("unreachable") + } + var option1741 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1741 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1740 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1740 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1740 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1740 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1741 = witTypes.Some[golem_core_types.NumericBound](variant1740) + default: + panic("unreachable") + } + var option1743 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1743 = witTypes.None[string]() + case 1: + value1742 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1743 = witTypes.Some[string](value1742) + default: + panic("unreachable") + } + + option1744 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1739, option1741, option1743}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU16Type(option1744) + + case 8: + var option1751 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1751 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1746 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1746 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1745 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1745 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1745 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1745 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1746 = witTypes.Some[golem_core_types.NumericBound](variant1745) + default: + panic("unreachable") + } + var option1748 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1748 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1747 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1747 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1747 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1747 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1748 = witTypes.Some[golem_core_types.NumericBound](variant1747) + default: + panic("unreachable") + } + var option1750 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1750 = witTypes.None[string]() + case 1: + value1749 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1750 = witTypes.Some[string](value1749) + default: + panic("unreachable") + } + + option1751 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1746, option1748, option1750}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU32Type(option1751) + + case 9: + var option1758 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1758 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1753 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1753 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1752 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1752 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1752 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1752 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1753 = witTypes.Some[golem_core_types.NumericBound](variant1752) + default: + panic("unreachable") + } + var option1755 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1755 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1754 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1754 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1754 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1754 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1755 = witTypes.Some[golem_core_types.NumericBound](variant1754) + default: + panic("unreachable") + } + var option1757 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1757 = witTypes.None[string]() + case 1: + value1756 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1757 = witTypes.Some[string](value1756) + default: + panic("unreachable") + } + + option1758 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1753, option1755, option1757}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyU64Type(option1758) + + case 10: + var option1765 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1765 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1760 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1760 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1759 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1759 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1759 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1759 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1760 = witTypes.Some[golem_core_types.NumericBound](variant1759) + default: + panic("unreachable") + } + var option1762 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1762 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1761 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1761 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1761 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1761 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1762 = witTypes.Some[golem_core_types.NumericBound](variant1761) + default: + panic("unreachable") + } + var option1764 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1764 = witTypes.None[string]() + case 1: + value1763 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1764 = witTypes.Some[string](value1763) + default: + panic("unreachable") + } + + option1765 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1760, option1762, option1764}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyF32Type(option1765) + + case 11: + var option1772 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1772 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1767 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1767 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1766 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1766 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1766 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1766 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1767 = witTypes.Some[golem_core_types.NumericBound](variant1766) + default: + panic("unreachable") + } + var option1769 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1769 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1768 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1768 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1768 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1768 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1769 = witTypes.Some[golem_core_types.NumericBound](variant1768) + default: + panic("unreachable") + } + var option1771 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1771 = witTypes.None[string]() + case 1: + value1770 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1771 = witTypes.Some[string](value1770) + default: + panic("unreachable") + } + + option1772 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1767, option1769, option1771}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyF64Type(option1772) + + case 12: + + variant1866 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant1866 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result1785 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1773 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1775 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1775 = witTypes.None[string]() + case 1: + value1774 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1775 = witTypes.Some[string](value1774) + default: + panic("unreachable") + } + result1777 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1776 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1777 = append(result1777, value1776) + } + + result1779 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1778 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1779 = append(result1779, value1778) + } + + var option1781 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option1781 = witTypes.None[string]() + case 1: + value1780 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option1781 = witTypes.Some[string](value1780) + default: + panic("unreachable") + } + var option1784 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option1784 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1783 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant1783 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1783 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1783 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1782 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant1783 = golem_core_types.MakeRoleOther(value1782) + + default: + panic("unreachable") + } + + option1784 = witTypes.Some[golem_core_types.Role](variant1783) + default: + panic("unreachable") + } + + result1785 = append(result1785, golem_core_types.NamedFieldType{value1773, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1775, result1777, result1779, option1781, option1784}}) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyRecordType(result1785) + + case 15: + result1799 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value1786 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1787 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1787 = witTypes.None[int32]() + case 1: + + option1787 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option1789 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1789 = witTypes.None[string]() + case 1: + value1788 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1789 = witTypes.Some[string](value1788) + default: + panic("unreachable") + } + result1791 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1790 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1791 = append(result1791, value1790) + } + + result1793 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value1792 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1793 = append(result1793, value1792) + } + + var option1795 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option1795 = witTypes.None[string]() + case 1: + value1794 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option1795 = witTypes.Some[string](value1794) + default: + panic("unreachable") + } + var option1798 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option1798 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1797 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant1797 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1797 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1797 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1796 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant1797 = golem_core_types.MakeRoleOther(value1796) + + default: + panic("unreachable") + } + + option1798 = witTypes.Some[golem_core_types.Role](variant1797) + default: + panic("unreachable") + } + + result1799 = append(result1799, golem_core_types.VariantCaseType{value1786, option1787, golem_core_types.MetadataEnvelope{option1789, result1791, result1793, option1795, option1798}}) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyVariantType(result1799) + + case 16: + result1801 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1800 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1801 = append(result1801, value1800) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyEnumType(result1801) + + case 17: + result1803 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value1802 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1803 = append(result1803, value1802) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyFlagsType(result1803) + + case 18: + result1804 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1804 = append(result1804, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyTupleType(result1804) + + case 19: + + variant1866 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant1866 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant1866 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant1866 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option1805 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1805 = witTypes.None[int32]() + case 1: + + option1805 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option1806 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1806 = witTypes.None[int32]() + case 1: + + option1806 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option1805, option1806}) + + case 24: + var option1809 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1809 = witTypes.None[[]string]() + case 1: + result1808 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1807 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1808 = append(result1808, value1807) + } + + option1809 = witTypes.Some[[]string](result1808) + default: + panic("unreachable") + } + var option1810 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1810 = witTypes.None[uint32]() + case 1: + + option1810 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1811 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1811 = witTypes.None[uint32]() + case 1: + + option1811 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option1813 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option1813 = witTypes.None[string]() + case 1: + value1812 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option1813 = witTypes.Some[string](value1812) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option1809, option1810, option1811, option1813}) + + case 25: + var option1816 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1816 = witTypes.None[[]string]() + case 1: + result1815 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1814 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1815 = append(result1815, value1814) + } + + option1816 = witTypes.Some[[]string](result1815) + default: + panic("unreachable") + } + var option1817 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1817 = witTypes.None[uint32]() + case 1: + + option1817 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option1818 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option1818 = witTypes.None[uint32]() + case 1: + + option1818 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option1816, option1817, option1818}) + + case 26: + var option1821 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1821 = witTypes.None[[]string]() + case 1: + result1820 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1819 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1820 = append(result1820, value1819) + } + + option1821 = witTypes.Some[[]string](result1820) + default: + panic("unreachable") + } + var option1824 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1824 = witTypes.None[[]string]() + case 1: + result1823 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value1822 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1823 = append(result1823, value1822) + } + + option1824 = witTypes.Some[[]string](result1823) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option1821, option1824}) + + case 27: + var option1827 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1827 = witTypes.None[[]string]() + case 1: + result1826 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value1825 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1826 = append(result1826, value1825) + } + + option1827 = witTypes.Some[[]string](result1826) + default: + panic("unreachable") + } + var option1830 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option1830 = witTypes.None[[]string]() + case 1: + result1829 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value1828 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1829 = append(result1829, value1828) + } + + option1830 = witTypes.Some[[]string](result1829) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option1827, option1830}) + + case 28: + + variant1866 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant1866 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value1831 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result1833 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value1832 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1833 = append(result1833, value1832) + } + + var option1835 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option1835 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1834 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option1835 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value1834}) + default: + panic("unreachable") + } + var option1837 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option1837 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value1836 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option1837 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value1836}) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value1831, result1833, option1835, option1837}) + + case 31: + result1859 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value1838 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1847 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value1839 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRulePrefix(value1839) + + case 1: + value1840 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleSuffix(value1840) + + case 2: + value1841 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleContains(value1841) + + case 3: + value1842 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleRegex(value1842) + + case 4: + value1843 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option1845 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option1845 = witTypes.None[string]() + case 1: + value1844 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option1845 = witTypes.Some[string](value1844) + default: + panic("unreachable") + } + + variant1847 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value1843, option1845}) + + case 5: + value1846 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant1847 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value1846) + + default: + panic("unreachable") + } + var option1849 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option1849 = witTypes.None[string]() + case 1: + value1848 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option1849 = witTypes.Some[string](value1848) + default: + panic("unreachable") + } + result1851 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value1850 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1851 = append(result1851, value1850) + } + + result1853 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value1852 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1853 = append(result1853, value1852) + } + + var option1855 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option1855 = witTypes.None[string]() + case 1: + value1854 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option1855 = witTypes.Some[string](value1854) + default: + panic("unreachable") + } + var option1858 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option1858 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1857 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant1857 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1857 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1857 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1856 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant1857 = golem_core_types.MakeRoleOther(value1856) + + default: + panic("unreachable") + } + + option1858 = witTypes.Some[golem_core_types.Role](variant1857) + default: + panic("unreachable") + } + + result1859 = append(result1859, golem_core_types.UnionBranch{value1838, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant1847, golem_core_types.MetadataEnvelope{option1849, result1851, result1853, option1855, option1858}}) + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result1859}) + + case 32: + var option1861 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option1861 = witTypes.None[string]() + case 1: + value1860 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option1861 = witTypes.Some[string](value1860) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option1861}) + + case 33: + var option1863 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1863 = witTypes.None[string]() + case 1: + value1862 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option1863 = witTypes.Some[string](value1862) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option1863}) + + case 34: + var option1864 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1864 = witTypes.None[int32]() + case 1: + + option1864 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyFutureType(option1864) + + case 35: + var option1865 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1865 = witTypes.None[int32]() + case 1: + + option1865 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1866 = golem_core_types.MakeSchemaTypeBodyStreamType(option1865) + + default: + panic("unreachable") + } + var option1868 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option1868 = witTypes.None[string]() + case 1: + value1867 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option1868 = witTypes.Some[string](value1867) + default: + panic("unreachable") + } + result1870 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value1869 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1870 = append(result1870, value1869) + } + + result1872 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value1871 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1872 = append(result1872, value1871) + } + + var option1874 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option1874 = witTypes.None[string]() + case 1: + value1873 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option1874 = witTypes.Some[string](value1873) + default: + panic("unreachable") + } + var option1877 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option1877 = witTypes.None[golem_core_types.Role]() + case 1: + var variant1876 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant1876 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant1876 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant1876 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value1875 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant1876 = golem_core_types.MakeRoleOther(value1875) + + default: + panic("unreachable") + } + + option1877 = witTypes.Some[golem_core_types.Role](variant1876) + default: + panic("unreachable") + } + + result1878 = append(result1878, golem_core_types.SchemaTypeNode{variant1866, golem_core_types.MetadataEnvelope{option1868, result1870, result1872, option1874, option1877}}) + } + + result1882 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))), index*(6*4)) + value1879 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1881 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option1881 = witTypes.None[string]() + case 1: + value1880 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option1881 = witTypes.Some[string](value1880) + default: + panic("unreachable") + } + + result1882 = append(result1882, golem_core_types.SchemaTypeDef{value1879, option1881, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result1906 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4))))), index*(16+4*4)) + var variant1905 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant1905 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant1905 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant1905 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant1905 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant1905 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant1905 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant1905 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant1905 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant1905 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant1905 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant1905 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant1905 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value1883 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeStringValue(value1883) + + case 13: + result1884 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1884 = append(result1884, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeRecordValue(result1884) + + case 14: + var option1885 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1885 = witTypes.None[int32]() + case 1: + + option1885 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option1885}) + + case 15: + + variant1905 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1886 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1886 = append(result1886, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1886) + + case 17: + result1887 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1887 = append(result1887, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeTupleValue(result1887) + + case 18: + result1888 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1888 = append(result1888, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeListValue(result1888) + + case 19: + result1889 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result1889 = append(result1889, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeFixedListValue(result1889) + + case 20: + result1890 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result1890 = append(result1890, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant1905 = golem_core_types.MakeSchemaValueNodeMapValue(result1890) + + case 21: + var option1891 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1891 = witTypes.None[int32]() + case 1: + + option1891 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeOptionValue(option1891) + + case 22: + var variant1894 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option1892 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1892 = witTypes.None[int32]() + case 1: + + option1892 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1894 = golem_core_types.MakeResultValuePayloadOkValue(option1892) + + case 1: + var option1893 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option1893 = witTypes.None[int32]() + case 1: + + option1893 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant1894 = golem_core_types.MakeResultValuePayloadErrValue(option1893) + + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeResultValue(variant1894) + + case 23: + value1895 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1897 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1897 = witTypes.None[string]() + case 1: + value1896 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1897 = witTypes.Some[string](value1896) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value1895, option1897}) + + case 24: + value1898 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1900 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option1900 = witTypes.None[string]() + case 1: + value1899 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option1900 = witTypes.Some[string](value1899) + default: + panic("unreachable") + } + + variant1905 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value1898, option1900}) + + case 25: + value1901 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodePathValue(value1901) + + case 26: + value1902 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeUrlValue(value1902) + + case 27: + + variant1905 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant1905 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value1903 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value1903}) + + case 30: + value1904 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1905 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value1904, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant1905 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant1905 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result1906 = append(result1906, variant1905) + } + + value1907 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 11*4)))) + result1909 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 13*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 13*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 12*4))))), index*(2*4)) + value1908 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1909 = append(result1909, value1908) + } + + result1921 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 14*4))))), index*(2*4)) + result1920 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant1919 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value1910 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option1912 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option1912 = witTypes.None[string]() + case 1: + value1911 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option1912 = witTypes.Some[string](value1911) + default: + panic("unreachable") + } + var option1913 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option1913 = witTypes.None[uint64]() + case 1: + + option1913 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result1917 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value1914 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant1916 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value1915 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant1916 = golem_api_context.MakeAttributeValueString(value1915) + + default: + panic("unreachable") + } + + result1917 = append(result1917, golem_api_context.Attribute{value1914, variant1916}) + } + + variant1919 = MakeSpanDataLocalSpan(LocalSpanData{value1910, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option1912, option1913, result1917, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value1918 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant1919 = MakeSpanDataExternalSpan(ExternalSpanData{value1918}) + + default: + panic("unreachable") + } + + result1920 = append(result1920, variant1919) + } + + result1921 = append(result1921, result1920) + } + + variant2146 = MakeAgentInvocationAgentInitialization(AgentInitializationParameters{value1702, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result1878, result1882, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4)))}, golem_core_types.SchemaValueTree{result1906, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4)))}}, value1907, result1909, result1921}) + + case 1: + value1922 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + value1923 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + result2099 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))), index*(56+22*4)) + var variant2087 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2087 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant2087 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option1930 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1930 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1925 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1925 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1924 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1924 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1924 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1924 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1925 = witTypes.Some[golem_core_types.NumericBound](variant1924) + default: + panic("unreachable") + } + var option1927 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1927 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1926 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1926 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1926 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1926 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1927 = witTypes.Some[golem_core_types.NumericBound](variant1926) + default: + panic("unreachable") + } + var option1929 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1929 = witTypes.None[string]() + case 1: + value1928 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1929 = witTypes.Some[string](value1928) + default: + panic("unreachable") + } + + option1930 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1925, option1927, option1929}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS8Type(option1930) + + case 3: + var option1937 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1937 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1932 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1932 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1931 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1931 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1931 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1931 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1932 = witTypes.Some[golem_core_types.NumericBound](variant1931) + default: + panic("unreachable") + } + var option1934 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1934 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1933 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1933 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1933 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1933 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1934 = witTypes.Some[golem_core_types.NumericBound](variant1933) + default: + panic("unreachable") + } + var option1936 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1936 = witTypes.None[string]() + case 1: + value1935 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1936 = witTypes.Some[string](value1935) + default: + panic("unreachable") + } + + option1937 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1932, option1934, option1936}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS16Type(option1937) + + case 4: + var option1944 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1944 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1939 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1939 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1938 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1938 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1938 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1938 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1939 = witTypes.Some[golem_core_types.NumericBound](variant1938) + default: + panic("unreachable") + } + var option1941 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1941 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1940 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1940 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1940 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1940 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1941 = witTypes.Some[golem_core_types.NumericBound](variant1940) + default: + panic("unreachable") + } + var option1943 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1943 = witTypes.None[string]() + case 1: + value1942 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1943 = witTypes.Some[string](value1942) + default: + panic("unreachable") + } + + option1944 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1939, option1941, option1943}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS32Type(option1944) + + case 5: + var option1951 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1951 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1946 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1946 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1945 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1945 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1945 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1945 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1946 = witTypes.Some[golem_core_types.NumericBound](variant1945) + default: + panic("unreachable") + } + var option1948 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1948 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1947 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1947 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1947 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1947 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1948 = witTypes.Some[golem_core_types.NumericBound](variant1947) + default: + panic("unreachable") + } + var option1950 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1950 = witTypes.None[string]() + case 1: + value1949 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1950 = witTypes.Some[string](value1949) + default: + panic("unreachable") + } + + option1951 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1946, option1948, option1950}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyS64Type(option1951) + + case 6: + var option1958 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1958 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1953 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1953 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1952 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1952 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1952 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1952 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1953 = witTypes.Some[golem_core_types.NumericBound](variant1952) + default: + panic("unreachable") + } + var option1955 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1955 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1954 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1954 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1954 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1954 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1955 = witTypes.Some[golem_core_types.NumericBound](variant1954) + default: + panic("unreachable") + } + var option1957 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1957 = witTypes.None[string]() + case 1: + value1956 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1957 = witTypes.Some[string](value1956) + default: + panic("unreachable") + } + + option1958 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1953, option1955, option1957}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU8Type(option1958) + + case 7: + var option1965 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1965 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1960 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1960 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1959 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1959 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1959 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1959 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1960 = witTypes.Some[golem_core_types.NumericBound](variant1959) + default: + panic("unreachable") + } + var option1962 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1962 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1961 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1961 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1961 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1961 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1962 = witTypes.Some[golem_core_types.NumericBound](variant1961) + default: + panic("unreachable") + } + var option1964 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1964 = witTypes.None[string]() + case 1: + value1963 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1964 = witTypes.Some[string](value1963) + default: + panic("unreachable") + } + + option1965 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1960, option1962, option1964}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU16Type(option1965) + + case 8: + var option1972 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1972 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1967 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1967 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1966 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1966 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1966 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1966 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1967 = witTypes.Some[golem_core_types.NumericBound](variant1966) + default: + panic("unreachable") + } + var option1969 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1969 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1968 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1968 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1968 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1968 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1969 = witTypes.Some[golem_core_types.NumericBound](variant1968) + default: + panic("unreachable") + } + var option1971 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1971 = witTypes.None[string]() + case 1: + value1970 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1971 = witTypes.Some[string](value1970) + default: + panic("unreachable") + } + + option1972 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1967, option1969, option1971}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU32Type(option1972) + + case 9: + var option1979 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1979 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1974 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1974 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1973 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1973 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1973 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1973 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1974 = witTypes.Some[golem_core_types.NumericBound](variant1973) + default: + panic("unreachable") + } + var option1976 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1976 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1975 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1975 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1975 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1975 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1976 = witTypes.Some[golem_core_types.NumericBound](variant1975) + default: + panic("unreachable") + } + var option1978 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1978 = witTypes.None[string]() + case 1: + value1977 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1978 = witTypes.Some[string](value1977) + default: + panic("unreachable") + } + + option1979 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1974, option1976, option1978}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyU64Type(option1979) + + case 10: + var option1986 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1986 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1981 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1981 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1980 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1980 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1980 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1980 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1981 = witTypes.Some[golem_core_types.NumericBound](variant1980) + default: + panic("unreachable") + } + var option1983 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1983 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1982 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1982 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1982 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1982 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1983 = witTypes.Some[golem_core_types.NumericBound](variant1982) + default: + panic("unreachable") + } + var option1985 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1985 = witTypes.None[string]() + case 1: + value1984 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1985 = witTypes.Some[string](value1984) + default: + panic("unreachable") + } + + option1986 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1981, option1983, option1985}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyF32Type(option1986) + + case 11: + var option1993 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option1993 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option1988 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option1988 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1987 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant1987 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant1987 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant1987 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option1988 = witTypes.Some[golem_core_types.NumericBound](variant1987) + default: + panic("unreachable") + } + var option1990 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1990 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant1989 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant1989 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant1989 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant1989 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1990 = witTypes.Some[golem_core_types.NumericBound](variant1989) + default: + panic("unreachable") + } + var option1992 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option1992 = witTypes.None[string]() + case 1: + value1991 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option1992 = witTypes.Some[string](value1991) + default: + panic("unreachable") + } + + option1993 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option1988, option1990, option1992}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyF64Type(option1993) + + case 12: + + variant2087 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant2087 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result2006 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value1994 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option1996 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option1996 = witTypes.None[string]() + case 1: + value1995 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option1996 = witTypes.Some[string](value1995) + default: + panic("unreachable") + } + result1998 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value1997 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result1998 = append(result1998, value1997) + } + + result2000 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value1999 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2000 = append(result2000, value1999) + } + + var option2002 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option2002 = witTypes.None[string]() + case 1: + value2001 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option2002 = witTypes.Some[string](value2001) + default: + panic("unreachable") + } + var option2005 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option2005 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2004 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant2004 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2004 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2004 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2003 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant2004 = golem_core_types.MakeRoleOther(value2003) + + default: + panic("unreachable") + } + + option2005 = witTypes.Some[golem_core_types.Role](variant2004) + default: + panic("unreachable") + } + + result2006 = append(result2006, golem_core_types.NamedFieldType{value1994, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option1996, result1998, result2000, option2002, option2005}}) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyRecordType(result2006) + + case 15: + result2020 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value2007 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2008 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2008 = witTypes.None[int32]() + case 1: + + option2008 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option2010 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2010 = witTypes.None[string]() + case 1: + value2009 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2010 = witTypes.Some[string](value2009) + default: + panic("unreachable") + } + result2012 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2011 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2012 = append(result2012, value2011) + } + + result2014 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value2013 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2014 = append(result2014, value2013) + } + + var option2016 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option2016 = witTypes.None[string]() + case 1: + value2015 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option2016 = witTypes.Some[string](value2015) + default: + panic("unreachable") + } + var option2019 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option2019 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2018 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant2018 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2018 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2018 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2017 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant2018 = golem_core_types.MakeRoleOther(value2017) + + default: + panic("unreachable") + } + + option2019 = witTypes.Some[golem_core_types.Role](variant2018) + default: + panic("unreachable") + } + + result2020 = append(result2020, golem_core_types.VariantCaseType{value2007, option2008, golem_core_types.MetadataEnvelope{option2010, result2012, result2014, option2016, option2019}}) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyVariantType(result2020) + + case 16: + result2022 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2021 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2022 = append(result2022, value2021) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyEnumType(result2022) + + case 17: + result2024 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2023 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2024 = append(result2024, value2023) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyFlagsType(result2024) + + case 18: + result2025 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2025 = append(result2025, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyTupleType(result2025) + + case 19: + + variant2087 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant2087 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant2087 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant2087 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option2026 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2026 = witTypes.None[int32]() + case 1: + + option2026 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option2027 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2027 = witTypes.None[int32]() + case 1: + + option2027 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option2026, option2027}) + + case 24: + var option2030 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2030 = witTypes.None[[]string]() + case 1: + result2029 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2028 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2029 = append(result2029, value2028) + } + + option2030 = witTypes.Some[[]string](result2029) + default: + panic("unreachable") + } + var option2031 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2031 = witTypes.None[uint32]() + case 1: + + option2031 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2032 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2032 = witTypes.None[uint32]() + case 1: + + option2032 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option2034 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option2034 = witTypes.None[string]() + case 1: + value2033 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option2034 = witTypes.Some[string](value2033) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option2030, option2031, option2032, option2034}) + + case 25: + var option2037 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2037 = witTypes.None[[]string]() + case 1: + result2036 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2035 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2036 = append(result2036, value2035) + } + + option2037 = witTypes.Some[[]string](result2036) + default: + panic("unreachable") + } + var option2038 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2038 = witTypes.None[uint32]() + case 1: + + option2038 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2039 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2039 = witTypes.None[uint32]() + case 1: + + option2039 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option2037, option2038, option2039}) + + case 26: + var option2042 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2042 = witTypes.None[[]string]() + case 1: + result2041 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2040 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2041 = append(result2041, value2040) + } + + option2042 = witTypes.Some[[]string](result2041) + default: + panic("unreachable") + } + var option2045 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2045 = witTypes.None[[]string]() + case 1: + result2044 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2043 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2044 = append(result2044, value2043) + } + + option2045 = witTypes.Some[[]string](result2044) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option2042, option2045}) + + case 27: + var option2048 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2048 = witTypes.None[[]string]() + case 1: + result2047 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2046 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2047 = append(result2047, value2046) + } + + option2048 = witTypes.Some[[]string](result2047) + default: + panic("unreachable") + } + var option2051 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2051 = witTypes.None[[]string]() + case 1: + result2050 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value2049 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2050 = append(result2050, value2049) + } + + option2051 = witTypes.Some[[]string](result2050) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option2048, option2051}) + + case 28: + + variant2087 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant2087 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value2052 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2054 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2053 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2054 = append(result2054, value2053) + } + + var option2056 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2056 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2055 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option2056 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value2055}) + default: + panic("unreachable") + } + var option2058 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option2058 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2057 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option2058 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value2057}) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value2052, result2054, option2056, option2058}) + + case 31: + result2080 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value2059 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2068 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value2060 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRulePrefix(value2060) + + case 1: + value2061 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleSuffix(value2061) + + case 2: + value2062 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleContains(value2062) + + case 3: + value2063 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleRegex(value2063) + + case 4: + value2064 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option2066 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option2066 = witTypes.None[string]() + case 1: + value2065 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option2066 = witTypes.Some[string](value2065) + default: + panic("unreachable") + } + + variant2068 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value2064, option2066}) + + case 5: + value2067 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2068 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value2067) + + default: + panic("unreachable") + } + var option2070 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option2070 = witTypes.None[string]() + case 1: + value2069 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option2070 = witTypes.Some[string](value2069) + default: + panic("unreachable") + } + result2072 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value2071 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2072 = append(result2072, value2071) + } + + result2074 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value2073 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2074 = append(result2074, value2073) + } + + var option2076 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option2076 = witTypes.None[string]() + case 1: + value2075 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option2076 = witTypes.Some[string](value2075) + default: + panic("unreachable") + } + var option2079 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option2079 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2078 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant2078 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2078 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2078 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2077 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant2078 = golem_core_types.MakeRoleOther(value2077) + + default: + panic("unreachable") + } + + option2079 = witTypes.Some[golem_core_types.Role](variant2078) + default: + panic("unreachable") + } + + result2080 = append(result2080, golem_core_types.UnionBranch{value2059, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant2068, golem_core_types.MetadataEnvelope{option2070, result2072, result2074, option2076, option2079}}) + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result2080}) + + case 32: + var option2082 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2082 = witTypes.None[string]() + case 1: + value2081 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option2082 = witTypes.Some[string](value2081) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option2082}) + + case 33: + var option2084 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2084 = witTypes.None[string]() + case 1: + value2083 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option2084 = witTypes.Some[string](value2083) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option2084}) + + case 34: + var option2085 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2085 = witTypes.None[int32]() + case 1: + + option2085 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyFutureType(option2085) + + case 35: + var option2086 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2086 = witTypes.None[int32]() + case 1: + + option2086 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2087 = golem_core_types.MakeSchemaTypeBodyStreamType(option2086) + + default: + panic("unreachable") + } + var option2089 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option2089 = witTypes.None[string]() + case 1: + value2088 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option2089 = witTypes.Some[string](value2088) + default: + panic("unreachable") + } + result2091 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value2090 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2091 = append(result2091, value2090) + } + + result2093 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value2092 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2093 = append(result2093, value2092) + } + + var option2095 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option2095 = witTypes.None[string]() + case 1: + value2094 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option2095 = witTypes.Some[string](value2094) + default: + panic("unreachable") + } + var option2098 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option2098 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2097 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant2097 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2097 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2097 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2096 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant2097 = golem_core_types.MakeRoleOther(value2096) + + default: + panic("unreachable") + } + + option2098 = witTypes.Some[golem_core_types.Role](variant2097) + default: + panic("unreachable") + } + + result2099 = append(result2099, golem_core_types.SchemaTypeNode{variant2087, golem_core_types.MetadataEnvelope{option2089, result2091, result2093, option2095, option2098}}) + } + + result2103 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))))), index*(6*4)) + value2100 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2102 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2102 = witTypes.None[string]() + case 1: + value2101 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option2102 = witTypes.Some[string](value2101) + default: + panic("unreachable") + } + + result2103 = append(result2103, golem_core_types.SchemaTypeDef{value2100, option2102, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result2127 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 10*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 9*4))))), index*(16+4*4)) + var variant2126 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2126 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant2126 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant2126 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant2126 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant2126 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant2126 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant2126 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant2126 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant2126 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant2126 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant2126 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant2126 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value2104 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeStringValue(value2104) + + case 13: + result2105 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2105 = append(result2105, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeRecordValue(result2105) + + case 14: + var option2106 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2106 = witTypes.None[int32]() + case 1: + + option2106 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option2106}) + + case 15: + + variant2126 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result2107 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result2107 = append(result2107, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeFlagsValue(result2107) + + case 17: + result2108 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2108 = append(result2108, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeTupleValue(result2108) + + case 18: + result2109 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2109 = append(result2109, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeListValue(result2109) + + case 19: + result2110 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2110 = append(result2110, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeFixedListValue(result2110) + + case 20: + result2111 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result2111 = append(result2111, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant2126 = golem_core_types.MakeSchemaValueNodeMapValue(result2111) + + case 21: + var option2112 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2112 = witTypes.None[int32]() + case 1: + + option2112 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeOptionValue(option2112) + + case 22: + var variant2115 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option2113 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2113 = witTypes.None[int32]() + case 1: + + option2113 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2115 = golem_core_types.MakeResultValuePayloadOkValue(option2113) + + case 1: + var option2114 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2114 = witTypes.None[int32]() + case 1: + + option2114 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2115 = golem_core_types.MakeResultValuePayloadErrValue(option2114) + + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeResultValue(variant2115) + + case 23: + value2116 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2118 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2118 = witTypes.None[string]() + case 1: + value2117 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2118 = witTypes.Some[string](value2117) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value2116, option2118}) + + case 24: + value2119 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2121 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2121 = witTypes.None[string]() + case 1: + value2120 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2121 = witTypes.Some[string](value2120) + default: + panic("unreachable") + } + + variant2126 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value2119, option2121}) + + case 25: + value2122 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodePathValue(value2122) + + case 26: + value2123 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeUrlValue(value2123) + + case 27: + + variant2126 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant2126 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value2124 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2124}) + + case 30: + value2125 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2126 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value2125, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant2126 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant2126 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result2127 = append(result2127, variant2126) + } + + value2128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 13*4)))) + result2130 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 15*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 14*4))))), index*(2*4)) + value2129 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2130 = append(result2130, value2129) + } + + result2142 := make([][]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 17*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 17*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 16*4))))), index*(2*4)) + result2141 := make([]SpanData, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*(56+6*4)) + var variant2140 SpanData + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2131 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2133 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 2*4)))) { + case 0: + + option2133 = witTypes.None[string]() + case 1: + value2132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))) + + option2133 = witTypes.Some[string](value2132) + default: + panic("unreachable") + } + var option2134 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + + option2134 = witTypes.None[uint64]() + case 1: + + option2134 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4))))) + default: + panic("unreachable") + } + result2138 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4))))), index*(5*4)) + value2135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2137 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value2136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant2137 = golem_api_context.MakeAttributeValueString(value2136) + + default: + panic("unreachable") + } + + result2138 = append(result2138, golem_api_context.Attribute{value2135, variant2137}) + } + + variant2140 = MakeSpanDataLocalSpan(LocalSpanData{value2131, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))))}, option2133, option2134, result2138, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) != 0)}) + + case 1: + value2139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2140 = MakeSpanDataExternalSpan(ExternalSpanData{value2139}) + + default: + panic("unreachable") + } + + result2141 = append(result2141, variant2140) + } + + result2142 = append(result2142, result2141) + } + + variant2146 = MakeAgentInvocationAgentMethodInvocation(AgentMethodInvocationParameters{value1922, value1923, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result2099, result2103, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))}, golem_core_types.SchemaValueTree{result2127, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 11*4)))}}, value2128, result2130, result2142}) + + case 2: + + variant2146 = MakeAgentInvocationSaveSnapshot() + + case 3: + value2143 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + value2144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + + variant2146 = MakeAgentInvocationLoadSnapshot(LoadSnapshotParameters{SnapshotData{value2143, value2144}}) + + case 4: + value2145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + + variant2146 = MakeAgentInvocationProcessOplogEntries(ProcessOplogEntriesParameters{value2145}) + + case 5: + + variant2146 = MakeAgentInvocationManualUpdate(ManualUpdateParameters{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryPendingAgentInvocation(PendingAgentInvocationParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, variant2146}) + + case 15: + var variant2149 UpdateDescription + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + variant2149 = MakeUpdateDescriptionAutoUpdate() + + case 1: + value2147 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + value2148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + + variant2149 = MakeUpdateDescriptionSnapshotBased(golem_api_host.Snapshot{value2147, value2148}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryPendingUpdate(PendingUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), variant2149}) + + case 16: + result2155 := make([]PluginInstallationDescription, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48)))), index*(24+6*4)) + value2150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + value2151 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4)))) + result2154 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 5*4))))), index*(4*4)) + value2152 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2153 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2154 = append(result2154, witTypes.Tuple2[string, string]{value2152, value2153}) + } + + result2155 = append(result2155, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2150, value2151, result2154}) + } + + variant2471 = MakePublicOplogEntrySuccessfulUpdate(SuccessfulUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40))), result2155}) + + case 17: + var option2157 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2157 = witTypes.None[string]() + case 1: + value2156 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + + option2157 = witTypes.Some[string](value2156) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryFailedUpdate(FailedUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), option2157}) + + case 18: + + variant2471 = MakePublicOplogEntryGrowMemory(GrowMemoryParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + case 19: + + variant2471 = MakePublicOplogEntryFilesystemStorageUsageUpdate(FilesystemStorageUsageUpdateParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, *(*int64)(unsafe.Add(unsafe.Pointer(base), 32))}) + + case 20: + value2158 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + value2159 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + + variant2471 = MakePublicOplogEntryCreateResource(CreateResourceParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), value2158, value2159}) + + case 21: + value2160 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4)))) + value2161 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4)))) + + variant2471 = MakePublicOplogEntryDropResource(DropResourceParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), value2160, value2161}) + + case 22: + value2162 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) + value2163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + + variant2471 = MakePublicOplogEntryLog(LogParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32)))), value2162, value2163}) + + case 23: + + variant2471 = MakePublicOplogEntryRestart(Timestamp{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 24: + value2164 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4)))) + value2165 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4)))) + result2168 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4))))), index*(4*4)) + value2166 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2168 = append(result2168, witTypes.Tuple2[string, string]{value2166, value2167}) + } + + variant2471 = MakePublicOplogEntryActivatePlugin(ActivatePluginParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)), value2164, value2165, result2168}}) + + case 25: + value2169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4)))) + value2170 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4)))) + result2173 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4))))), index*(4*4)) + value2171 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2172 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2173 = append(result2173, witTypes.Tuple2[string, string]{value2171, value2172}) + } + + variant2471 = MakePublicOplogEntryDeactivatePlugin(DeactivatePluginParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)), value2169, value2170, result2173}}) + + case 26: + + variant2471 = MakePublicOplogEntryRevert(RevertParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, OplogRegion{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}) + + case 27: + value2174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant2471 = MakePublicOplogEntryCancelPendingInvocation(CancelPendingInvocationParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, value2174}) + + case 28: + value2175 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + var option2177 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))) { + case 0: + + option2177 = witTypes.None[string]() + case 1: + value2176 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + + option2177 = witTypes.Some[string](value2176) + default: + panic("unreachable") + } + var option2179 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))) { + case 0: + + option2179 = witTypes.None[string]() + case 1: + value2178 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 7*4)))) + + option2179 = witTypes.Some[string](value2178) + default: + panic("unreachable") + } + result2183 := make([]golem_api_context.Attribute, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 9*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 8*4))))), index*(5*4)) + value2180 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2182 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + value2181 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + variant2182 = golem_api_context.MakeAttributeValueString(value2181) + + default: + panic("unreachable") + } + + result2183 = append(result2183, golem_api_context.Attribute{value2180, variant2182}) + } + + variant2471 = MakePublicOplogEntryStartSpan(StartSpanParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, value2175, option2177, option2179, result2183}) + + case 29: + value2184 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant2471 = MakePublicOplogEntryFinishSpan(FinishSpanParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, value2184}) + + case 30: + value2185 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2186 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + var variant2188 golem_api_context.AttributeValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) { + case 0: + value2187 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) + + variant2188 = golem_api_context.MakeAttributeValueString(value2187) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntrySetSpanAttribute(SetSpanAttributeParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, value2185, value2186, variant2188}) + + case 31: + var variant2189 golem_api_host.PersistenceLevel + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + variant2189 = golem_api_host.MakePersistenceLevelPersistNothing() + + case 1: + + variant2189 = golem_api_host.MakePersistenceLevelPersistRemoteSideEffects() + + case 2: + + variant2189 = golem_api_host.MakePersistenceLevelSmart() + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryChangePersistenceLevel(ChangePersistenceLevelParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, variant2189}) + + case 32: + value2190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant2471 = MakePublicOplogEntryBeginRemoteTransaction(BeginRemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, value2190}) + + case 33: + + variant2471 = MakePublicOplogEntryPreCommitRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + case 34: + + variant2471 = MakePublicOplogEntryPreRollbackRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + case 35: + + variant2471 = MakePublicOplogEntryCommittedRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + case 36: + + variant2471 = MakePublicOplogEntryRolledBackRemoteTransaction(RemoteTransactionParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + case 37: + value2191 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + value2192 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4)))) + + variant2471 = MakePublicOplogEntrySnapshot(SnapshotParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, SnapshotData{value2191, value2192}}) + + case 38: + value2193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 2*4)))) + value2194 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 4*4)))) + result2197 := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 5*4))))), index*(4*4)) + value2195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value2196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result2197 = append(result2197, witTypes.Tuple2[string, string]{value2195, value2196}) + } + + value2198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (72 + 7*4)))) + + variant2471 = MakePublicOplogEntryOplogProcessorCheckpoint(OplogProcessorCheckpointParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, PluginInstallationDescription{EnvironmentPluginGrantId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)), value2193, value2194, result2197}, golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (56 + 6*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (64 + 6*4))))}}, value2198}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (72 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (80 + 8*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), (88 + 8*4))))}) + + case 39: + value2199 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + result2230 := make([]golem_api_retry.PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 3*4))))), index*(16+4*4)) + var variant2229 golem_api_retry.PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2200 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2202 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2201 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2202 = golem_api_retry.MakePredicateValueText(value2201) + + case 1: + + variant2202 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2202 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropEq(golem_api_retry.PropertyComparison{value2200, variant2202}) + + case 1: + value2203 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2205 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2204 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2205 = golem_api_retry.MakePredicateValueText(value2204) + + case 1: + + variant2205 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2205 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropNeq(golem_api_retry.PropertyComparison{value2203, variant2205}) + + case 2: + value2206 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2208 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2207 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2208 = golem_api_retry.MakePredicateValueText(value2207) + + case 1: + + variant2208 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2208 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropGt(golem_api_retry.PropertyComparison{value2206, variant2208}) + + case 3: + value2209 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2211 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2210 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2211 = golem_api_retry.MakePredicateValueText(value2210) + + case 1: + + variant2211 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2211 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropGte(golem_api_retry.PropertyComparison{value2209, variant2211}) + + case 4: + value2212 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2214 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2213 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2214 = golem_api_retry.MakePredicateValueText(value2213) + + case 1: + + variant2214 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2214 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropLt(golem_api_retry.PropertyComparison{value2212, variant2214}) + + case 5: + value2215 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2217 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2216 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2217 = golem_api_retry.MakePredicateValueText(value2216) + + case 1: + + variant2217 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2217 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2229 = golem_api_retry.MakePredicateNodePropLte(golem_api_retry.PropertyComparison{value2215, variant2217}) + + case 6: + value2218 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropExists(value2218) + + case 7: + value2219 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2222 := make([]golem_api_retry.PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant2221 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2220 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2221 = golem_api_retry.MakePredicateValueText(value2220) + + case 1: + + variant2221 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant2221 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result2222 = append(result2222, variant2221) + } + + variant2229 = golem_api_retry.MakePredicateNodePropIn(golem_api_retry.PropertySetCheck{value2219, result2222}) + + case 8: + value2223 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2224 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropMatches(golem_api_retry.PropertyPattern{value2223, value2224}) + + case 9: + value2225 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2226 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropStartsWith(golem_api_retry.PropertyPattern{value2225, value2226}) + + case 10: + value2227 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2228 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2229 = golem_api_retry.MakePredicateNodePropContains(golem_api_retry.PropertyPattern{value2227, value2228}) + + case 11: + + variant2229 = golem_api_retry.MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2229 = golem_api_retry.MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2229 = golem_api_retry.MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant2229 = golem_api_retry.MakePredicateNodePredTrue() + + case 15: + + variant2229 = golem_api_retry.MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result2230 = append(result2230, variant2229) + } + + result2263 := make([]golem_api_retry.PolicyNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 5*4))))), index*32) + var variant2262 golem_api_retry.PolicyNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2262 = golem_api_retry.MakePolicyNodePeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 1: + + variant2262 = golem_api_retry.MakePolicyNodeExponential(golem_api_retry.ExponentialConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*float64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 2: + + variant2262 = golem_api_retry.MakePolicyNodeFibonacci(golem_api_retry.FibonacciConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 3: + + variant2262 = golem_api_retry.MakePolicyNodeImmediate() + + case 4: + + variant2262 = golem_api_retry.MakePolicyNodeNever() + + case 5: + + variant2262 = golem_api_retry.MakePolicyNodeCountBox(golem_api_retry.CountBoxConfig{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 6: + + variant2262 = golem_api_retry.MakePolicyNodeTimeBox(golem_api_retry.TimeBoxConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 7: + + variant2262 = golem_api_retry.MakePolicyNodeClampDelay(golem_api_retry.ClampConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 8: + + variant2262 = golem_api_retry.MakePolicyNodeAddDelay(golem_api_retry.AddDelayConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 9: + + variant2262 = golem_api_retry.MakePolicyNodeJitter(golem_api_retry.JitterConfig{*(*float64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 10: + result2261 := make([]golem_api_retry.PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(16+4*4)) + var variant2260 golem_api_retry.PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2231 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2233 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2232 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2233 = golem_api_retry.MakePredicateValueText(value2232) + + case 1: + + variant2233 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2233 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropEq(golem_api_retry.PropertyComparison{value2231, variant2233}) + + case 1: + value2234 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2236 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2235 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2236 = golem_api_retry.MakePredicateValueText(value2235) + + case 1: + + variant2236 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2236 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropNeq(golem_api_retry.PropertyComparison{value2234, variant2236}) + + case 2: + value2237 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2239 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2238 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2239 = golem_api_retry.MakePredicateValueText(value2238) + + case 1: + + variant2239 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2239 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropGt(golem_api_retry.PropertyComparison{value2237, variant2239}) + + case 3: + value2240 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2242 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2241 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2242 = golem_api_retry.MakePredicateValueText(value2241) + + case 1: + + variant2242 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2242 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropGte(golem_api_retry.PropertyComparison{value2240, variant2242}) + + case 4: + value2243 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2245 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2244 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2245 = golem_api_retry.MakePredicateValueText(value2244) + + case 1: + + variant2245 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2245 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropLt(golem_api_retry.PropertyComparison{value2243, variant2245}) + + case 5: + value2246 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant2248 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value2247 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant2248 = golem_api_retry.MakePredicateValueText(value2247) + + case 1: + + variant2248 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant2248 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant2260 = golem_api_retry.MakePredicateNodePropLte(golem_api_retry.PropertyComparison{value2246, variant2248}) + + case 6: + value2249 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropExists(value2249) + + case 7: + value2250 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2253 := make([]golem_api_retry.PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant2252 golem_api_retry.PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value2251 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2252 = golem_api_retry.MakePredicateValueText(value2251) + + case 1: + + variant2252 = golem_api_retry.MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant2252 = golem_api_retry.MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result2253 = append(result2253, variant2252) + } + + variant2260 = golem_api_retry.MakePredicateNodePropIn(golem_api_retry.PropertySetCheck{value2250, result2253}) + + case 8: + value2254 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2255 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropMatches(golem_api_retry.PropertyPattern{value2254, value2255}) + + case 9: + value2256 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2257 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropStartsWith(golem_api_retry.PropertyPattern{value2256, value2257}) + + case 10: + value2258 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value2259 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant2260 = golem_api_retry.MakePredicateNodePropContains(golem_api_retry.PropertyPattern{value2258, value2259}) + + case 11: + + variant2260 = golem_api_retry.MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2260 = golem_api_retry.MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2260 = golem_api_retry.MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant2260 = golem_api_retry.MakePredicateNodePredTrue() + + case 15: + + variant2260 = golem_api_retry.MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result2261 = append(result2261, variant2260) + } + + variant2262 = golem_api_retry.MakePolicyNodeFilteredOn(golem_api_retry.FilteredConfig{golem_api_retry.RetryPredicate{result2261}, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 11: + + variant2262 = golem_api_retry.MakePolicyNodeAndThen(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant2262 = golem_api_retry.MakePolicyNodePolicyUnion(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant2262 = golem_api_retry.MakePolicyNodePolicyIntersect(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + default: + panic("unreachable") + } + + result2263 = append(result2263, variant2262) + } + + variant2471 = MakePublicOplogEntrySetRetryPolicy(SetRetryPolicyParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, golem_api_retry.NamedRetryPolicy{value2199, uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (32 + 2*4)))), golem_api_retry.RetryPredicate{result2230}, golem_api_retry.RetryPolicy{result2263}}}) + + case 40: + value2264 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 1*4)))) + + variant2471 = MakePublicOplogEntryRemoveRetryPolicy(RemoveRetryPolicyParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, value2264}) + + case 41: + var variant2265 QueuedCardEvent + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + variant2265 = MakeQueuedCardEventInstall(QueuedCardEventInstall{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 48)))}}}) + + case 1: + + variant2265 = MakeQueuedCardEventRevoke(QueuedCardEventRevoke{golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 48)))}}}) + + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCardEventQueued(CardEventQueuedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, variant2265}) + + case 42: + var option2266 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + option2266 = witTypes.None[uint64]() + case 1: + + option2266 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))) + default: + panic("unreachable") + } + + variant2471 = MakePublicOplogEntryCardInstalled(CardInstalledParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, option2266, golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 48))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))}}}) + + case 43: + + variant2471 = MakePublicOplogEntryCardInstallFailed(CardInstallFailedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 48)))}}, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 56))))}) + + case 44: + + variant2471 = MakePublicOplogEntryCardRevoked(CardRevokedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 48)))}}}) + + case 45: + + variant2471 = MakePublicOplogEntryCardExpired(CardExpiredParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, golem_core_types.CardId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 40)))}}}) + + case 46: + result2442 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 1*4))))), index*(56+22*4)) + var variant2430 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2430 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant2430 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option2273 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2273 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2268 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2268 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2267 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2267 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2267 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2267 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2268 = witTypes.Some[golem_core_types.NumericBound](variant2267) + default: + panic("unreachable") + } + var option2270 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2270 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2269 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2269 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2269 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2269 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2270 = witTypes.Some[golem_core_types.NumericBound](variant2269) + default: + panic("unreachable") + } + var option2272 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2272 = witTypes.None[string]() + case 1: + value2271 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2272 = witTypes.Some[string](value2271) + default: + panic("unreachable") + } + + option2273 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2268, option2270, option2272}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS8Type(option2273) + + case 3: + var option2280 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2280 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2275 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2275 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2274 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2274 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2274 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2274 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2275 = witTypes.Some[golem_core_types.NumericBound](variant2274) + default: + panic("unreachable") + } + var option2277 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2277 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2276 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2276 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2276 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2276 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2277 = witTypes.Some[golem_core_types.NumericBound](variant2276) + default: + panic("unreachable") + } + var option2279 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2279 = witTypes.None[string]() + case 1: + value2278 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2279 = witTypes.Some[string](value2278) + default: + panic("unreachable") + } + + option2280 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2275, option2277, option2279}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS16Type(option2280) + + case 4: + var option2287 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2287 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2282 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2282 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2281 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2281 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2281 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2281 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2282 = witTypes.Some[golem_core_types.NumericBound](variant2281) + default: + panic("unreachable") + } + var option2284 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2284 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2283 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2283 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2283 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2283 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2284 = witTypes.Some[golem_core_types.NumericBound](variant2283) + default: + panic("unreachable") + } + var option2286 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2286 = witTypes.None[string]() + case 1: + value2285 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2286 = witTypes.Some[string](value2285) + default: + panic("unreachable") + } + + option2287 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2282, option2284, option2286}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS32Type(option2287) + + case 5: + var option2294 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2294 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2289 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2289 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2288 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2288 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2288 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2288 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2289 = witTypes.Some[golem_core_types.NumericBound](variant2288) + default: + panic("unreachable") + } + var option2291 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2291 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2290 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2290 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2290 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2290 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2291 = witTypes.Some[golem_core_types.NumericBound](variant2290) + default: + panic("unreachable") + } + var option2293 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2293 = witTypes.None[string]() + case 1: + value2292 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2293 = witTypes.Some[string](value2292) + default: + panic("unreachable") + } + + option2294 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2289, option2291, option2293}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyS64Type(option2294) + + case 6: + var option2301 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2301 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2296 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2296 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2295 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2295 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2295 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2295 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2296 = witTypes.Some[golem_core_types.NumericBound](variant2295) + default: + panic("unreachable") + } + var option2298 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2298 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2297 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2297 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2297 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2297 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2298 = witTypes.Some[golem_core_types.NumericBound](variant2297) + default: + panic("unreachable") + } + var option2300 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2300 = witTypes.None[string]() + case 1: + value2299 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2300 = witTypes.Some[string](value2299) + default: + panic("unreachable") + } + + option2301 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2296, option2298, option2300}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU8Type(option2301) + + case 7: + var option2308 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2308 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2303 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2303 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2302 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2302 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2302 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2302 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2303 = witTypes.Some[golem_core_types.NumericBound](variant2302) + default: + panic("unreachable") + } + var option2305 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2305 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2304 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2304 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2304 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2304 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2305 = witTypes.Some[golem_core_types.NumericBound](variant2304) + default: + panic("unreachable") + } + var option2307 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2307 = witTypes.None[string]() + case 1: + value2306 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2307 = witTypes.Some[string](value2306) + default: + panic("unreachable") + } + + option2308 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2303, option2305, option2307}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU16Type(option2308) + + case 8: + var option2315 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2315 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2310 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2310 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2309 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2309 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2309 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2309 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2310 = witTypes.Some[golem_core_types.NumericBound](variant2309) + default: + panic("unreachable") + } + var option2312 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2312 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2311 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2311 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2311 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2311 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2312 = witTypes.Some[golem_core_types.NumericBound](variant2311) + default: + panic("unreachable") + } + var option2314 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2314 = witTypes.None[string]() + case 1: + value2313 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2314 = witTypes.Some[string](value2313) + default: + panic("unreachable") + } + + option2315 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2310, option2312, option2314}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU32Type(option2315) + + case 9: + var option2322 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2322 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2317 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2317 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2316 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2316 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2316 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2316 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2317 = witTypes.Some[golem_core_types.NumericBound](variant2316) + default: + panic("unreachable") + } + var option2319 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2319 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2318 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2318 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2318 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2318 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2319 = witTypes.Some[golem_core_types.NumericBound](variant2318) + default: + panic("unreachable") + } + var option2321 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2321 = witTypes.None[string]() + case 1: + value2320 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2321 = witTypes.Some[string](value2320) + default: + panic("unreachable") + } + + option2322 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2317, option2319, option2321}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyU64Type(option2322) + + case 10: + var option2329 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2329 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2324 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2324 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2323 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2323 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2323 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2323 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2324 = witTypes.Some[golem_core_types.NumericBound](variant2323) + default: + panic("unreachable") + } + var option2326 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2326 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2325 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2325 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2325 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2325 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2326 = witTypes.Some[golem_core_types.NumericBound](variant2325) + default: + panic("unreachable") + } + var option2328 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2328 = witTypes.None[string]() + case 1: + value2327 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2328 = witTypes.Some[string](value2327) + default: + panic("unreachable") + } + + option2329 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2324, option2326, option2328}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyF32Type(option2329) + + case 11: + var option2336 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2336 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option2331 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2331 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2330 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant2330 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant2330 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant2330 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option2331 = witTypes.Some[golem_core_types.NumericBound](variant2330) + default: + panic("unreachable") + } + var option2333 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option2333 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant2332 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant2332 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant2332 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant2332 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option2333 = witTypes.Some[golem_core_types.NumericBound](variant2332) + default: + panic("unreachable") + } + var option2335 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option2335 = witTypes.None[string]() + case 1: + value2334 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option2335 = witTypes.Some[string](value2334) + default: + panic("unreachable") + } + + option2336 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option2331, option2333, option2335}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyF64Type(option2336) + + case 12: + + variant2430 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant2430 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result2349 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value2337 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2339 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option2339 = witTypes.None[string]() + case 1: + value2338 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option2339 = witTypes.Some[string](value2338) + default: + panic("unreachable") + } + result2341 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value2340 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2341 = append(result2341, value2340) + } + + result2343 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value2342 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2343 = append(result2343, value2342) + } + + var option2345 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option2345 = witTypes.None[string]() + case 1: + value2344 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option2345 = witTypes.Some[string](value2344) + default: + panic("unreachable") + } + var option2348 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option2348 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2347 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant2347 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2347 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2347 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2346 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant2347 = golem_core_types.MakeRoleOther(value2346) + + default: + panic("unreachable") + } + + option2348 = witTypes.Some[golem_core_types.Role](variant2347) + default: + panic("unreachable") + } + + result2349 = append(result2349, golem_core_types.NamedFieldType{value2337, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option2339, result2341, result2343, option2345, option2348}}) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyRecordType(result2349) + + case 15: + result2363 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value2350 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2351 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2351 = witTypes.None[int32]() + case 1: + + option2351 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option2353 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2353 = witTypes.None[string]() + case 1: + value2352 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2353 = witTypes.Some[string](value2352) + default: + panic("unreachable") + } + result2355 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2354 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2355 = append(result2355, value2354) + } + + result2357 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value2356 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2357 = append(result2357, value2356) + } + + var option2359 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option2359 = witTypes.None[string]() + case 1: + value2358 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option2359 = witTypes.Some[string](value2358) + default: + panic("unreachable") + } + var option2362 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option2362 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2361 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant2361 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2361 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2361 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2360 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant2361 = golem_core_types.MakeRoleOther(value2360) + + default: + panic("unreachable") + } + + option2362 = witTypes.Some[golem_core_types.Role](variant2361) + default: + panic("unreachable") + } + + result2363 = append(result2363, golem_core_types.VariantCaseType{value2350, option2351, golem_core_types.MetadataEnvelope{option2353, result2355, result2357, option2359, option2362}}) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyVariantType(result2363) + + case 16: + result2365 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2364 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2365 = append(result2365, value2364) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyEnumType(result2365) + + case 17: + result2367 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value2366 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2367 = append(result2367, value2366) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyFlagsType(result2367) + + case 18: + result2368 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2368 = append(result2368, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyTupleType(result2368) + + case 19: + + variant2430 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant2430 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant2430 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant2430 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option2369 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2369 = witTypes.None[int32]() + case 1: + + option2369 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option2370 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option2370 = witTypes.None[int32]() + case 1: + + option2370 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option2369, option2370}) + + case 24: + var option2373 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2373 = witTypes.None[[]string]() + case 1: + result2372 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2371 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2372 = append(result2372, value2371) + } + + option2373 = witTypes.Some[[]string](result2372) + default: + panic("unreachable") + } + var option2374 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2374 = witTypes.None[uint32]() + case 1: + + option2374 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2375 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2375 = witTypes.None[uint32]() + case 1: + + option2375 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option2377 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option2377 = witTypes.None[string]() + case 1: + value2376 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option2377 = witTypes.Some[string](value2376) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option2373, option2374, option2375, option2377}) + + case 25: + var option2380 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2380 = witTypes.None[[]string]() + case 1: + result2379 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2378 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2379 = append(result2379, value2378) + } + + option2380 = witTypes.Some[[]string](result2379) + default: + panic("unreachable") + } + var option2381 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2381 = witTypes.None[uint32]() + case 1: + + option2381 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option2382 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option2382 = witTypes.None[uint32]() + case 1: + + option2382 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option2380, option2381, option2382}) + + case 26: + var option2385 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2385 = witTypes.None[[]string]() + case 1: + result2384 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2383 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2384 = append(result2384, value2383) + } + + option2385 = witTypes.Some[[]string](result2384) + default: + panic("unreachable") + } + var option2388 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2388 = witTypes.None[[]string]() + case 1: + result2387 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value2386 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2387 = append(result2387, value2386) + } + + option2388 = witTypes.Some[[]string](result2387) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option2385, option2388}) + + case 27: + var option2391 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2391 = witTypes.None[[]string]() + case 1: + result2390 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value2389 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2390 = append(result2390, value2389) + } + + option2391 = witTypes.Some[[]string](result2390) + default: + panic("unreachable") + } + var option2394 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option2394 = witTypes.None[[]string]() + case 1: + result2393 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value2392 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2393 = append(result2393, value2392) + } + + option2394 = witTypes.Some[[]string](result2393) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option2391, option2394}) + + case 28: + + variant2430 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant2430 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value2395 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result2397 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value2396 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2397 = append(result2397, value2396) + } + + var option2399 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option2399 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2398 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option2399 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value2398}) + default: + panic("unreachable") + } + var option2401 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option2401 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value2400 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option2401 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value2400}) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value2395, result2397, option2399, option2401}) + + case 31: + result2423 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value2402 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant2411 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value2403 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRulePrefix(value2403) + + case 1: + value2404 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleSuffix(value2404) + + case 2: + value2405 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleContains(value2405) + + case 3: + value2406 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleRegex(value2406) + + case 4: + value2407 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option2409 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option2409 = witTypes.None[string]() + case 1: + value2408 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option2409 = witTypes.Some[string](value2408) + default: + panic("unreachable") + } + + variant2411 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value2407, option2409}) + + case 5: + value2410 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant2411 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value2410) + + default: + panic("unreachable") + } + var option2413 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option2413 = witTypes.None[string]() + case 1: + value2412 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option2413 = witTypes.Some[string](value2412) + default: + panic("unreachable") + } + result2415 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value2414 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2415 = append(result2415, value2414) + } + + result2417 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value2416 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2417 = append(result2417, value2416) + } + + var option2419 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option2419 = witTypes.None[string]() + case 1: + value2418 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option2419 = witTypes.Some[string](value2418) + default: + panic("unreachable") + } + var option2422 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option2422 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2421 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant2421 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2421 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2421 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2420 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant2421 = golem_core_types.MakeRoleOther(value2420) + + default: + panic("unreachable") + } + + option2422 = witTypes.Some[golem_core_types.Role](variant2421) + default: + panic("unreachable") + } + + result2423 = append(result2423, golem_core_types.UnionBranch{value2402, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant2411, golem_core_types.MetadataEnvelope{option2413, result2415, result2417, option2419, option2422}}) + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result2423}) + + case 32: + var option2425 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option2425 = witTypes.None[string]() + case 1: + value2424 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option2425 = witTypes.Some[string](value2424) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option2425}) + + case 33: + var option2427 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2427 = witTypes.None[string]() + case 1: + value2426 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option2427 = witTypes.Some[string](value2426) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option2427}) + + case 34: + var option2428 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2428 = witTypes.None[int32]() + case 1: + + option2428 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyFutureType(option2428) + + case 35: + var option2429 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2429 = witTypes.None[int32]() + case 1: + + option2429 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2430 = golem_core_types.MakeSchemaTypeBodyStreamType(option2429) + + default: + panic("unreachable") + } + var option2432 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option2432 = witTypes.None[string]() + case 1: + value2431 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option2432 = witTypes.Some[string](value2431) + default: + panic("unreachable") + } + result2434 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value2433 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2434 = append(result2434, value2433) + } + + result2436 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value2435 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result2436 = append(result2436, value2435) + } + + var option2438 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option2438 = witTypes.None[string]() + case 1: + value2437 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option2438 = witTypes.Some[string](value2437) + default: + panic("unreachable") + } + var option2441 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option2441 = witTypes.None[golem_core_types.Role]() + case 1: + var variant2440 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant2440 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant2440 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant2440 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value2439 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant2440 = golem_core_types.MakeRoleOther(value2439) + + default: + panic("unreachable") + } + + option2441 = witTypes.Some[golem_core_types.Role](variant2440) + default: + panic("unreachable") + } + + result2442 = append(result2442, golem_core_types.SchemaTypeNode{variant2430, golem_core_types.MetadataEnvelope{option2432, result2434, result2436, option2438, option2441}}) + } + + result2446 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 4*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 3*4))))), index*(6*4)) + value2443 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option2445 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option2445 = witTypes.None[string]() + case 1: + value2444 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option2445 = witTypes.Some[string](value2444) + default: + panic("unreachable") + } + + result2446 = append(result2446, golem_core_types.SchemaTypeDef{value2443, option2445, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result2470 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 7*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))))), index*(16+4*4)) + var variant2469 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant2469 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant2469 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant2469 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant2469 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant2469 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant2469 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant2469 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant2469 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant2469 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant2469 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant2469 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant2469 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value2447 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeStringValue(value2447) + + case 13: + result2448 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2448 = append(result2448, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeRecordValue(result2448) + + case 14: + var option2449 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2449 = witTypes.None[int32]() + case 1: + + option2449 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option2449}) + + case 15: + + variant2469 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result2450 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result2450 = append(result2450, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeFlagsValue(result2450) + + case 17: + result2451 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2451 = append(result2451, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeTupleValue(result2451) + + case 18: + result2452 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2452 = append(result2452, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeListValue(result2452) + + case 19: + result2453 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2453 = append(result2453, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeFixedListValue(result2453) + + case 20: + result2454 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result2454 = append(result2454, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant2469 = golem_core_types.MakeSchemaValueNodeMapValue(result2454) + + case 21: + var option2455 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option2455 = witTypes.None[int32]() + case 1: + + option2455 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeOptionValue(option2455) + + case 22: + var variant2458 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option2456 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2456 = witTypes.None[int32]() + case 1: + + option2456 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2458 = golem_core_types.MakeResultValuePayloadOkValue(option2456) + + case 1: + var option2457 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option2457 = witTypes.None[int32]() + case 1: + + option2457 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant2458 = golem_core_types.MakeResultValuePayloadErrValue(option2457) + + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeResultValue(variant2458) + + case 23: + value2459 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2461 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2461 = witTypes.None[string]() + case 1: + value2460 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2461 = witTypes.Some[string](value2460) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value2459, option2461}) + + case 24: + value2462 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option2464 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option2464 = witTypes.None[string]() + case 1: + value2463 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option2464 = witTypes.Some[string](value2463) + default: + panic("unreachable") + } + + variant2469 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value2462, option2464}) + + case 25: + value2465 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodePathValue(value2465) + + case 26: + value2466 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeUrlValue(value2466) + + case 27: + + variant2469 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant2469 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value2467 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value2467}) + + case 30: + value2468 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant2469 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value2468, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant2469 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant2469 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result2470 = append(result2470, variant2469) + } + + variant2471 = MakePublicOplogEntryHostStreamFrame(HostStreamFrameParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result2442, result2446, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 5*4)))}, golem_core_types.SchemaValueTree{result2470, *(*int32)(unsafe.Add(unsafe.Pointer(base), (40 + 8*4)))}}}) + + case 47: + + variant2471 = MakePublicOplogEntryCompletionDiscarded(CompletionDiscardedParameters{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))}) + + default: + panic("unreachable") + } + + result2472 = append(result2472, witTypes.Tuple2[uint64, PublicOplogEntry]{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), variant2471}) + } + + option2473 = witTypes.Some[[]witTypes.Tuple2[uint64, PublicOplogEntry]](result2472) + default: + panic("unreachable") + } + result2474 := option2473 + return result2474 + +} diff --git a/sdks/go/internal/wit/golem_api_retry/empty.s b/sdks/go/internal/wit/golem_api_retry/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_api_retry/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_api_retry/wit_bindings.go b/sdks/go/internal/wit/golem_api_retry/wit_bindings.go new file mode 100644 index 0000000000..0216280cac --- /dev/null +++ b/sdks/go/internal/wit/golem_api_retry/wit_bindings.go @@ -0,0 +1,2729 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_api_retry + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Duration = uint64 + +const ( + PredicateValueText uint8 = 0 + PredicateValueInteger uint8 = 1 + PredicateValueBoolean uint8 = 2 +) + +// ── Predicate value ────────────────────────────────────────────── +// Dynamic value for property comparisons in retry predicates +type PredicateValue struct { + tag uint8 + value any +} + +func (self PredicateValue) Tag() uint8 { + return self.tag +} + +func (self PredicateValue) Text() string { + if self.tag != PredicateValueText { + panic("tag mismatch") + } + return self.value.(string) +} +func (self PredicateValue) Integer() int64 { + if self.tag != PredicateValueInteger { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self PredicateValue) Boolean() bool { + if self.tag != PredicateValueBoolean { + panic("tag mismatch") + } + return self.value.(bool) +} + +func MakePredicateValueText(value string) PredicateValue { + return PredicateValue{PredicateValueText, value} +} +func MakePredicateValueInteger(value int64) PredicateValue { + return PredicateValue{PredicateValueInteger, value} +} +func MakePredicateValueBoolean(value bool) PredicateValue { + return PredicateValue{PredicateValueBoolean, value} +} + +// ── Predicate tree (flattened) ─────────────────────────────────── +// Index into a retry-predicate's node list +type PredicateNodeIndex = int32 + +type PropertyComparison struct { + PropertyName string + Value PredicateValue +} + +type PropertySetCheck struct { + PropertyName string + Values []PredicateValue +} + +type PropertyPattern struct { + PropertyName string + Pattern string +} + +const ( + PredicateNodePropEq uint8 = 0 + PredicateNodePropNeq uint8 = 1 + PredicateNodePropGt uint8 = 2 + PredicateNodePropGte uint8 = 3 + PredicateNodePropLt uint8 = 4 + PredicateNodePropLte uint8 = 5 + PredicateNodePropExists uint8 = 6 + PredicateNodePropIn uint8 = 7 + PredicateNodePropMatches uint8 = 8 + PredicateNodePropStartsWith uint8 = 9 + PredicateNodePropContains uint8 = 10 + PredicateNodePredAnd uint8 = 11 + PredicateNodePredOr uint8 = 12 + PredicateNodePredNot uint8 = 13 + PredicateNodePredTrue uint8 = 14 + PredicateNodePredFalse uint8 = 15 +) + +type PredicateNode struct { + tag uint8 + value any +} + +func (self PredicateNode) Tag() uint8 { + return self.tag +} + +func (self PredicateNode) PropEq() PropertyComparison { + if self.tag != PredicateNodePropEq { + panic("tag mismatch") + } + return self.value.(PropertyComparison) +} +func (self PredicateNode) PropNeq() PropertyComparison { + if self.tag != PredicateNodePropNeq { + panic("tag mismatch") + } + return self.value.(PropertyComparison) +} +func (self PredicateNode) PropGt() PropertyComparison { + if self.tag != PredicateNodePropGt { + panic("tag mismatch") + } + return self.value.(PropertyComparison) +} +func (self PredicateNode) PropGte() PropertyComparison { + if self.tag != PredicateNodePropGte { + panic("tag mismatch") + } + return self.value.(PropertyComparison) +} +func (self PredicateNode) PropLt() PropertyComparison { + if self.tag != PredicateNodePropLt { + panic("tag mismatch") + } + return self.value.(PropertyComparison) +} +func (self PredicateNode) PropLte() PropertyComparison { + if self.tag != PredicateNodePropLte { + panic("tag mismatch") + } + return self.value.(PropertyComparison) +} +func (self PredicateNode) PropExists() string { + if self.tag != PredicateNodePropExists { + panic("tag mismatch") + } + return self.value.(string) +} +func (self PredicateNode) PropIn() PropertySetCheck { + if self.tag != PredicateNodePropIn { + panic("tag mismatch") + } + return self.value.(PropertySetCheck) +} +func (self PredicateNode) PropMatches() PropertyPattern { + if self.tag != PredicateNodePropMatches { + panic("tag mismatch") + } + return self.value.(PropertyPattern) +} +func (self PredicateNode) PropStartsWith() PropertyPattern { + if self.tag != PredicateNodePropStartsWith { + panic("tag mismatch") + } + return self.value.(PropertyPattern) +} +func (self PredicateNode) PropContains() PropertyPattern { + if self.tag != PredicateNodePropContains { + panic("tag mismatch") + } + return self.value.(PropertyPattern) +} +func (self PredicateNode) PredAnd() witTypes.Tuple2[int32, int32] { + if self.tag != PredicateNodePredAnd { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple2[int32, int32]) +} +func (self PredicateNode) PredOr() witTypes.Tuple2[int32, int32] { + if self.tag != PredicateNodePredOr { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple2[int32, int32]) +} +func (self PredicateNode) PredNot() int32 { + if self.tag != PredicateNodePredNot { + panic("tag mismatch") + } + return self.value.(int32) +} + +func MakePredicateNodePropEq(value PropertyComparison) PredicateNode { + return PredicateNode{PredicateNodePropEq, value} +} +func MakePredicateNodePropNeq(value PropertyComparison) PredicateNode { + return PredicateNode{PredicateNodePropNeq, value} +} +func MakePredicateNodePropGt(value PropertyComparison) PredicateNode { + return PredicateNode{PredicateNodePropGt, value} +} +func MakePredicateNodePropGte(value PropertyComparison) PredicateNode { + return PredicateNode{PredicateNodePropGte, value} +} +func MakePredicateNodePropLt(value PropertyComparison) PredicateNode { + return PredicateNode{PredicateNodePropLt, value} +} +func MakePredicateNodePropLte(value PropertyComparison) PredicateNode { + return PredicateNode{PredicateNodePropLte, value} +} +func MakePredicateNodePropExists(value string) PredicateNode { + return PredicateNode{PredicateNodePropExists, value} +} +func MakePredicateNodePropIn(value PropertySetCheck) PredicateNode { + return PredicateNode{PredicateNodePropIn, value} +} +func MakePredicateNodePropMatches(value PropertyPattern) PredicateNode { + return PredicateNode{PredicateNodePropMatches, value} +} +func MakePredicateNodePropStartsWith(value PropertyPattern) PredicateNode { + return PredicateNode{PredicateNodePropStartsWith, value} +} +func MakePredicateNodePropContains(value PropertyPattern) PredicateNode { + return PredicateNode{PredicateNodePropContains, value} +} +func MakePredicateNodePredAnd(value witTypes.Tuple2[int32, int32]) PredicateNode { + return PredicateNode{PredicateNodePredAnd, value} +} +func MakePredicateNodePredOr(value witTypes.Tuple2[int32, int32]) PredicateNode { + return PredicateNode{PredicateNodePredOr, value} +} +func MakePredicateNodePredNot(value int32) PredicateNode { + return PredicateNode{PredicateNodePredNot, value} +} +func MakePredicateNodePredTrue() PredicateNode { + return PredicateNode{PredicateNodePredTrue, nil} +} +func MakePredicateNodePredFalse() PredicateNode { + return PredicateNode{PredicateNodePredFalse, nil} +} + +// A composable predicate tree for matching retry contexts. +// Root is nodes[0]. Children referenced by predicate-node-index. +type RetryPredicate struct { + Nodes []PredicateNode +} + +// ── Policy tree (flattened) ────────────────────────────────────── +// Index into a retry-policy's node list +type PolicyNodeIndex = int32 + +type ExponentialConfig struct { + BaseDelay uint64 + Factor float64 +} + +type FibonacciConfig struct { + First uint64 + Second uint64 +} + +type CountBoxConfig struct { + MaxRetries uint32 + Inner int32 +} + +type TimeBoxConfig struct { + Limit uint64 + Inner int32 +} + +type ClampConfig struct { + MinDelay uint64 + MaxDelay uint64 + Inner int32 +} + +type AddDelayConfig struct { + Delay uint64 + Inner int32 +} + +type JitterConfig struct { + Factor float64 + Inner int32 +} + +// filtered-config embeds a full retry-predicate inline (self-contained) +type FilteredConfig struct { + Predicate RetryPredicate + Inner int32 +} + +const ( + PolicyNodePeriodic uint8 = 0 + PolicyNodeExponential uint8 = 1 + PolicyNodeFibonacci uint8 = 2 + PolicyNodeImmediate uint8 = 3 + PolicyNodeNever uint8 = 4 + PolicyNodeCountBox uint8 = 5 + PolicyNodeTimeBox uint8 = 6 + PolicyNodeClampDelay uint8 = 7 + PolicyNodeAddDelay uint8 = 8 + PolicyNodeJitter uint8 = 9 + PolicyNodeFilteredOn uint8 = 10 + PolicyNodeAndThen uint8 = 11 + PolicyNodePolicyUnion uint8 = 12 + PolicyNodePolicyIntersect uint8 = 13 +) + +type PolicyNode struct { + tag uint8 + value any +} + +func (self PolicyNode) Tag() uint8 { + return self.tag +} + +func (self PolicyNode) Periodic() uint64 { + if self.tag != PolicyNodePeriodic { + panic("tag mismatch") + } + return self.value.(uint64) +} +func (self PolicyNode) Exponential() ExponentialConfig { + if self.tag != PolicyNodeExponential { + panic("tag mismatch") + } + return self.value.(ExponentialConfig) +} +func (self PolicyNode) Fibonacci() FibonacciConfig { + if self.tag != PolicyNodeFibonacci { + panic("tag mismatch") + } + return self.value.(FibonacciConfig) +} +func (self PolicyNode) CountBox() CountBoxConfig { + if self.tag != PolicyNodeCountBox { + panic("tag mismatch") + } + return self.value.(CountBoxConfig) +} +func (self PolicyNode) TimeBox() TimeBoxConfig { + if self.tag != PolicyNodeTimeBox { + panic("tag mismatch") + } + return self.value.(TimeBoxConfig) +} +func (self PolicyNode) ClampDelay() ClampConfig { + if self.tag != PolicyNodeClampDelay { + panic("tag mismatch") + } + return self.value.(ClampConfig) +} +func (self PolicyNode) AddDelay() AddDelayConfig { + if self.tag != PolicyNodeAddDelay { + panic("tag mismatch") + } + return self.value.(AddDelayConfig) +} +func (self PolicyNode) Jitter() JitterConfig { + if self.tag != PolicyNodeJitter { + panic("tag mismatch") + } + return self.value.(JitterConfig) +} +func (self PolicyNode) FilteredOn() FilteredConfig { + if self.tag != PolicyNodeFilteredOn { + panic("tag mismatch") + } + return self.value.(FilteredConfig) +} +func (self PolicyNode) AndThen() witTypes.Tuple2[int32, int32] { + if self.tag != PolicyNodeAndThen { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple2[int32, int32]) +} +func (self PolicyNode) PolicyUnion() witTypes.Tuple2[int32, int32] { + if self.tag != PolicyNodePolicyUnion { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple2[int32, int32]) +} +func (self PolicyNode) PolicyIntersect() witTypes.Tuple2[int32, int32] { + if self.tag != PolicyNodePolicyIntersect { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple2[int32, int32]) +} + +func MakePolicyNodePeriodic(value uint64) PolicyNode { + return PolicyNode{PolicyNodePeriodic, value} +} +func MakePolicyNodeExponential(value ExponentialConfig) PolicyNode { + return PolicyNode{PolicyNodeExponential, value} +} +func MakePolicyNodeFibonacci(value FibonacciConfig) PolicyNode { + return PolicyNode{PolicyNodeFibonacci, value} +} +func MakePolicyNodeImmediate() PolicyNode { + return PolicyNode{PolicyNodeImmediate, nil} +} +func MakePolicyNodeNever() PolicyNode { + return PolicyNode{PolicyNodeNever, nil} +} +func MakePolicyNodeCountBox(value CountBoxConfig) PolicyNode { + return PolicyNode{PolicyNodeCountBox, value} +} +func MakePolicyNodeTimeBox(value TimeBoxConfig) PolicyNode { + return PolicyNode{PolicyNodeTimeBox, value} +} +func MakePolicyNodeClampDelay(value ClampConfig) PolicyNode { + return PolicyNode{PolicyNodeClampDelay, value} +} +func MakePolicyNodeAddDelay(value AddDelayConfig) PolicyNode { + return PolicyNode{PolicyNodeAddDelay, value} +} +func MakePolicyNodeJitter(value JitterConfig) PolicyNode { + return PolicyNode{PolicyNodeJitter, value} +} +func MakePolicyNodeFilteredOn(value FilteredConfig) PolicyNode { + return PolicyNode{PolicyNodeFilteredOn, value} +} +func MakePolicyNodeAndThen(value witTypes.Tuple2[int32, int32]) PolicyNode { + return PolicyNode{PolicyNodeAndThen, value} +} +func MakePolicyNodePolicyUnion(value witTypes.Tuple2[int32, int32]) PolicyNode { + return PolicyNode{PolicyNodePolicyUnion, value} +} +func MakePolicyNodePolicyIntersect(value witTypes.Tuple2[int32, int32]) PolicyNode { + return PolicyNode{PolicyNodePolicyIntersect, value} +} + +// A composable retry policy tree. +// Root is nodes[0]. Children referenced by policy-node-index. +type RetryPolicy struct { + Nodes []PolicyNode +} + +// ── Named policy rule ──────────────────────────────────────────── +// A named retry policy rule: predicate selects when it applies, +// policy defines the retry strategy, priority controls evaluation order +// (higher = checked first). +type NamedRetryPolicy struct { + Name string + Priority uint32 + Predicate RetryPredicate + Policy RetryPolicy +} + +//go:wasmimport golem:api/retry@1.5.0 get-retry-policies +func wasm_import_get_retry_policies(arg0 uintptr) + +func GetRetryPolicies() []NamedRetryPolicy { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_get_retry_policies(returnArea) + result62 := make([]NamedRetryPolicy, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(7*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + result28 := make([]PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))))), index*(16+4*4)) + var variant27 PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant = MakePredicateValueText(value1) + + case 1: + + variant = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropEq(PropertyComparison{value0, variant}) + + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant4 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant4 = MakePredicateValueText(value3) + + case 1: + + variant4 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant4 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropNeq(PropertyComparison{value2, variant4}) + + case 2: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant7 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant7 = MakePredicateValueText(value6) + + case 1: + + variant7 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant7 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropGt(PropertyComparison{value5, variant7}) + + case 3: + value8 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant10 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant10 = MakePredicateValueText(value9) + + case 1: + + variant10 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant10 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropGte(PropertyComparison{value8, variant10}) + + case 4: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant13 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant13 = MakePredicateValueText(value12) + + case 1: + + variant13 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant13 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropLt(PropertyComparison{value11, variant13}) + + case 5: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant16 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant16 = MakePredicateValueText(value15) + + case 1: + + variant16 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant16 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropLte(PropertyComparison{value14, variant16}) + + case 6: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant27 = MakePredicateNodePropExists(value17) + + case 7: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result := make([]PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant20 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value19 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant20 = MakePredicateValueText(value19) + + case 1: + + variant20 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant20 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result = append(result, variant20) + } + + variant27 = MakePredicateNodePropIn(PropertySetCheck{value18, result}) + + case 8: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant27 = MakePredicateNodePropMatches(PropertyPattern{value21, value22}) + + case 9: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value24 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant27 = MakePredicateNodePropStartsWith(PropertyPattern{value23, value24}) + + case 10: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant27 = MakePredicateNodePropContains(PropertyPattern{value25, value26}) + + case 11: + + variant27 = MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant27 = MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant27 = MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant27 = MakePredicateNodePredTrue() + + case 15: + + variant27 = MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result28 = append(result28, variant27) + } + + result61 := make([]PolicyNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))))), index*32) + var variant60 PolicyNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant60 = MakePolicyNodePeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 1: + + variant60 = MakePolicyNodeExponential(ExponentialConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*float64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 2: + + variant60 = MakePolicyNodeFibonacci(FibonacciConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 3: + + variant60 = MakePolicyNodeImmediate() + + case 4: + + variant60 = MakePolicyNodeNever() + + case 5: + + variant60 = MakePolicyNodeCountBox(CountBoxConfig{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 6: + + variant60 = MakePolicyNodeTimeBox(TimeBoxConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 7: + + variant60 = MakePolicyNodeClampDelay(ClampConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 8: + + variant60 = MakePolicyNodeAddDelay(AddDelayConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 9: + + variant60 = MakePolicyNodeJitter(JitterConfig{*(*float64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 10: + result59 := make([]PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(16+4*4)) + var variant58 PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value29 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant31 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant31 = MakePredicateValueText(value30) + + case 1: + + variant31 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant31 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropEq(PropertyComparison{value29, variant31}) + + case 1: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant34 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value33 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant34 = MakePredicateValueText(value33) + + case 1: + + variant34 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant34 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropNeq(PropertyComparison{value32, variant34}) + + case 2: + value35 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant37 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant37 = MakePredicateValueText(value36) + + case 1: + + variant37 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant37 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropGt(PropertyComparison{value35, variant37}) + + case 3: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant40 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant40 = MakePredicateValueText(value39) + + case 1: + + variant40 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant40 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropGte(PropertyComparison{value38, variant40}) + + case 4: + value41 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant43 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant43 = MakePredicateValueText(value42) + + case 1: + + variant43 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant43 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropLt(PropertyComparison{value41, variant43}) + + case 5: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant46 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value45 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant46 = MakePredicateValueText(value45) + + case 1: + + variant46 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant46 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropLte(PropertyComparison{value44, variant46}) + + case 6: + value47 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant58 = MakePredicateNodePropExists(value47) + + case 7: + value48 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result51 := make([]PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant50 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value49 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant50 = MakePredicateValueText(value49) + + case 1: + + variant50 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant50 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result51 = append(result51, variant50) + } + + variant58 = MakePredicateNodePropIn(PropertySetCheck{value48, result51}) + + case 8: + value52 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value53 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant58 = MakePredicateNodePropMatches(PropertyPattern{value52, value53}) + + case 9: + value54 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value55 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant58 = MakePredicateNodePropStartsWith(PropertyPattern{value54, value55}) + + case 10: + value56 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value57 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant58 = MakePredicateNodePropContains(PropertyPattern{value56, value57}) + + case 11: + + variant58 = MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant58 = MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant58 = MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant58 = MakePredicateNodePredTrue() + + case 15: + + variant58 = MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result59 = append(result59, variant58) + } + + variant60 = MakePolicyNodeFilteredOn(FilteredConfig{RetryPredicate{result59}, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 11: + + variant60 = MakePolicyNodeAndThen(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant60 = MakePolicyNodePolicyUnion(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant60 = MakePolicyNodePolicyIntersect(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + default: + panic("unreachable") + } + + result61 = append(result61, variant60) + } + + result62 = append(result62, NamedRetryPolicy{value, uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))), RetryPredicate{result28}, RetryPolicy{result61}}) + } + + result63 := result62 + return result63 + +} + +//go:wasmimport golem:api/retry@1.5.0 get-retry-policy-by-name +func wasm_import_get_retry_policy_by_name(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func GetRetryPolicyByName(name string) witTypes.Option[NamedRetryPolicy] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (8 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_get_retry_policy_by_name(uintptr(utf8), uint32(len(name)), returnArea) + var option witTypes.Option[NamedRetryPolicy] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[NamedRetryPolicy]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + result28 := make([]PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4))))), index*(16+4*4)) + var variant27 PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant = MakePredicateValueText(value1) + + case 1: + + variant = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropEq(PropertyComparison{value0, variant}) + + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant4 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant4 = MakePredicateValueText(value3) + + case 1: + + variant4 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant4 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropNeq(PropertyComparison{value2, variant4}) + + case 2: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant7 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant7 = MakePredicateValueText(value6) + + case 1: + + variant7 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant7 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropGt(PropertyComparison{value5, variant7}) + + case 3: + value8 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant10 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant10 = MakePredicateValueText(value9) + + case 1: + + variant10 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant10 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropGte(PropertyComparison{value8, variant10}) + + case 4: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant13 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant13 = MakePredicateValueText(value12) + + case 1: + + variant13 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant13 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropLt(PropertyComparison{value11, variant13}) + + case 5: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant16 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant16 = MakePredicateValueText(value15) + + case 1: + + variant16 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant16 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant27 = MakePredicateNodePropLte(PropertyComparison{value14, variant16}) + + case 6: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant27 = MakePredicateNodePropExists(value17) + + case 7: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result := make([]PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant20 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value19 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant20 = MakePredicateValueText(value19) + + case 1: + + variant20 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant20 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result = append(result, variant20) + } + + variant27 = MakePredicateNodePropIn(PropertySetCheck{value18, result}) + + case 8: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant27 = MakePredicateNodePropMatches(PropertyPattern{value21, value22}) + + case 9: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value24 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant27 = MakePredicateNodePropStartsWith(PropertyPattern{value23, value24}) + + case 10: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant27 = MakePredicateNodePropContains(PropertyPattern{value25, value26}) + + case 11: + + variant27 = MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant27 = MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant27 = MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant27 = MakePredicateNodePredTrue() + + case 15: + + variant27 = MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result28 = append(result28, variant27) + } + + result61 := make([]PolicyNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4))))), index*32) + var variant60 PolicyNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant60 = MakePolicyNodePeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 1: + + variant60 = MakePolicyNodeExponential(ExponentialConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*float64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 2: + + variant60 = MakePolicyNodeFibonacci(FibonacciConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 3: + + variant60 = MakePolicyNodeImmediate() + + case 4: + + variant60 = MakePolicyNodeNever() + + case 5: + + variant60 = MakePolicyNodeCountBox(CountBoxConfig{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 6: + + variant60 = MakePolicyNodeTimeBox(TimeBoxConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 7: + + variant60 = MakePolicyNodeClampDelay(ClampConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 8: + + variant60 = MakePolicyNodeAddDelay(AddDelayConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 9: + + variant60 = MakePolicyNodeJitter(JitterConfig{*(*float64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 10: + result59 := make([]PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(16+4*4)) + var variant58 PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value29 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant31 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant31 = MakePredicateValueText(value30) + + case 1: + + variant31 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant31 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropEq(PropertyComparison{value29, variant31}) + + case 1: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant34 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value33 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant34 = MakePredicateValueText(value33) + + case 1: + + variant34 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant34 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropNeq(PropertyComparison{value32, variant34}) + + case 2: + value35 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant37 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant37 = MakePredicateValueText(value36) + + case 1: + + variant37 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant37 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropGt(PropertyComparison{value35, variant37}) + + case 3: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant40 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant40 = MakePredicateValueText(value39) + + case 1: + + variant40 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant40 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropGte(PropertyComparison{value38, variant40}) + + case 4: + value41 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant43 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant43 = MakePredicateValueText(value42) + + case 1: + + variant43 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant43 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropLt(PropertyComparison{value41, variant43}) + + case 5: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant46 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value45 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant46 = MakePredicateValueText(value45) + + case 1: + + variant46 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant46 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant58 = MakePredicateNodePropLte(PropertyComparison{value44, variant46}) + + case 6: + value47 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant58 = MakePredicateNodePropExists(value47) + + case 7: + value48 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result51 := make([]PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant50 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value49 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant50 = MakePredicateValueText(value49) + + case 1: + + variant50 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant50 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result51 = append(result51, variant50) + } + + variant58 = MakePredicateNodePropIn(PropertySetCheck{value48, result51}) + + case 8: + value52 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value53 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant58 = MakePredicateNodePropMatches(PropertyPattern{value52, value53}) + + case 9: + value54 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value55 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant58 = MakePredicateNodePropStartsWith(PropertyPattern{value54, value55}) + + case 10: + value56 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value57 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant58 = MakePredicateNodePropContains(PropertyPattern{value56, value57}) + + case 11: + + variant58 = MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant58 = MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant58 = MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant58 = MakePredicateNodePredTrue() + + case 15: + + variant58 = MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result59 = append(result59, variant58) + } + + variant60 = MakePolicyNodeFilteredOn(FilteredConfig{RetryPredicate{result59}, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 11: + + variant60 = MakePolicyNodeAndThen(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant60 = MakePolicyNodePolicyUnion(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant60 = MakePolicyNodePolicyIntersect(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + default: + panic("unreachable") + } + + result61 = append(result61, variant60) + } + + option = witTypes.Some[NamedRetryPolicy](NamedRetryPolicy{value, uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))), RetryPredicate{result28}, RetryPolicy{result61}}) + default: + panic("unreachable") + } + result62 := option + return result62 + +} + +//go:wasmimport golem:api/retry@1.5.0 resolve-retry-policy +func wasm_import_resolve_retry_policy(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 uintptr, arg5 uint32, arg6 uintptr) + +func ResolveRetryPolicy(verb string, nounUri string, properties []witTypes.Tuple2[string, PredicateValue]) witTypes.Option[RetryPolicy] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(verb)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData(nounUri)) + pinner.Pin(utf80) + slice := properties + length := uint32(len(slice)) + result3 := witRuntime.Allocate(pinner, uintptr(length*(8+4*4)), 8) + for index, element := range slice { + base := unsafe.Add(result3, index*(8+4*4)) + utf81 := unsafe.Pointer(unsafe.StringData((element).F0)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).F0))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf81))) + + switch (element).F1.Tag() { + case PredicateValueText: + payload := (element).F1.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf82))) + + case PredicateValueInteger: + payload := (element).F1.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (element).F1.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(2)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(result) + + default: + panic("unreachable") + } + + } + + wasm_import_resolve_retry_policy(uintptr(utf8), uint32(len(verb)), uintptr(utf80), uint32(len(nounUri)), uintptr(result3), length, returnArea) + var option witTypes.Option[RetryPolicy] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[RetryPolicy]() + case 1: + result34 := make([]PolicyNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*32) + var variant33 PolicyNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant33 = MakePolicyNodePeriodic(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 1: + + variant33 = MakePolicyNodeExponential(ExponentialConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*float64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 2: + + variant33 = MakePolicyNodeFibonacci(FibonacciConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 3: + + variant33 = MakePolicyNodeImmediate() + + case 4: + + variant33 = MakePolicyNodeNever() + + case 5: + + variant33 = MakePolicyNodeCountBox(CountBoxConfig{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 6: + + variant33 = MakePolicyNodeTimeBox(TimeBoxConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 7: + + variant33 = MakePolicyNodeClampDelay(ClampConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 8: + + variant33 = MakePolicyNodeAddDelay(AddDelayConfig{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 9: + + variant33 = MakePolicyNodeJitter(JitterConfig{*(*float64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 10: + result32 := make([]PredicateNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(16+4*4)) + var variant31 PredicateNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant = MakePredicateValueText(value4) + + case 1: + + variant = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant31 = MakePredicateNodePropEq(PropertyComparison{value, variant}) + + case 1: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant7 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant7 = MakePredicateValueText(value6) + + case 1: + + variant7 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant7 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant31 = MakePredicateNodePropNeq(PropertyComparison{value5, variant7}) + + case 2: + value8 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant10 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant10 = MakePredicateValueText(value9) + + case 1: + + variant10 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant10 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant31 = MakePredicateNodePropGt(PropertyComparison{value8, variant10}) + + case 3: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant13 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant13 = MakePredicateValueText(value12) + + case 1: + + variant13 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant13 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant31 = MakePredicateNodePropGte(PropertyComparison{value11, variant13}) + + case 4: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant16 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant16 = MakePredicateValueText(value15) + + case 1: + + variant16 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant16 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant31 = MakePredicateNodePropLt(PropertyComparison{value14, variant16}) + + case 5: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant19 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) + + variant19 = MakePredicateValueText(value18) + + case 1: + + variant19 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + case 2: + + variant19 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) != 0)) + + default: + panic("unreachable") + } + + variant31 = MakePredicateNodePropLte(PropertyComparison{value17, variant19}) + + case 6: + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant31 = MakePredicateNodePropExists(value20) + + case 7: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result24 := make([]PredicateValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(8+2*4)) + var variant23 PredicateValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant23 = MakePredicateValueText(value22) + + case 1: + + variant23 = MakePredicateValueInteger(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 2: + + variant23 = MakePredicateValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + default: + panic("unreachable") + } + + result24 = append(result24, variant23) + } + + variant31 = MakePredicateNodePropIn(PropertySetCheck{value21, result24}) + + case 8: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant31 = MakePredicateNodePropMatches(PropertyPattern{value25, value26}) + + case 9: + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant31 = MakePredicateNodePropStartsWith(PropertyPattern{value27, value28}) + + case 10: + value29 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant31 = MakePredicateNodePropContains(PropertyPattern{value29, value30}) + + case 11: + + variant31 = MakePredicateNodePredAnd(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant31 = MakePredicateNodePredOr(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant31 = MakePredicateNodePredNot(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + + variant31 = MakePredicateNodePredTrue() + + case 15: + + variant31 = MakePredicateNodePredFalse() + + default: + panic("unreachable") + } + + result32 = append(result32, variant31) + } + + variant33 = MakePolicyNodeFilteredOn(FilteredConfig{RetryPredicate{result32}, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 11: + + variant33 = MakePolicyNodeAndThen(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 12: + + variant33 = MakePolicyNodePolicyUnion(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 13: + + variant33 = MakePolicyNodePolicyIntersect(witTypes.Tuple2[int32, int32]{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + default: + panic("unreachable") + } + + result34 = append(result34, variant33) + } + + option = witTypes.Some[RetryPolicy](RetryPolicy{result34}) + default: + panic("unreachable") + } + result35 := option + return result35 + +} + +//go:wasmimport golem:api/retry@1.5.0 set-retry-policy +func wasm_import_set_retry_policy(arg0 uintptr, arg1 uint32, arg2 int32, arg3 uintptr, arg4 uint32, arg5 uintptr, arg6 uint32) + +func SetRetryPolicy(policy NamedRetryPolicy) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData((policy).Name)) + pinner.Pin(utf8) + slice28 := ((policy).Predicate).Nodes + length30 := uint32(len(slice28)) + result29 := witRuntime.Allocate(pinner, uintptr(length30*(16+4*4)), 8) + for index, element := range slice28 { + base := unsafe.Add(result29, index*(16+4*4)) + + switch element.Tag() { + case PredicateNodePropEq: + payload := element.PropEq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf80 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf81))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result) + + default: + panic("unreachable") + } + + case PredicateNodePropNeq: + payload := element.PropNeq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + utf82 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf83))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result4 int32 + if payload { + result4 = 1 + } else { + result4 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result4) + + default: + panic("unreachable") + } + + case PredicateNodePropGt: + payload := element.PropGt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf85 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf86))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result7 int32 + if payload { + result7 = 1 + } else { + result7 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result7) + + default: + panic("unreachable") + } + + case PredicateNodePropGte: + payload := element.PropGte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf88 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf88))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf89 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf89) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf89))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result10 int32 + if payload { + result10 = 1 + } else { + result10 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result10) + + default: + panic("unreachable") + } + + case PredicateNodePropLt: + payload := element.PropLt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + utf811 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf811) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf811))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf812))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result13 int32 + if payload { + result13 = 1 + } else { + result13 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result13) + + default: + panic("unreachable") + } + + case PredicateNodePropLte: + payload := element.PropLte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + utf814 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf814))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf815))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result16 int32 + if payload { + result16 = 1 + } else { + result16 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result16) + + default: + panic("unreachable") + } + + case PredicateNodePropExists: + payload := element.PropExists() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf817))) + + case PredicateNodePropIn: + payload := element.PropIn() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + slice := (payload).Values + length := uint32(len(slice)) + result21 := witRuntime.Allocate(pinner, uintptr(length*(8+2*4)), 8) + for index, element := range slice { + base := unsafe.Add(result21, index*(8+2*4)) + + switch element.Tag() { + case PredicateValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf819 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf819))) + + case PredicateValueInteger: + payload := element.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case PredicateValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + var result20 int32 + if payload { + result20 = 1 + } else { + result20 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result20) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result21))) + + case PredicateNodePropMatches: + payload := element.PropMatches() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf822 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf822))) + utf823 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf823))) + + case PredicateNodePropStartsWith: + payload := element.PropStartsWith() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + utf825 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf825) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf825))) + + case PredicateNodePropContains: + payload := element.PropContains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf826 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf826) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf826))) + utf827 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf827) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf827))) + + case PredicateNodePredAnd: + payload := element.PredAnd() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case PredicateNodePredOr: + payload := element.PredOr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case PredicateNodePredNot: + payload := element.PredNot() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case PredicateNodePredTrue: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + + case PredicateNodePredFalse: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + + default: + panic("unreachable") + } + + } + + slice65 := ((policy).Policy).Nodes + length67 := uint32(len(slice65)) + result66 := witRuntime.Allocate(pinner, uintptr(length67*32), 8) + for index, element := range slice65 { + base := unsafe.Add(result66, index*32) + + switch element.Tag() { + case PolicyNodePeriodic: + payload := element.Periodic() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case PolicyNodeExponential: + payload := element.Exponential() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).BaseDelay) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Factor + + case PolicyNodeFibonacci: + payload := element.Fibonacci() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).First) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).Second) + + case PolicyNodeImmediate: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + case PolicyNodeNever: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + case PolicyNodeCountBox: + payload := element.CountBox() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).MaxRetries) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Inner + + case PolicyNodeTimeBox: + payload := element.TimeBox() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).Limit) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Inner + + case PolicyNodeClampDelay: + payload := element.ClampDelay() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).MinDelay) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).MaxDelay) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Inner + + case PolicyNodeAddDelay: + payload := element.AddDelay() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).Delay) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Inner + + case PolicyNodeJitter: + payload := element.Jitter() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Factor + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Inner + + case PolicyNodeFilteredOn: + payload := element.FilteredOn() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + slice62 := ((payload).Predicate).Nodes + length64 := uint32(len(slice62)) + result63 := witRuntime.Allocate(pinner, uintptr(length64*(16+4*4)), 8) + for index, element := range slice62 { + base := unsafe.Add(result63, index*(16+4*4)) + + switch element.Tag() { + case PredicateNodePropEq: + payload := element.PropEq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf831 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf831) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf831))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf832 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf832) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf832))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result33 int32 + if payload { + result33 = 1 + } else { + result33 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result33) + + default: + panic("unreachable") + } + + case PredicateNodePropNeq: + payload := element.PropNeq() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + utf834 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf834) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf834))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf835))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result36 int32 + if payload { + result36 = 1 + } else { + result36 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result36) + + default: + panic("unreachable") + } + + case PredicateNodePropGt: + payload := element.PropGt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf837 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf837) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf837))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf838 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf838) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf838))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result39 int32 + if payload { + result39 = 1 + } else { + result39 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result39) + + default: + panic("unreachable") + } + + case PredicateNodePropGte: + payload := element.PropGte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf840 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf840) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf840))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf841 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf841) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf841))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result42 int32 + if payload { + result42 = 1 + } else { + result42 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result42) + + default: + panic("unreachable") + } + + case PredicateNodePropLt: + payload := element.PropLt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + utf843 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf843) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf843))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf844 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf844) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf844))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result45 int32 + if payload { + result45 = 1 + } else { + result45 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result45) + + default: + panic("unreachable") + } + + case PredicateNodePropLte: + payload := element.PropLte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + utf846 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf846) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf846))) + + switch (payload).Value.Tag() { + case PredicateValueText: + payload := (payload).Value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + utf847 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf847) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uintptr(uintptr(utf847))) + + case PredicateValueInteger: + payload := (payload).Value.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = payload + + case PredicateValueBoolean: + payload := (payload).Value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + var result48 int32 + if payload { + result48 = 1 + } else { + result48 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(result48) + + default: + panic("unreachable") + } + + case PredicateNodePropExists: + payload := element.PropExists() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf849 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf849) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf849))) + + case PredicateNodePropIn: + payload := element.PropIn() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + utf850 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf850) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf850))) + slice53 := (payload).Values + length55 := uint32(len(slice53)) + result54 := witRuntime.Allocate(pinner, uintptr(length55*(8+2*4)), 8) + for index, element := range slice53 { + base := unsafe.Add(result54, index*(8+2*4)) + + switch element.Tag() { + case PredicateValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf851 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf851) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf851))) + + case PredicateValueInteger: + payload := element.Integer() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case PredicateValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + var result52 int32 + if payload { + result52 = 1 + } else { + result52 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result52) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length55) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result54))) + + case PredicateNodePropMatches: + payload := element.PropMatches() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf856 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf856) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf856))) + utf857 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf857) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf857))) + + case PredicateNodePropStartsWith: + payload := element.PropStartsWith() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf858 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf858) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf858))) + utf859 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf859) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf859))) + + case PredicateNodePropContains: + payload := element.PropContains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf860 := unsafe.Pointer(unsafe.StringData((payload).PropertyName)) + pinner.Pin(utf860) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).PropertyName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf860))) + utf861 := unsafe.Pointer(unsafe.StringData((payload).Pattern)) + pinner.Pin(utf861) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Pattern))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf861))) + + case PredicateNodePredAnd: + payload := element.PredAnd() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case PredicateNodePredOr: + payload := element.PredOr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case PredicateNodePredNot: + payload := element.PredNot() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case PredicateNodePredTrue: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + + case PredicateNodePredFalse: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length64) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result63))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Inner + + case PolicyNodeAndThen: + payload := element.AndThen() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case PolicyNodePolicyUnion: + payload := element.PolicyUnion() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + case PolicyNodePolicyIntersect: + payload := element.PolicyIntersect() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).F1 + + default: + panic("unreachable") + } + + } + + wasm_import_set_retry_policy(uintptr(utf8), uint32(len((policy).Name)), int32((policy).Priority), uintptr(result29), length30, uintptr(result66), length67) + +} + +//go:wasmimport golem:api/retry@1.5.0 remove-retry-policy +func wasm_import_remove_retry_policy(arg0 uintptr, arg1 uint32) + +func RemoveRetryPolicy(name string) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_remove_retry_policy(uintptr(utf8), uint32(len(name))) + +} diff --git a/sdks/go/internal/wit/golem_api_save_snapshot/empty.s b/sdks/go/internal/wit/golem_api_save_snapshot/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_api_save_snapshot/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go b/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go new file mode 100644 index 0000000000..4c67d52db1 --- /dev/null +++ b/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go @@ -0,0 +1,38 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_api_save_snapshot + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_api_host" +) + +type Snapshot = golem_api_host.Snapshot diff --git a/sdks/go/internal/wit/golem_core_types/empty.s b/sdks/go/internal/wit/golem_core_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_core_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_core_types/wit_bindings.go b/sdks/go/internal/wit/golem_core_types/wit_bindings.go new file mode 100644 index 0000000000..6b387ecfd5 --- /dev/null +++ b/sdks/go/internal/wit/golem_core_types/wit_bindings.go @@ -0,0 +1,1476 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_core_types + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +// ============================================================ +// Carrier indices +// ============================================================ +// Index into a `schema-graph`'s `type-nodes` list. +type TypeNodeIndex = int32 + +// Index into a `schema-value-tree`'s `value-nodes` list. +type ValueNodeIndex = int32 + +// Index into a `schema-graph`'s `defs` list. +type DefIndex = int32 + +// Stable, language-independent identifier for a named type definition. +// Must be unique within the enclosing `schema-graph`. Conventional format +// is a dot-separated namespace path (e.g., `"myapp.users.user"`). Each +// SDK provides a default derivation rule (typically based on the local +// language's type name); cross-language interop requires the same +// `type-id` on every side, which users can pin via the SDK's `named` +// attribute. +type TypeId = string + +// ============================================================ +// Common embedded value types +// ============================================================ +type Uuid struct { + HighBits uint64 + LowBits uint64 +} + +type Datetime struct { + // Seconds since the Unix epoch (UTC). + Seconds int64 + // Nanoseconds since `seconds`, in `[0, 1_000_000_000)`. + Nanoseconds uint32 +} + +type EnvironmentId struct { + Uuid Uuid +} + +// ============================================================ +// Platform identifiers +// ============================================================ +// +// Platform identifiers used by the schema-native surfaces. Keeping them +// here lets migrated interfaces depend on a single core version. +// Represents a Golem component +type ComponentId struct { + Uuid Uuid +} + +// Represents a Golem agent +type AgentId struct { + // Identifies the component the agent belongs to + ComponentId ComponentId + // String representation of the agent ID (agent type and constructor parameters) + AgentId string +} + +// Represents a Golem account +type AccountId struct { + Uuid Uuid +} + +// Represents a Golem permission card +type CardId struct { + Uuid Uuid +} + +// An index into the persistent log storing all performed operations of an agent +type OplogIndex = uint64 + +// A promise ID is a value that can be passed to an external Golem API to +// complete that promise from an arbitrary external source, while Golem +// agents can await for this completion. +type PromiseId struct { + AgentId AgentId + OplogIdx uint64 +} + +//go:wasmimport golem:core/types@2.0.0 [resource-drop]quota-token +func resourceDropQuotaToken(handle int32) + +// ============================================================ +// Capability resources +// ============================================================ +// An unforgeable capability granting the right to consume a named +// resource. The handle is opaque: a guest can only obtain one from the +// host (e.g. via `golem:quota`) and can never inspect or fabricate its +// internal state. When carried in a `schema-value-tree` (see +// `schema-value-node::quota-token-handle`) the handle is transferred by +// ownership; the host converts it to/from its internal trusted +// representation at the boundary. +type QuotaToken struct { + handle *witRuntime.Handle +} + +func (self *QuotaToken) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *QuotaToken) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *QuotaToken) Handle() int32 { + return self.handle.Use() +} + +func (self *QuotaToken) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropQuotaToken(handle) + } +} + +func QuotaTokenFromOwnHandle(handleValue int32) *QuotaToken { + handle := witRuntime.MakeHandle(handleValue) + value := &QuotaToken{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropQuotaToken(handleValue) + } + }, 0) + return value +} + +func QuotaTokenFromBorrowHandle(handleValue int32) *QuotaToken { + handle := witRuntime.MakeHandle(handleValue) + return &QuotaToken{handle} +} + +//go:wasmimport golem:core/types@2.0.0 [resource-drop]secret +func resourceDropSecret(handle int32) + +// An unforgeable handle to sensitive material held by the runtime. The +// handle is opaque to guests: components can pass it through schema values +// and reveal it only through capability-gated host interfaces. +type Secret struct { + handle *witRuntime.Handle +} + +func (self *Secret) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Secret) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Secret) Handle() int32 { + return self.handle.Use() +} + +func (self *Secret) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropSecret(handle) + } +} + +func SecretFromOwnHandle(handleValue int32) *Secret { + handle := witRuntime.MakeHandle(handleValue) + value := &Secret{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropSecret(handleValue) + } + }, 0) + return value +} + +func SecretFromBorrowHandle(handleValue int32) *Secret { + handle := witRuntime.MakeHandle(handleValue) + return &Secret{handle} +} + +// A named type definition inside a `schema-graph`. +// +// The def itself does not carry metadata; metadata lives on the +// referenced `schema-type-node` so there is one source of truth for +// docs / aliases / examples / deprecation / role on each type. +type SchemaTypeDef struct { + // Stable identifier; unique within the enclosing graph. + Id string + // Optional human-readable qualified name (display only). + Name witTypes.Option[string] + // Index into the enclosing graph's `type-nodes` for this def's body. + Body int32 +} + +const ( + // `list>` whose elements are interchangeable modalities. + RoleMultimodal uint8 = 0 + // `variant { inline: text, url: url }` ergonomic unstructured-text wrapper. + RoleUnstructuredText uint8 = 1 + // `variant { inline: binary, url: url }` ergonomic unstructured-binary wrapper. + RoleUnstructuredBinary uint8 = 2 + // Any other producer-defined role, preserved verbatim. + RoleOther uint8 = 3 +) + +// Open registry; unknown roles fall back to structural handling. +type Role struct { + tag uint8 + value any +} + +func (self Role) Tag() uint8 { + return self.tag +} + +func (self Role) Other() string { + if self.tag != RoleOther { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeRoleMultimodal() Role { + return Role{RoleMultimodal, nil} +} +func MakeRoleUnstructuredText() Role { + return Role{RoleUnstructuredText, nil} +} +func MakeRoleUnstructuredBinary() Role { + return Role{RoleUnstructuredBinary, nil} +} +func MakeRoleOther(value string) Role { + return Role{RoleOther, value} +} + +// Typed metadata envelope. Holds non-validation, non-rendering-critical +// information (docs, aliases, examples, deprecation, role). Per-scalar +// validation constraints live on the relevant scalar's typed substructure, +// not here. +type MetadataEnvelope struct { + Doc witTypes.Option[string] + Aliases []string + // Canonical-encoded example values (JSON strings). Empty = no examples. + // Kept as strings so metadata is self-contained on the type side and + // does not have to cross-reference an accompanying value tree. + Examples []string + // Deprecation message; `none` means not deprecated. + Deprecated witTypes.Option[string] + // Optional role annotation tagging a type with a consumer-facing intent. + Role witTypes.Option[Role] +} + +type NamedFieldType struct { + Name string + Body int32 + Metadata MetadataEnvelope +} + +type VariantCaseType struct { + Name string + Payload witTypes.Option[int32] + Metadata MetadataEnvelope +} + +type FixedListSpec struct { + Element int32 + Length uint32 +} + +// Map key types are restricted to primitives. Enforced at schema +// construction time, not by the WIT type itself. +type MapSpec struct { + Key int32 + Value int32 +} + +type ResultSpec struct { + Ok witTypes.Option[int32] + Err witTypes.Option[int32] +} + +const ( + NumericBoundSigned uint8 = 0 + NumericBoundUnsigned uint8 = 1 + NumericBoundFloatBits uint8 = 2 +) + +// --- Numeric restrictions --- +// A numeric bound usable across every numeric representation. Float bounds +// carry canonical IEEE-754 `f64` bits (NaN/inf rejected, -0.0 normalized); +// comparisons decode the bits to `f64` and compare numerically. +type NumericBound struct { + tag uint8 + value any +} + +func (self NumericBound) Tag() uint8 { + return self.tag +} + +func (self NumericBound) Signed() int64 { + if self.tag != NumericBoundSigned { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self NumericBound) Unsigned() uint64 { + if self.tag != NumericBoundUnsigned { + panic("tag mismatch") + } + return self.value.(uint64) +} +func (self NumericBound) FloatBits() uint64 { + if self.tag != NumericBoundFloatBits { + panic("tag mismatch") + } + return self.value.(uint64) +} + +func MakeNumericBoundSigned(value int64) NumericBound { + return NumericBound{NumericBoundSigned, value} +} +func MakeNumericBoundUnsigned(value uint64) NumericBound { + return NumericBound{NumericBoundUnsigned, value} +} +func MakeNumericBoundFloatBits(value uint64) NumericBound { + return NumericBound{NumericBoundFloatBits, value} +} + +// Inline numeric refinement. `none` on a numeric type means unconstrained +// (the common case). The empty restriction set is never encoded as `some`: +// producers normalize it to `none`, decoders normalize a decoded empty to +// `none`. `unit` is schema/help metadata only. +type NumericRestrictions struct { + Min witTypes.Option[NumericBound] + Max witTypes.Option[NumericBound] + Unit witTypes.Option[string] +} + +// --- Text / Binary restrictions --- +type TextRestrictions struct { + // Optional set of allowed BCP-47 language codes. `none` = unrestricted. + Languages witTypes.Option[[]string] + MinLength witTypes.Option[uint32] + MaxLength witTypes.Option[uint32] + Regex witTypes.Option[string] +} + +type BinaryRestrictions struct { + // Optional set of allowed MIME types. `none` = unrestricted. + MimeTypes witTypes.Option[[]string] + MinBytes witTypes.Option[uint32] + MaxBytes witTypes.Option[uint32] +} + +const ( + PathDirectionInput uint8 = 0 + PathDirectionOutput uint8 = 1 + PathDirectionInOut uint8 = 2 +) + +// --- Path --- +type PathDirection = uint8 + +const ( + PathKindFile uint8 = 0 + PathKindDirectory uint8 = 1 + PathKindAny uint8 = 2 +) + +type PathKind = uint8 + +type PathSpec struct { + Direction PathDirection + Kind PathKind + AllowedMimeTypes witTypes.Option[[]string] + AllowedExtensions witTypes.Option[[]string] +} + +// --- URL --- +type UrlRestrictions struct { + AllowedSchemes witTypes.Option[[]string] + AllowedHosts witTypes.Option[[]string] +} + +// --- Quantity --- +// Fixed-point decimal value with unit: numeric value = `mantissa * 10^(-scale)`. +// `unit` is a free-form string at the value level; the schema's +// `quantity-spec` constrains the accepted set. +type QuantityValue struct { + Mantissa int64 + Scale int32 + Unit string +} + +type QuantitySpec struct { + // Canonical base unit (e.g., `"kg"`, `"m"`, `"s"`, `"B"`). + BaseUnit string + // Suffixes accepted on input and rendered on output (e.g., `["kg","g","mg"]`). + AllowedSuffixes []string + // Optional inclusive range, expressed in canonical fixed-point form. + Min witTypes.Option[QuantityValue] + Max witTypes.Option[QuantityValue] +} + +type FieldDiscriminator struct { + FieldName string + // Optional required literal value for the field. + Literal witTypes.Option[string] +} + +const ( + // String value starts with this prefix (e.g. `"ssh://"`). + DiscriminatorRulePrefix uint8 = 0 + // String value ends with this suffix (e.g. `".tar.gz"`). + DiscriminatorRuleSuffix uint8 = 1 + // String value contains this substring. + DiscriminatorRuleContains uint8 = 2 + // String value matches this anchored regex. + DiscriminatorRuleRegex uint8 = 3 + // Record-shaped value where the named field is present, and — if + // `literal` is set — has the given literal string value. The common + // JSON-discriminated-object case (`{"kind":"circle",…}`) is + // `field-equals { field-name: "kind", literal: some("circle") }`. + DiscriminatorRuleFieldEquals uint8 = 4 + // Record-shaped value where the named field is absent. + DiscriminatorRuleFieldAbsent uint8 = 5 +) + +// How the decoder identifies that a value belongs to a given union branch. +type DiscriminatorRule struct { + tag uint8 + value any +} + +func (self DiscriminatorRule) Tag() uint8 { + return self.tag +} + +func (self DiscriminatorRule) Prefix() string { + if self.tag != DiscriminatorRulePrefix { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DiscriminatorRule) Suffix() string { + if self.tag != DiscriminatorRuleSuffix { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DiscriminatorRule) Contains() string { + if self.tag != DiscriminatorRuleContains { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DiscriminatorRule) Regex() string { + if self.tag != DiscriminatorRuleRegex { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DiscriminatorRule) FieldEquals() FieldDiscriminator { + if self.tag != DiscriminatorRuleFieldEquals { + panic("tag mismatch") + } + return self.value.(FieldDiscriminator) +} +func (self DiscriminatorRule) FieldAbsent() string { + if self.tag != DiscriminatorRuleFieldAbsent { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeDiscriminatorRulePrefix(value string) DiscriminatorRule { + return DiscriminatorRule{DiscriminatorRulePrefix, value} +} +func MakeDiscriminatorRuleSuffix(value string) DiscriminatorRule { + return DiscriminatorRule{DiscriminatorRuleSuffix, value} +} +func MakeDiscriminatorRuleContains(value string) DiscriminatorRule { + return DiscriminatorRule{DiscriminatorRuleContains, value} +} +func MakeDiscriminatorRuleRegex(value string) DiscriminatorRule { + return DiscriminatorRule{DiscriminatorRuleRegex, value} +} +func MakeDiscriminatorRuleFieldEquals(value FieldDiscriminator) DiscriminatorRule { + return DiscriminatorRule{DiscriminatorRuleFieldEquals, value} +} +func MakeDiscriminatorRuleFieldAbsent(value string) DiscriminatorRule { + return DiscriminatorRule{DiscriminatorRuleFieldAbsent, value} +} + +type UnionBranch struct { + // Logical branch name. Carried in `union-value.tag` after the + // decoder resolves the branch; used by renderers, codegen, docs. + Tag string + // Branch body type. Any schema type compatible with the + // discriminator rule (see schema-construction validation above). + Body int32 + // Rule the decoder uses to pick this branch from a raw value. + Discriminator DiscriminatorRule + Metadata MetadataEnvelope +} + +// --- Discriminated union --- +// +// Inferred-tag sum. Each branch declares a rule that the decoder uses to +// identify values belonging to that branch from the raw underlying value. +// +// Rules enforced at schema-construction time: +// - branch `tag`s are unique within the union, +// - string-pattern discriminators (`prefix` / `suffix` / `contains` / +// `regex`) require a string-shaped branch body (`string-type`, +// `text-type`, `url-type`, `path-type`, or a `ref` resolving to one), +// - record-shaped discriminators (`field-equals` / `field-absent`) +// require a record-shaped branch body that declares the referenced +// field (with the matching literal type, if any), +// - the discriminator set must be unambiguous: no value matches more +// than one branch. Overlap is checked structurally where decidable +// (e.g., `prefix("a")` and `prefix("ab")` overlap) and best-effort +// for `regex`. +type UnionSpec struct { + Branches []UnionBranch +} + +// --- Capability nodes --- +type SecretSpec struct { + // Revealed payload type carried by this secret handle. + Inner int32 + // Optional categorisation (e.g., `"api-key"`, `"oauth-token"`). + Category witTypes.Option[string] +} + +type QuotaTokenSpec struct { + // Resource name this token covers (e.g., declared in the agent manifest). + // `none` = any resource permitted. + ResourceName witTypes.Option[string] +} + +const ( + // --- Reference to a named definition in the same `schema-graph` --- + SchemaTypeBodyRefType uint8 = 0 + // --- Primitives --- + SchemaTypeBodyBoolType uint8 = 1 + SchemaTypeBodyS8Type uint8 = 2 + SchemaTypeBodyS16Type uint8 = 3 + SchemaTypeBodyS32Type uint8 = 4 + SchemaTypeBodyS64Type uint8 = 5 + SchemaTypeBodyU8Type uint8 = 6 + SchemaTypeBodyU16Type uint8 = 7 + SchemaTypeBodyU32Type uint8 = 8 + SchemaTypeBodyU64Type uint8 = 9 + SchemaTypeBodyF32Type uint8 = 10 + SchemaTypeBodyF64Type uint8 = 11 + SchemaTypeBodyCharType uint8 = 12 + SchemaTypeBodyStringType uint8 = 13 + // --- Structural composites --- + SchemaTypeBodyRecordType uint8 = 14 + SchemaTypeBodyVariantType uint8 = 15 + SchemaTypeBodyEnumType uint8 = 16 + SchemaTypeBodyFlagsType uint8 = 17 + SchemaTypeBodyTupleType uint8 = 18 + SchemaTypeBodyListType uint8 = 19 + SchemaTypeBodyFixedListType uint8 = 20 + SchemaTypeBodyMapType uint8 = 21 + SchemaTypeBodyOptionType uint8 = 22 + SchemaTypeBodyResultType uint8 = 23 + // --- Rich semantic types --- + SchemaTypeBodyTextType uint8 = 24 + SchemaTypeBodyBinaryType uint8 = 25 + SchemaTypeBodyPathType uint8 = 26 + SchemaTypeBodyUrlType uint8 = 27 + SchemaTypeBodyDatetimeType uint8 = 28 + SchemaTypeBodyDurationType uint8 = 29 + SchemaTypeBodyQuantityType uint8 = 30 + // --- Discriminated union (closed, inferred-tag) --- + SchemaTypeBodyUnionType uint8 = 31 + // --- Capability nodes --- + SchemaTypeBodySecretType uint8 = 32 + SchemaTypeBodyQuotaTokenType uint8 = 33 + // --- WASI P3 stubs (parseable only; no semantics yet) --- + SchemaTypeBodyFutureType uint8 = 34 + SchemaTypeBodyStreamType uint8 = 35 +) + +// The structural body of a `schema-type-node`. +// +// Closed sum types come in two shapes that differ by how the decoder +// learns which branch a value belongs to: +// +// - `variant-type` is a **carried-tag** sum: the value explicitly +// carries its case (`variant-value.case` index). Zero-inference +// decoding. Natural mapping for language-level algebraic data types +// (Rust `enum`, Scala `sealed trait`, WIT `variant`, etc.). +// +// - `union-type` is an **inferred-tag** sum: the value does not carry +// its tag. Each branch declares a `discriminator-rule` (prefix / +// suffix / contains / regex on string-shaped bodies, or +// field-equals / field-absent on record-shaped bodies) and the +// decoder picks the branch whose rule matches the raw value. +// Natural mapping for inputs where the producer writes an unadorned +// value (a URL whose scheme picks the handler, a JSON object whose +// `"kind"` field picks the variant, an MCP content block whose +// `"type"` field picks the part shape, …). +type SchemaTypeBody struct { + tag uint8 + value any +} + +func (self SchemaTypeBody) Tag() uint8 { + return self.tag +} + +func (self SchemaTypeBody) RefType() int32 { + if self.tag != SchemaTypeBodyRefType { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self SchemaTypeBody) S8Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyS8Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) S16Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyS16Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) S32Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyS32Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) S64Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyS64Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) U8Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyU8Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) U16Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyU16Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) U32Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyU32Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) U64Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyU64Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) F32Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyF32Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) F64Type() witTypes.Option[NumericRestrictions] { + if self.tag != SchemaTypeBodyF64Type { + panic("tag mismatch") + } + return self.value.(witTypes.Option[NumericRestrictions]) +} +func (self SchemaTypeBody) RecordType() []NamedFieldType { + if self.tag != SchemaTypeBodyRecordType { + panic("tag mismatch") + } + return self.value.([]NamedFieldType) +} +func (self SchemaTypeBody) VariantType() []VariantCaseType { + if self.tag != SchemaTypeBodyVariantType { + panic("tag mismatch") + } + return self.value.([]VariantCaseType) +} +func (self SchemaTypeBody) EnumType() []string { + if self.tag != SchemaTypeBodyEnumType { + panic("tag mismatch") + } + return self.value.([]string) +} +func (self SchemaTypeBody) FlagsType() []string { + if self.tag != SchemaTypeBodyFlagsType { + panic("tag mismatch") + } + return self.value.([]string) +} +func (self SchemaTypeBody) TupleType() []int32 { + if self.tag != SchemaTypeBodyTupleType { + panic("tag mismatch") + } + return self.value.([]int32) +} +func (self SchemaTypeBody) ListType() int32 { + if self.tag != SchemaTypeBodyListType { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self SchemaTypeBody) FixedListType() FixedListSpec { + if self.tag != SchemaTypeBodyFixedListType { + panic("tag mismatch") + } + return self.value.(FixedListSpec) +} +func (self SchemaTypeBody) MapType() MapSpec { + if self.tag != SchemaTypeBodyMapType { + panic("tag mismatch") + } + return self.value.(MapSpec) +} +func (self SchemaTypeBody) OptionType() int32 { + if self.tag != SchemaTypeBodyOptionType { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self SchemaTypeBody) ResultType() ResultSpec { + if self.tag != SchemaTypeBodyResultType { + panic("tag mismatch") + } + return self.value.(ResultSpec) +} +func (self SchemaTypeBody) TextType() TextRestrictions { + if self.tag != SchemaTypeBodyTextType { + panic("tag mismatch") + } + return self.value.(TextRestrictions) +} +func (self SchemaTypeBody) BinaryType() BinaryRestrictions { + if self.tag != SchemaTypeBodyBinaryType { + panic("tag mismatch") + } + return self.value.(BinaryRestrictions) +} +func (self SchemaTypeBody) PathType() PathSpec { + if self.tag != SchemaTypeBodyPathType { + panic("tag mismatch") + } + return self.value.(PathSpec) +} +func (self SchemaTypeBody) UrlType() UrlRestrictions { + if self.tag != SchemaTypeBodyUrlType { + panic("tag mismatch") + } + return self.value.(UrlRestrictions) +} +func (self SchemaTypeBody) QuantityType() QuantitySpec { + if self.tag != SchemaTypeBodyQuantityType { + panic("tag mismatch") + } + return self.value.(QuantitySpec) +} +func (self SchemaTypeBody) UnionType() UnionSpec { + if self.tag != SchemaTypeBodyUnionType { + panic("tag mismatch") + } + return self.value.(UnionSpec) +} +func (self SchemaTypeBody) SecretType() SecretSpec { + if self.tag != SchemaTypeBodySecretType { + panic("tag mismatch") + } + return self.value.(SecretSpec) +} +func (self SchemaTypeBody) QuotaTokenType() QuotaTokenSpec { + if self.tag != SchemaTypeBodyQuotaTokenType { + panic("tag mismatch") + } + return self.value.(QuotaTokenSpec) +} +func (self SchemaTypeBody) FutureType() witTypes.Option[int32] { + if self.tag != SchemaTypeBodyFutureType { + panic("tag mismatch") + } + return self.value.(witTypes.Option[int32]) +} +func (self SchemaTypeBody) StreamType() witTypes.Option[int32] { + if self.tag != SchemaTypeBodyStreamType { + panic("tag mismatch") + } + return self.value.(witTypes.Option[int32]) +} + +func MakeSchemaTypeBodyRefType(value int32) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyRefType, value} +} +func MakeSchemaTypeBodyBoolType() SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyBoolType, nil} +} +func MakeSchemaTypeBodyS8Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyS8Type, value} +} +func MakeSchemaTypeBodyS16Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyS16Type, value} +} +func MakeSchemaTypeBodyS32Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyS32Type, value} +} +func MakeSchemaTypeBodyS64Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyS64Type, value} +} +func MakeSchemaTypeBodyU8Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyU8Type, value} +} +func MakeSchemaTypeBodyU16Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyU16Type, value} +} +func MakeSchemaTypeBodyU32Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyU32Type, value} +} +func MakeSchemaTypeBodyU64Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyU64Type, value} +} +func MakeSchemaTypeBodyF32Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyF32Type, value} +} +func MakeSchemaTypeBodyF64Type(value witTypes.Option[NumericRestrictions]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyF64Type, value} +} +func MakeSchemaTypeBodyCharType() SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyCharType, nil} +} +func MakeSchemaTypeBodyStringType() SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyStringType, nil} +} +func MakeSchemaTypeBodyRecordType(value []NamedFieldType) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyRecordType, value} +} +func MakeSchemaTypeBodyVariantType(value []VariantCaseType) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyVariantType, value} +} +func MakeSchemaTypeBodyEnumType(value []string) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyEnumType, value} +} +func MakeSchemaTypeBodyFlagsType(value []string) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyFlagsType, value} +} +func MakeSchemaTypeBodyTupleType(value []int32) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyTupleType, value} +} +func MakeSchemaTypeBodyListType(value int32) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyListType, value} +} +func MakeSchemaTypeBodyFixedListType(value FixedListSpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyFixedListType, value} +} +func MakeSchemaTypeBodyMapType(value MapSpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyMapType, value} +} +func MakeSchemaTypeBodyOptionType(value int32) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyOptionType, value} +} +func MakeSchemaTypeBodyResultType(value ResultSpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyResultType, value} +} +func MakeSchemaTypeBodyTextType(value TextRestrictions) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyTextType, value} +} +func MakeSchemaTypeBodyBinaryType(value BinaryRestrictions) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyBinaryType, value} +} +func MakeSchemaTypeBodyPathType(value PathSpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyPathType, value} +} +func MakeSchemaTypeBodyUrlType(value UrlRestrictions) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyUrlType, value} +} +func MakeSchemaTypeBodyDatetimeType() SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyDatetimeType, nil} +} +func MakeSchemaTypeBodyDurationType() SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyDurationType, nil} +} +func MakeSchemaTypeBodyQuantityType(value QuantitySpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyQuantityType, value} +} +func MakeSchemaTypeBodyUnionType(value UnionSpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyUnionType, value} +} +func MakeSchemaTypeBodySecretType(value SecretSpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodySecretType, value} +} +func MakeSchemaTypeBodyQuotaTokenType(value QuotaTokenSpec) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyQuotaTokenType, value} +} +func MakeSchemaTypeBodyFutureType(value witTypes.Option[int32]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyFutureType, value} +} +func MakeSchemaTypeBodyStreamType(value witTypes.Option[int32]) SchemaTypeBody { + return SchemaTypeBody{SchemaTypeBodyStreamType, value} +} + +// ============================================================ +// Schema type +// ============================================================ +// One node in a `schema-graph`. Carries the type body and a per-node +// metadata envelope (docs, aliases, examples, deprecation, role). +// Recursive positions reference other nodes (or named definitions) by +// index inside the body. +type SchemaTypeNode struct { + Body SchemaTypeBody + Metadata MetadataEnvelope +} + +// ============================================================ +// Schema graph (self-contained type carrier) +// ============================================================ +// A self-contained schema graph. Anywhere a schema travels with a value +// (typed pair, oplog `custom` payload, REST/RPC envelope, public oplog +// rendering), the payload owns its own `schema-graph` — there is no +// implicit external registry that consumers must look up. +type SchemaGraph struct { + // All schema-type nodes used in this graph. Reachable from `root` + // directly (anonymous types) or transitively via `defs`. + TypeNodes []SchemaTypeNode + // Named type definitions in this graph. Indices into this list are + // the targets of `schema-type-node::ref-type`. Ordering is + // deterministic (sorted by `id`). + Defs []SchemaTypeDef + // Index into `type-nodes` of the root schema type. + Root int32 +} + +type VariantValuePayload struct { + Case uint32 + Payload witTypes.Option[int32] +} + +type MapEntry struct { + Key int32 + Value int32 +} + +const ( + ResultValuePayloadOkValue uint8 = 0 + ResultValuePayloadErrValue uint8 = 1 +) + +// Result payload: exactly one of `ok-value` / `err-value` is set. Each +// inner option allows `result<_, _>` cases whose ok/err type is unit (no +// payload). +type ResultValuePayload struct { + tag uint8 + value any +} + +func (self ResultValuePayload) Tag() uint8 { + return self.tag +} + +func (self ResultValuePayload) OkValue() witTypes.Option[int32] { + if self.tag != ResultValuePayloadOkValue { + panic("tag mismatch") + } + return self.value.(witTypes.Option[int32]) +} +func (self ResultValuePayload) ErrValue() witTypes.Option[int32] { + if self.tag != ResultValuePayloadErrValue { + panic("tag mismatch") + } + return self.value.(witTypes.Option[int32]) +} + +func MakeResultValuePayloadOkValue(value witTypes.Option[int32]) ResultValuePayload { + return ResultValuePayload{ResultValuePayloadOkValue, value} +} +func MakeResultValuePayloadErrValue(value witTypes.Option[int32]) ResultValuePayload { + return ResultValuePayload{ResultValuePayloadErrValue, value} +} + +type TextValuePayload struct { + Text string + // BCP-47 language tag, when known. + Language witTypes.Option[string] +} + +type BinaryValuePayload struct { + Bytes []uint8 + MimeType witTypes.Option[string] +} + +// Signed duration as total nanoseconds. +type DurationValuePayload struct { + Nanoseconds int64 +} + +type UnionValuePayload struct { + // Tag of the branch the decoder resolved, matching one of the + // `union-spec::branches[*].tag` values. Carried so receivers do not + // have to re-run discriminator rules to know which branch was + // matched; encoders must ensure it agrees with the body. + Tag string + // Underlying value. Its shape matches the resolved branch's body + // type and (by construction) satisfies the branch's discriminator + // rule. + Body int32 +} + +const ( + // Primitives + SchemaValueNodeBoolValue uint8 = 0 + SchemaValueNodeS8Value uint8 = 1 + SchemaValueNodeS16Value uint8 = 2 + SchemaValueNodeS32Value uint8 = 3 + SchemaValueNodeS64Value uint8 = 4 + SchemaValueNodeU8Value uint8 = 5 + SchemaValueNodeU16Value uint8 = 6 + SchemaValueNodeU32Value uint8 = 7 + SchemaValueNodeU64Value uint8 = 8 + SchemaValueNodeF32Value uint8 = 9 + SchemaValueNodeF64Value uint8 = 10 + SchemaValueNodeCharValue uint8 = 11 + SchemaValueNodeStringValue uint8 = 12 + // Structural composites + SchemaValueNodeRecordValue uint8 = 13 + SchemaValueNodeVariantValue uint8 = 14 + SchemaValueNodeEnumValue uint8 = 15 + SchemaValueNodeFlagsValue uint8 = 16 + SchemaValueNodeTupleValue uint8 = 17 + SchemaValueNodeListValue uint8 = 18 + SchemaValueNodeFixedListValue uint8 = 19 + SchemaValueNodeMapValue uint8 = 20 + SchemaValueNodeOptionValue uint8 = 21 + SchemaValueNodeResultValue uint8 = 22 + // Rich semantic + SchemaValueNodeTextValue uint8 = 23 + SchemaValueNodeBinaryValue uint8 = 24 + SchemaValueNodePathValue uint8 = 25 + SchemaValueNodeUrlValue uint8 = 26 + SchemaValueNodeDatetimeValue uint8 = 27 + SchemaValueNodeDurationValue uint8 = 28 + SchemaValueNodeQuantityValueNode uint8 = 29 + // Discriminated union: tag is matched against schema branches. + SchemaValueNodeUnionValue uint8 = 30 + // Capability nodes + SchemaValueNodeSecretValue uint8 = 31 + SchemaValueNodeQuotaTokenHandle uint8 = 32 +) + +type SchemaValueNode struct { + tag uint8 + value any +} + +func (self SchemaValueNode) Tag() uint8 { + return self.tag +} + +func (self SchemaValueNode) BoolValue() bool { + if self.tag != SchemaValueNodeBoolValue { + panic("tag mismatch") + } + return self.value.(bool) +} +func (self SchemaValueNode) S8Value() int8 { + if self.tag != SchemaValueNodeS8Value { + panic("tag mismatch") + } + return self.value.(int8) +} +func (self SchemaValueNode) S16Value() int16 { + if self.tag != SchemaValueNodeS16Value { + panic("tag mismatch") + } + return self.value.(int16) +} +func (self SchemaValueNode) S32Value() int32 { + if self.tag != SchemaValueNodeS32Value { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self SchemaValueNode) S64Value() int64 { + if self.tag != SchemaValueNodeS64Value { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self SchemaValueNode) U8Value() uint8 { + if self.tag != SchemaValueNodeU8Value { + panic("tag mismatch") + } + return self.value.(uint8) +} +func (self SchemaValueNode) U16Value() uint16 { + if self.tag != SchemaValueNodeU16Value { + panic("tag mismatch") + } + return self.value.(uint16) +} +func (self SchemaValueNode) U32Value() uint32 { + if self.tag != SchemaValueNodeU32Value { + panic("tag mismatch") + } + return self.value.(uint32) +} +func (self SchemaValueNode) U64Value() uint64 { + if self.tag != SchemaValueNodeU64Value { + panic("tag mismatch") + } + return self.value.(uint64) +} +func (self SchemaValueNode) F32Value() float32 { + if self.tag != SchemaValueNodeF32Value { + panic("tag mismatch") + } + return self.value.(float32) +} +func (self SchemaValueNode) F64Value() float64 { + if self.tag != SchemaValueNodeF64Value { + panic("tag mismatch") + } + return self.value.(float64) +} +func (self SchemaValueNode) CharValue() rune { + if self.tag != SchemaValueNodeCharValue { + panic("tag mismatch") + } + return self.value.(rune) +} +func (self SchemaValueNode) StringValue() string { + if self.tag != SchemaValueNodeStringValue { + panic("tag mismatch") + } + return self.value.(string) +} +func (self SchemaValueNode) RecordValue() []int32 { + if self.tag != SchemaValueNodeRecordValue { + panic("tag mismatch") + } + return self.value.([]int32) +} +func (self SchemaValueNode) VariantValue() VariantValuePayload { + if self.tag != SchemaValueNodeVariantValue { + panic("tag mismatch") + } + return self.value.(VariantValuePayload) +} +func (self SchemaValueNode) EnumValue() uint32 { + if self.tag != SchemaValueNodeEnumValue { + panic("tag mismatch") + } + return self.value.(uint32) +} +func (self SchemaValueNode) FlagsValue() []bool { + if self.tag != SchemaValueNodeFlagsValue { + panic("tag mismatch") + } + return self.value.([]bool) +} +func (self SchemaValueNode) TupleValue() []int32 { + if self.tag != SchemaValueNodeTupleValue { + panic("tag mismatch") + } + return self.value.([]int32) +} +func (self SchemaValueNode) ListValue() []int32 { + if self.tag != SchemaValueNodeListValue { + panic("tag mismatch") + } + return self.value.([]int32) +} +func (self SchemaValueNode) FixedListValue() []int32 { + if self.tag != SchemaValueNodeFixedListValue { + panic("tag mismatch") + } + return self.value.([]int32) +} +func (self SchemaValueNode) MapValue() []MapEntry { + if self.tag != SchemaValueNodeMapValue { + panic("tag mismatch") + } + return self.value.([]MapEntry) +} +func (self SchemaValueNode) OptionValue() witTypes.Option[int32] { + if self.tag != SchemaValueNodeOptionValue { + panic("tag mismatch") + } + return self.value.(witTypes.Option[int32]) +} +func (self SchemaValueNode) ResultValue() ResultValuePayload { + if self.tag != SchemaValueNodeResultValue { + panic("tag mismatch") + } + return self.value.(ResultValuePayload) +} +func (self SchemaValueNode) TextValue() TextValuePayload { + if self.tag != SchemaValueNodeTextValue { + panic("tag mismatch") + } + return self.value.(TextValuePayload) +} +func (self SchemaValueNode) BinaryValue() BinaryValuePayload { + if self.tag != SchemaValueNodeBinaryValue { + panic("tag mismatch") + } + return self.value.(BinaryValuePayload) +} +func (self SchemaValueNode) PathValue() string { + if self.tag != SchemaValueNodePathValue { + panic("tag mismatch") + } + return self.value.(string) +} +func (self SchemaValueNode) UrlValue() string { + if self.tag != SchemaValueNodeUrlValue { + panic("tag mismatch") + } + return self.value.(string) +} +func (self SchemaValueNode) DatetimeValue() Datetime { + if self.tag != SchemaValueNodeDatetimeValue { + panic("tag mismatch") + } + return self.value.(Datetime) +} +func (self SchemaValueNode) DurationValue() DurationValuePayload { + if self.tag != SchemaValueNodeDurationValue { + panic("tag mismatch") + } + return self.value.(DurationValuePayload) +} +func (self SchemaValueNode) QuantityValueNode() QuantityValue { + if self.tag != SchemaValueNodeQuantityValueNode { + panic("tag mismatch") + } + return self.value.(QuantityValue) +} +func (self SchemaValueNode) UnionValue() UnionValuePayload { + if self.tag != SchemaValueNodeUnionValue { + panic("tag mismatch") + } + return self.value.(UnionValuePayload) +} +func (self SchemaValueNode) SecretValue() *Secret { + if self.tag != SchemaValueNodeSecretValue { + panic("tag mismatch") + } + return self.value.(*Secret) +} +func (self SchemaValueNode) QuotaTokenHandle() *QuotaToken { + if self.tag != SchemaValueNodeQuotaTokenHandle { + panic("tag mismatch") + } + return self.value.(*QuotaToken) +} + +func MakeSchemaValueNodeBoolValue(value bool) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeBoolValue, value} +} +func MakeSchemaValueNodeS8Value(value int8) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeS8Value, value} +} +func MakeSchemaValueNodeS16Value(value int16) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeS16Value, value} +} +func MakeSchemaValueNodeS32Value(value int32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeS32Value, value} +} +func MakeSchemaValueNodeS64Value(value int64) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeS64Value, value} +} +func MakeSchemaValueNodeU8Value(value uint8) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeU8Value, value} +} +func MakeSchemaValueNodeU16Value(value uint16) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeU16Value, value} +} +func MakeSchemaValueNodeU32Value(value uint32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeU32Value, value} +} +func MakeSchemaValueNodeU64Value(value uint64) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeU64Value, value} +} +func MakeSchemaValueNodeF32Value(value float32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeF32Value, value} +} +func MakeSchemaValueNodeF64Value(value float64) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeF64Value, value} +} +func MakeSchemaValueNodeCharValue(value rune) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeCharValue, value} +} +func MakeSchemaValueNodeStringValue(value string) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeStringValue, value} +} +func MakeSchemaValueNodeRecordValue(value []int32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeRecordValue, value} +} +func MakeSchemaValueNodeVariantValue(value VariantValuePayload) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeVariantValue, value} +} +func MakeSchemaValueNodeEnumValue(value uint32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeEnumValue, value} +} +func MakeSchemaValueNodeFlagsValue(value []bool) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeFlagsValue, value} +} +func MakeSchemaValueNodeTupleValue(value []int32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeTupleValue, value} +} +func MakeSchemaValueNodeListValue(value []int32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeListValue, value} +} +func MakeSchemaValueNodeFixedListValue(value []int32) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeFixedListValue, value} +} +func MakeSchemaValueNodeMapValue(value []MapEntry) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeMapValue, value} +} +func MakeSchemaValueNodeOptionValue(value witTypes.Option[int32]) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeOptionValue, value} +} +func MakeSchemaValueNodeResultValue(value ResultValuePayload) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeResultValue, value} +} +func MakeSchemaValueNodeTextValue(value TextValuePayload) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeTextValue, value} +} +func MakeSchemaValueNodeBinaryValue(value BinaryValuePayload) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeBinaryValue, value} +} +func MakeSchemaValueNodePathValue(value string) SchemaValueNode { + return SchemaValueNode{SchemaValueNodePathValue, value} +} +func MakeSchemaValueNodeUrlValue(value string) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeUrlValue, value} +} +func MakeSchemaValueNodeDatetimeValue(value Datetime) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeDatetimeValue, value} +} +func MakeSchemaValueNodeDurationValue(value DurationValuePayload) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeDurationValue, value} +} +func MakeSchemaValueNodeQuantityValueNode(value QuantityValue) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeQuantityValueNode, value} +} +func MakeSchemaValueNodeUnionValue(value UnionValuePayload) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeUnionValue, value} +} +func MakeSchemaValueNodeSecretValue(value *Secret) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeSecretValue, value} +} +func MakeSchemaValueNodeQuotaTokenHandle(value *QuotaToken) SchemaValueNode { + return SchemaValueNode{SchemaValueNodeQuotaTokenHandle, value} +} + +// ============================================================ +// Schema value (always paired with a schema-graph) +// ============================================================ +// A flat schema-value tree. Always travels paired with a `schema-graph` +// (see `typed-schema-value`). Indices refer to entries in `value-nodes` +// within this same tree. +// +// The value tree is structurally driven by the schema: record-value +// payload order matches the schema's field order, variant-value carries a +// case index, enum-value carries a case index, union-value carries the +// discriminator's literal tag. The value side does not redundantly carry +// field names, case names, or named-ref identifiers — those come from the +// schema. +type SchemaValueTree struct { + ValueNodes []SchemaValueNode + Root int32 +} + +// ============================================================ +// Wire carriers +// ============================================================ +// A typed value: a self-contained schema graph paired with a value tree +// built against that schema. +type TypedSchemaValue struct { + Graph SchemaGraph + Value SchemaValueTree +} + +//go:wasmimport golem:core/types@2.0.0 parse-uuid +func wasm_import_parse_uuid(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func ParseUuid(uuid string) witTypes.Result[Uuid, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 24, 8)) + utf8 := unsafe.Pointer(unsafe.StringData(uuid)) + pinner.Pin(utf8) + wasm_import_parse_uuid(uintptr(utf8), uint32(len(uuid)), returnArea) + var result witTypes.Result[Uuid, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[Uuid, string](Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + result = witTypes.Err[Uuid, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport golem:core/types@2.0.0 uuid-to-string +func wasm_import_uuid_to_string(arg0 int64, arg1 int64, arg2 uintptr) + +func UuidToString(uuid Uuid) string { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_uuid_to_string(int64((uuid).HighBits), int64((uuid).LowBits), returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + result := value + return result + +} diff --git a/sdks/go/internal/wit/golem_durability_durability/empty.s b/sdks/go/internal/wit/golem_durability_durability/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_durability_durability/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go b/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go new file mode 100644 index 0000000000..1f75055e85 --- /dev/null +++ b/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go @@ -0,0 +1,7151 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_durability_durability + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + "github.com/golemcloud/golem-go/internal/wit/golem_api_oplog" + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type PersistenceLevel = golem_api_host.PersistenceLevel +type OplogIndex = uint64 +type WrappedFunctionType = golem_api_oplog.WrappedFunctionType +type Datetime = wasi_clocks_0_3_0_system_clock.Instant +type TypedSchemaValue = golem_core_types.TypedSchemaValue +type DurableFunctionType = golem_api_oplog.WrappedFunctionType + +// Represents the current durable execution state +type DurableExecutionState struct { + // If true, the executor is in live mode, side-effects should be performed and persisted. + // If false, the executor is in replay mode, side-effects should be replayed from the persisted data. + IsLive bool + // The currently active persistence level + PersistenceLevel golem_api_host.PersistenceLevel +} + +const ( + OplogEntryVersionV1 uint8 = 0 + OplogEntryVersionV2 uint8 = 1 +) + +// Represents the oplog entry version; this is for backward compatibility and most use cases should always use +// (and expect) the latest version. +type OplogEntryVersion = uint8 + +// Represents a persisted durable function invocation. The `response` field +// contains a value and its schema graph together, making the user-defined payload observable by external tools. +type PersistedDurableFunctionInvocation struct { + // The timestamp of the invocation. + Timestamp wasi_clocks_0_3_0_system_clock.Instant + // The invoked function's unique name + FunctionName string + // Arbitrary structured value and schema graph describing the invocation's result + Response golem_core_types.TypedSchemaValue + // Type of the durable function invocation + FunctionType golem_api_oplog.WrappedFunctionType + // Oplog entry version + EntryVersion OplogEntryVersion +} + +//go:wasmimport golem:durability/durability@1.5.0 observe-function-call +func wasm_import_observe_function_call(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32) + +func ObserveFunctionCall(iface string, function string) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(iface)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData(function)) + pinner.Pin(utf80) + wasm_import_observe_function_call(uintptr(utf8), uint32(len(iface)), uintptr(utf80), uint32(len(function))) + +} + +//go:wasmimport golem:durability/durability@1.5.0 begin-durable-function +func wasm_import_begin_durable_function(arg0 int32, arg1 int32, arg2 int64) int64 + +func BeginDurableFunction(functionType golem_api_oplog.WrappedFunctionType) uint64 { + + var variant int32 + var variant3 int32 + var variant4 int64 + switch functionType.Tag() { + case golem_api_oplog.WrappedFunctionTypeReadLocal: + + variant = int32(0) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeWriteLocal: + + variant = int32(1) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeReadRemote: + + variant = int32(2) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeWriteRemote: + + variant = int32(3) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeWriteRemoteBatched: + payload := functionType.WriteRemoteBatched() + var option int32 + var option0 int64 + switch payload.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := payload.Some() + + option = int32(1) + option0 = int64(payload) + default: + panic("unreachable") + } + + variant = int32(4) + variant3 = option + variant4 = option0 + + case golem_api_oplog.WrappedFunctionTypeWriteRemoteTransaction: + payload := functionType.WriteRemoteTransaction() + var option1 int32 + var option2 int64 + switch payload.Tag() { + case witTypes.OptionNone: + + option1 = int32(0) + option2 = 0 + case witTypes.OptionSome: + payload := payload.Some() + + option1 = int32(1) + option2 = int64(payload) + default: + panic("unreachable") + } + + variant = int32(5) + variant3 = option1 + variant4 = option2 + + default: + panic("unreachable") + } + result := wasm_import_begin_durable_function(variant, variant3, variant4) + return uint64(result) + +} + +//go:wasmimport golem:durability/durability@1.5.0 end-durable-function +func wasm_import_end_durable_function(arg0 int32, arg1 int32, arg2 int64, arg3 int64, arg4 int32) + +func EndDurableFunction(functionType golem_api_oplog.WrappedFunctionType, beginIndex uint64, forcedCommit bool) { + + var variant int32 + var variant3 int32 + var variant4 int64 + switch functionType.Tag() { + case golem_api_oplog.WrappedFunctionTypeReadLocal: + + variant = int32(0) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeWriteLocal: + + variant = int32(1) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeReadRemote: + + variant = int32(2) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeWriteRemote: + + variant = int32(3) + variant3 = 0 + variant4 = 0 + + case golem_api_oplog.WrappedFunctionTypeWriteRemoteBatched: + payload := functionType.WriteRemoteBatched() + var option int32 + var option0 int64 + switch payload.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := payload.Some() + + option = int32(1) + option0 = int64(payload) + default: + panic("unreachable") + } + + variant = int32(4) + variant3 = option + variant4 = option0 + + case golem_api_oplog.WrappedFunctionTypeWriteRemoteTransaction: + payload := functionType.WriteRemoteTransaction() + var option1 int32 + var option2 int64 + switch payload.Tag() { + case witTypes.OptionNone: + + option1 = int32(0) + option2 = 0 + case witTypes.OptionSome: + payload := payload.Some() + + option1 = int32(1) + option2 = int64(payload) + default: + panic("unreachable") + } + + variant = int32(5) + variant3 = option1 + variant4 = option2 + + default: + panic("unreachable") + } + var result int32 + if forcedCommit { + result = 1 + } else { + result = 0 + } + wasm_import_end_durable_function(variant, variant3, variant4, int64(beginIndex), result) + +} + +//go:wasmimport golem:durability/durability@1.5.0 current-durable-execution-state +func wasm_import_current_durable_execution_state(arg0 uintptr) + +func CurrentDurableExecutionState() DurableExecutionState { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 2, 1)) + wasm_import_current_durable_execution_state(returnArea) + var variant golem_api_host.PersistenceLevel + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 1))) { + case 0: + + variant = golem_api_host.MakePersistenceLevelPersistNothing() + + case 1: + + variant = golem_api_host.MakePersistenceLevelPersistRemoteSideEffects() + + case 2: + + variant = golem_api_host.MakePersistenceLevelSmart() + + default: + panic("unreachable") + } + result := DurableExecutionState{(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) != 0), variant} + return result + +} + +//go:wasmimport golem:durability/durability@1.5.0 persist-durable-function-invocation +func wasm_import_persist_durable_function_invocation(arg0 uintptr) + +func PersistDurableFunctionInvocation(functionName string, request golem_core_types.TypedSchemaValue, response golem_core_types.TypedSchemaValue, functionType golem_api_oplog.WrappedFunctionType) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (24 + 18*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(functionName)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)) = uint32(uint32(len(functionName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = uint32(uintptr(uintptr(utf8))) + slice115 := ((request).Graph).TypeNodes + length117 := uint32(len(slice115)) + result116 := witRuntime.Allocate(pinner, uintptr(length117*(56+22*4)), 8) + for index, element := range slice115 { + base := unsafe.Add(result116, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf80))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf81))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf82))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf83))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf84))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf85))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf86))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf87))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf88 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf88))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf89 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf89) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf89))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice19 := payload + length21 := uint32(len(slice19)) + result20 := witRuntime.Allocate(pinner, uintptr(length21*(17*4)), 4) + for index, element := range slice19 { + base := unsafe.Add(result20, index*(17*4)) + utf810 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf810) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf810))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf811 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf811) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf811))) + + default: + panic("unreachable") + } + slice := ((element).Metadata).Aliases + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(2*4)) + utf812 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf812))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result))) + slice14 := ((element).Metadata).Examples + length16 := uint32(len(slice14)) + result15 := witRuntime.Allocate(pinner, uintptr(length16*(2*4)), 4) + for index, element := range slice14 { + base := unsafe.Add(result15, index*(2*4)) + utf813 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf813))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length16) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result15))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf817))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf818 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf818))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length21) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result20))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice34 := payload + length36 := uint32(len(slice34)) + result35 := witRuntime.Allocate(pinner, uintptr(length36*(8+16*4)), 4) + for index, element := range slice34 { + base := unsafe.Add(result35, index*(8+16*4)) + utf822 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf822))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf823 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf823))) + + default: + panic("unreachable") + } + slice25 := ((element).Metadata).Aliases + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*(2*4)), 4) + for index, element := range slice25 { + base := unsafe.Add(result26, index*(2*4)) + utf824 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf824))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length27) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result26))) + slice29 := ((element).Metadata).Examples + length31 := uint32(len(slice29)) + result30 := witRuntime.Allocate(pinner, uintptr(length31*(2*4)), 4) + for index, element := range slice29 { + base := unsafe.Add(result30, index*(2*4)) + utf828 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf828) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf828))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result30))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf832 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf832) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf832))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf833 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf833) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf833))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length36) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result35))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice38 := payload + length40 := uint32(len(slice38)) + result39 := witRuntime.Allocate(pinner, uintptr(length40*(2*4)), 4) + for index, element := range slice38 { + base := unsafe.Add(result39, index*(2*4)) + utf837 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf837) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf837))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length40) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result39))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice42 := payload + length44 := uint32(len(slice42)) + result43 := witRuntime.Allocate(pinner, uintptr(length44*(2*4)), 4) + for index, element := range slice42 { + base := unsafe.Add(result43, index*(2*4)) + utf841 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf841) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf841))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length44) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result43))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice45 := payload + length47 := uint32(len(slice45)) + result46 := witRuntime.Allocate(pinner, uintptr(length47*4), 4) + for index, element := range slice45 { + base := unsafe.Add(result46, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length47) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result46))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice49 := payload + length51 := uint32(len(slice49)) + result50 := witRuntime.Allocate(pinner, uintptr(length51*(2*4)), 4) + for index, element := range slice49 { + base := unsafe.Add(result50, index*(2*4)) + utf848 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf848) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf848))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length51) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result50))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf852 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf852) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf852))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice54 := payload + length56 := uint32(len(slice54)) + result55 := witRuntime.Allocate(pinner, uintptr(length56*(2*4)), 4) + for index, element := range slice54 { + base := unsafe.Add(result55, index*(2*4)) + utf853 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf853) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf853))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length56) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result55))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice58 := payload + length60 := uint32(len(slice58)) + result59 := witRuntime.Allocate(pinner, uintptr(length60*(2*4)), 4) + for index, element := range slice58 { + base := unsafe.Add(result59, index*(2*4)) + utf857 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf857) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf857))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length60) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result59))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice62 := payload + length64 := uint32(len(slice62)) + result63 := witRuntime.Allocate(pinner, uintptr(length64*(2*4)), 4) + for index, element := range slice62 { + base := unsafe.Add(result63, index*(2*4)) + utf861 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf861) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf861))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length64) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result63))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice66 := payload + length68 := uint32(len(slice66)) + result67 := witRuntime.Allocate(pinner, uintptr(length68*(2*4)), 4) + for index, element := range slice66 { + base := unsafe.Add(result67, index*(2*4)) + utf865 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf865) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf865))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length68) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result67))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice70 := payload + length72 := uint32(len(slice70)) + result71 := witRuntime.Allocate(pinner, uintptr(length72*(2*4)), 4) + for index, element := range slice70 { + base := unsafe.Add(result71, index*(2*4)) + utf869 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf869) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf869))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length72) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result71))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf873 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf873) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf873))) + slice75 := (payload).AllowedSuffixes + length77 := uint32(len(slice75)) + result76 := witRuntime.Allocate(pinner, uintptr(length77*(2*4)), 4) + for index, element := range slice75 { + base := unsafe.Add(result76, index*(2*4)) + utf874 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf874) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf874))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length77) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result76))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf878 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf878) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf878))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf879 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf879) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf879))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice99 := (payload).Branches + length101 := uint32(len(slice99)) + result100 := witRuntime.Allocate(pinner, uintptr(length101*(23*4)), 4) + for index, element := range slice99 { + base := unsafe.Add(result100, index*(23*4)) + utf880 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf880) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf880))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf881 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf881))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf882 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf882) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf882))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf883 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf883) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf883))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf884 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf884) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf884))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf885 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf885))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf886 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf886) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf886))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf887 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf887) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf887))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf888 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf888) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf888))) + + default: + panic("unreachable") + } + slice90 := ((element).Metadata).Aliases + length92 := uint32(len(slice90)) + result91 := witRuntime.Allocate(pinner, uintptr(length92*(2*4)), 4) + for index, element := range slice90 { + base := unsafe.Add(result91, index*(2*4)) + utf889 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf889) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf889))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length92) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result91))) + slice94 := ((element).Metadata).Examples + length96 := uint32(len(slice94)) + result95 := witRuntime.Allocate(pinner, uintptr(length96*(2*4)), 4) + for index, element := range slice94 { + base := unsafe.Add(result95, index*(2*4)) + utf893 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf893) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf893))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length96) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result95))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf897 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf897) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf897))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf898 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf898) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf898))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result100))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8102 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8102) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8102))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8103 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8103) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8103))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8104 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8104) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8104))) + + default: + panic("unreachable") + } + slice106 := ((element).Metadata).Aliases + length108 := uint32(len(slice106)) + result107 := witRuntime.Allocate(pinner, uintptr(length108*(2*4)), 4) + for index, element := range slice106 { + base := unsafe.Add(result107, index*(2*4)) + utf8105 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8105) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8105))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length108) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result107))) + slice110 := ((element).Metadata).Examples + length112 := uint32(len(slice110)) + result111 := witRuntime.Allocate(pinner, uintptr(length112*(2*4)), 4) + for index, element := range slice110 { + base := unsafe.Add(result111, index*(2*4)) + utf8109 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8109) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8109))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result111))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8113 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8113) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8113))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8114 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8114) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8114))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))) = uint32(length117) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4))) = uint32(uintptr(uintptr(result116))) + slice120 := ((request).Graph).Defs + length122 := uint32(len(slice120)) + result121 := witRuntime.Allocate(pinner, uintptr(length122*(6*4)), 4) + for index, element := range slice120 { + base := unsafe.Add(result121, index*(6*4)) + utf8118 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8118) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8118))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8119 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8119) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8119))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4))) = uint32(length122) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4))) = uint32(uintptr(uintptr(result121))) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4))) = ((request).Graph).Root + slice151 := ((request).Value).ValueNodes + length153 := uint32(len(slice151)) + result152 := witRuntime.Allocate(pinner, uintptr(length153*(16+4*4)), 8) + for index, element := range slice151 { + base := unsafe.Add(result152, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result123 int32 + if payload { + result123 = 1 + } else { + result123 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result123) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf8124 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8124) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8124))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice125 := payload + length127 := uint32(len(slice125)) + result126 := witRuntime.Allocate(pinner, uintptr(length127*4), 4) + for index, element := range slice125 { + base := unsafe.Add(result126, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length127) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result126))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice129 := payload + length131 := uint32(len(slice129)) + result130 := witRuntime.Allocate(pinner, uintptr(length131*1), 1) + for index, element := range slice129 { + base := unsafe.Add(result130, index*1) + var result128 int32 + if element { + result128 = 1 + } else { + result128 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result128) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length131) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result130))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice132 := payload + length134 := uint32(len(slice132)) + result133 := witRuntime.Allocate(pinner, uintptr(length134*4), 4) + for index, element := range slice132 { + base := unsafe.Add(result133, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length134) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result133))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice135 := payload + length137 := uint32(len(slice135)) + result136 := witRuntime.Allocate(pinner, uintptr(length137*4), 4) + for index, element := range slice135 { + base := unsafe.Add(result136, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length137) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result136))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice138 := payload + length140 := uint32(len(slice138)) + result139 := witRuntime.Allocate(pinner, uintptr(length140*4), 4) + for index, element := range slice138 { + base := unsafe.Add(result139, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length140) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result139))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice141 := payload + length143 := uint32(len(slice141)) + result142 := witRuntime.Allocate(pinner, uintptr(length143*8), 4) + for index, element := range slice141 { + base := unsafe.Add(result142, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length143) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result142))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf8144 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf8144) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8144))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8145 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8145) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8145))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8146 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8146) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8146))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf8147 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8147) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8147))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf8148 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8148) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8148))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf8149 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8149) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf8149))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8150 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf8150) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8150))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 * 4))) = uint32(length153) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (7 * 4))) = uint32(uintptr(uintptr(result152))) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (9 * 4))) = ((request).Value).Root + slice272 := ((response).Graph).TypeNodes + length274 := uint32(len(slice272)) + result273 := witRuntime.Allocate(pinner, uintptr(length274*(56+22*4)), 8) + for index, element := range slice272 { + base := unsafe.Add(result273, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8154 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8154) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8154))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8155 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8155) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8155))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8156 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8156) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8156))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8157 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8157) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8157))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8158 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8158) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8158))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8159 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8159) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8159))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8160 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8160) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8160))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8161 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8161) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8161))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8162 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8162) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8162))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8163 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8163) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8163))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice176 := payload + length178 := uint32(len(slice176)) + result177 := witRuntime.Allocate(pinner, uintptr(length178*(17*4)), 4) + for index, element := range slice176 { + base := unsafe.Add(result177, index*(17*4)) + utf8164 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8164) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8164))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8165 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8165) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8165))) + + default: + panic("unreachable") + } + slice167 := ((element).Metadata).Aliases + length169 := uint32(len(slice167)) + result168 := witRuntime.Allocate(pinner, uintptr(length169*(2*4)), 4) + for index, element := range slice167 { + base := unsafe.Add(result168, index*(2*4)) + utf8166 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8166) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8166))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length169) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result168))) + slice171 := ((element).Metadata).Examples + length173 := uint32(len(slice171)) + result172 := witRuntime.Allocate(pinner, uintptr(length173*(2*4)), 4) + for index, element := range slice171 { + base := unsafe.Add(result172, index*(2*4)) + utf8170 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8170) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8170))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length173) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result172))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf8174 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8174) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf8174))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf8175 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8175) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf8175))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length178) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result177))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice191 := payload + length193 := uint32(len(slice191)) + result192 := witRuntime.Allocate(pinner, uintptr(length193*(8+16*4)), 4) + for index, element := range slice191 { + base := unsafe.Add(result192, index*(8+16*4)) + utf8179 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8179) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8179))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8180 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8180) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8180))) + + default: + panic("unreachable") + } + slice182 := ((element).Metadata).Aliases + length184 := uint32(len(slice182)) + result183 := witRuntime.Allocate(pinner, uintptr(length184*(2*4)), 4) + for index, element := range slice182 { + base := unsafe.Add(result183, index*(2*4)) + utf8181 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8181) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8181))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length184) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result183))) + slice186 := ((element).Metadata).Examples + length188 := uint32(len(slice186)) + result187 := witRuntime.Allocate(pinner, uintptr(length188*(2*4)), 4) + for index, element := range slice186 { + base := unsafe.Add(result187, index*(2*4)) + utf8185 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8185) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8185))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length188) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result187))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8189 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8189) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8189))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8190 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8190) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8190))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length193) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result192))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice195 := payload + length197 := uint32(len(slice195)) + result196 := witRuntime.Allocate(pinner, uintptr(length197*(2*4)), 4) + for index, element := range slice195 { + base := unsafe.Add(result196, index*(2*4)) + utf8194 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8194) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8194))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length197) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result196))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice199 := payload + length201 := uint32(len(slice199)) + result200 := witRuntime.Allocate(pinner, uintptr(length201*(2*4)), 4) + for index, element := range slice199 { + base := unsafe.Add(result200, index*(2*4)) + utf8198 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8198) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8198))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length201) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result200))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice202 := payload + length204 := uint32(len(slice202)) + result203 := witRuntime.Allocate(pinner, uintptr(length204*4), 4) + for index, element := range slice202 { + base := unsafe.Add(result203, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length204) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result203))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice206 := payload + length208 := uint32(len(slice206)) + result207 := witRuntime.Allocate(pinner, uintptr(length208*(2*4)), 4) + for index, element := range slice206 { + base := unsafe.Add(result207, index*(2*4)) + utf8205 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8205) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8205))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length208) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result207))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf8209 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8209) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf8209))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice211 := payload + length213 := uint32(len(slice211)) + result212 := witRuntime.Allocate(pinner, uintptr(length213*(2*4)), 4) + for index, element := range slice211 { + base := unsafe.Add(result212, index*(2*4)) + utf8210 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8210) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8210))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length213) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result212))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice215 := payload + length217 := uint32(len(slice215)) + result216 := witRuntime.Allocate(pinner, uintptr(length217*(2*4)), 4) + for index, element := range slice215 { + base := unsafe.Add(result216, index*(2*4)) + utf8214 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8214) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8214))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length217) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result216))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice219 := payload + length221 := uint32(len(slice219)) + result220 := witRuntime.Allocate(pinner, uintptr(length221*(2*4)), 4) + for index, element := range slice219 { + base := unsafe.Add(result220, index*(2*4)) + utf8218 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8218) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8218))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length221) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result220))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice223 := payload + length225 := uint32(len(slice223)) + result224 := witRuntime.Allocate(pinner, uintptr(length225*(2*4)), 4) + for index, element := range slice223 { + base := unsafe.Add(result224, index*(2*4)) + utf8222 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8222) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8222))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length225) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result224))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice227 := payload + length229 := uint32(len(slice227)) + result228 := witRuntime.Allocate(pinner, uintptr(length229*(2*4)), 4) + for index, element := range slice227 { + base := unsafe.Add(result228, index*(2*4)) + utf8226 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8226) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8226))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length229) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result228))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8230 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf8230) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8230))) + slice232 := (payload).AllowedSuffixes + length234 := uint32(len(slice232)) + result233 := witRuntime.Allocate(pinner, uintptr(length234*(2*4)), 4) + for index, element := range slice232 { + base := unsafe.Add(result233, index*(2*4)) + utf8231 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8231) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8231))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length234) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result233))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf8235 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8235) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf8235))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf8236 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8236) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf8236))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice256 := (payload).Branches + length258 := uint32(len(slice256)) + result257 := witRuntime.Allocate(pinner, uintptr(length258*(23*4)), 4) + for index, element := range slice256 { + base := unsafe.Add(result257, index*(23*4)) + utf8237 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf8237) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8237))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf8238 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8238) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8238))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8239 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8239) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8239))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf8240 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8240) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8240))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf8241 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8241) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8241))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf8242 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf8242) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8242))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8243 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8243) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8243))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf8244 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8244) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8244))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf8245 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8245) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf8245))) + + default: + panic("unreachable") + } + slice247 := ((element).Metadata).Aliases + length249 := uint32(len(slice247)) + result248 := witRuntime.Allocate(pinner, uintptr(length249*(2*4)), 4) + for index, element := range slice247 { + base := unsafe.Add(result248, index*(2*4)) + utf8246 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8246) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8246))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length249) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result248))) + slice251 := ((element).Metadata).Examples + length253 := uint32(len(slice251)) + result252 := witRuntime.Allocate(pinner, uintptr(length253*(2*4)), 4) + for index, element := range slice251 { + base := unsafe.Add(result252, index*(2*4)) + utf8250 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8250) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8250))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length253) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result252))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8254 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8254) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8254))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8255 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8255) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8255))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length258) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result257))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8259 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8259) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8259))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8260 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8260) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8260))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8261 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8261) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8261))) + + default: + panic("unreachable") + } + slice263 := ((element).Metadata).Aliases + length265 := uint32(len(slice263)) + result264 := witRuntime.Allocate(pinner, uintptr(length265*(2*4)), 4) + for index, element := range slice263 { + base := unsafe.Add(result264, index*(2*4)) + utf8262 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8262) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8262))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length265) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result264))) + slice267 := ((element).Metadata).Examples + length269 := uint32(len(slice267)) + result268 := witRuntime.Allocate(pinner, uintptr(length269*(2*4)), 4) + for index, element := range slice267 { + base := unsafe.Add(result268, index*(2*4)) + utf8266 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8266) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8266))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length269) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result268))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8270 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8270) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8270))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8271 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8271) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8271))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (11 * 4))) = uint32(length274) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (10 * 4))) = uint32(uintptr(uintptr(result273))) + slice277 := ((response).Graph).Defs + length279 := uint32(len(slice277)) + result278 := witRuntime.Allocate(pinner, uintptr(length279*(6*4)), 4) + for index, element := range slice277 { + base := unsafe.Add(result278, index*(6*4)) + utf8275 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8275) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8275))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8276 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8276) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8276))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (13 * 4))) = uint32(length279) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (12 * 4))) = uint32(uintptr(uintptr(result278))) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (14 * 4))) = ((response).Graph).Root + slice309 := ((response).Value).ValueNodes + length311 := uint32(len(slice309)) + result310 := witRuntime.Allocate(pinner, uintptr(length311*(16+4*4)), 8) + for index, element := range slice309 { + base := unsafe.Add(result310, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result280 int32 + if payload { + result280 = 1 + } else { + result280 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result280) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf8281 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8281) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8281))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice282 := payload + length284 := uint32(len(slice282)) + result283 := witRuntime.Allocate(pinner, uintptr(length284*4), 4) + for index, element := range slice282 { + base := unsafe.Add(result283, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length284) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result283))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice286 := payload + length288 := uint32(len(slice286)) + result287 := witRuntime.Allocate(pinner, uintptr(length288*1), 1) + for index, element := range slice286 { + base := unsafe.Add(result287, index*1) + var result285 int32 + if element { + result285 = 1 + } else { + result285 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result285) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length288) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result287))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice289 := payload + length291 := uint32(len(slice289)) + result290 := witRuntime.Allocate(pinner, uintptr(length291*4), 4) + for index, element := range slice289 { + base := unsafe.Add(result290, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length291) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result290))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice292 := payload + length294 := uint32(len(slice292)) + result293 := witRuntime.Allocate(pinner, uintptr(length294*4), 4) + for index, element := range slice292 { + base := unsafe.Add(result293, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length294) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result293))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice295 := payload + length297 := uint32(len(slice295)) + result296 := witRuntime.Allocate(pinner, uintptr(length297*4), 4) + for index, element := range slice295 { + base := unsafe.Add(result296, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length297) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result296))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice298 := payload + length300 := uint32(len(slice298)) + result299 := witRuntime.Allocate(pinner, uintptr(length300*8), 4) + for index, element := range slice298 { + base := unsafe.Add(result299, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length300) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result299))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf8301 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf8301) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8301))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8302 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8302) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8302))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data303 := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data303) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data303))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8304 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8304) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8304))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf8305 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8305) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8305))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf8306 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8306) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8306))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf8307 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8307) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf8307))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8308 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf8308) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8308))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 * 4))) = uint32(length311) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (15 * 4))) = uint32(uintptr(uintptr(result310))) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (17 * 4))) = ((response).Value).Root + + switch functionType.Tag() { + case golem_api_oplog.WrappedFunctionTypeReadLocal: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (18 * 4))) = int8(int32(0)) + + case golem_api_oplog.WrappedFunctionTypeWriteLocal: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (18 * 4))) = int8(int32(1)) + + case golem_api_oplog.WrappedFunctionTypeReadRemote: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (18 * 4))) = int8(int32(2)) + + case golem_api_oplog.WrappedFunctionTypeWriteRemote: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (18 * 4))) = int8(int32(3)) + + case golem_api_oplog.WrappedFunctionTypeWriteRemoteBatched: + payload := functionType.WriteRemoteBatched() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (18 * 4))) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 18*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 18*4))) = int64(payload) + + default: + panic("unreachable") + } + + case golem_api_oplog.WrappedFunctionTypeWriteRemoteTransaction: + payload := functionType.WriteRemoteTransaction() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (18 * 4))) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 18*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 18*4))) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + wasm_import_persist_durable_function_invocation(returnArea) + +} + +//go:wasmimport golem:durability/durability@1.5.0 read-persisted-durable-function-invocation +func wasm_import_read_persisted_durable_function_invocation(arg0 uintptr) + +func ReadPersistedDurableFunctionInvocation() PersistedDurableFunctionInvocation { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (48 + 10*4), 8)) + wasm_import_read_persisted_durable_function_invocation(returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))) + result172 := make([]golem_core_types.SchemaTypeNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4))))), index*(56+22*4)) + var variant160 golem_core_types.SchemaTypeBody + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant160 = golem_core_types.MakeSchemaTypeBodyRefType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 1: + + variant160 = golem_core_types.MakeSchemaTypeBodyBoolType() + + case 2: + var option4 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option4 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option = witTypes.Some[golem_core_types.NumericBound](variant) + default: + panic("unreachable") + } + var option1 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option1 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant0 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant0 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant0 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant0 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option1 = witTypes.Some[golem_core_types.NumericBound](variant0) + default: + panic("unreachable") + } + var option3 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option3 = witTypes.None[string]() + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option3 = witTypes.Some[string](value2) + default: + panic("unreachable") + } + + option4 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option, option1, option3}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS8Type(option4) + + case 3: + var option11 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option11 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option6 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option6 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant5 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant5 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant5 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant5 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option6 = witTypes.Some[golem_core_types.NumericBound](variant5) + default: + panic("unreachable") + } + var option8 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option8 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant7 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant7 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant7 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant7 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option8 = witTypes.Some[golem_core_types.NumericBound](variant7) + default: + panic("unreachable") + } + var option10 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option10 = witTypes.None[string]() + case 1: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option10 = witTypes.Some[string](value9) + default: + panic("unreachable") + } + + option11 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option6, option8, option10}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS16Type(option11) + + case 4: + var option18 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option18 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option13 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option13 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant12 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant12 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant12 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant12 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option13 = witTypes.Some[golem_core_types.NumericBound](variant12) + default: + panic("unreachable") + } + var option15 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option15 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant14 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant14 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant14 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant14 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option15 = witTypes.Some[golem_core_types.NumericBound](variant14) + default: + panic("unreachable") + } + var option17 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option17 = witTypes.None[string]() + case 1: + value16 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option17 = witTypes.Some[string](value16) + default: + panic("unreachable") + } + + option18 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option13, option15, option17}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS32Type(option18) + + case 5: + var option25 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option25 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option20 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option20 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant19 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant19 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant19 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant19 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option20 = witTypes.Some[golem_core_types.NumericBound](variant19) + default: + panic("unreachable") + } + var option22 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option22 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant21 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant21 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant21 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant21 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option22 = witTypes.Some[golem_core_types.NumericBound](variant21) + default: + panic("unreachable") + } + var option24 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option24 = witTypes.None[string]() + case 1: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option24 = witTypes.Some[string](value23) + default: + panic("unreachable") + } + + option25 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option20, option22, option24}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyS64Type(option25) + + case 6: + var option32 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option32 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option27 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option27 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant26 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant26 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant26 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant26 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option27 = witTypes.Some[golem_core_types.NumericBound](variant26) + default: + panic("unreachable") + } + var option29 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option29 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant28 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant28 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant28 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant28 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option29 = witTypes.Some[golem_core_types.NumericBound](variant28) + default: + panic("unreachable") + } + var option31 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option31 = witTypes.None[string]() + case 1: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option31 = witTypes.Some[string](value30) + default: + panic("unreachable") + } + + option32 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option27, option29, option31}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU8Type(option32) + + case 7: + var option39 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option39 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option34 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option34 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant33 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant33 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant33 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant33 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option34 = witTypes.Some[golem_core_types.NumericBound](variant33) + default: + panic("unreachable") + } + var option36 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option36 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant35 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant35 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant35 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant35 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option36 = witTypes.Some[golem_core_types.NumericBound](variant35) + default: + panic("unreachable") + } + var option38 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option38 = witTypes.None[string]() + case 1: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option38 = witTypes.Some[string](value37) + default: + panic("unreachable") + } + + option39 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option34, option36, option38}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU16Type(option39) + + case 8: + var option46 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option46 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option41 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option41 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant40 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant40 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant40 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant40 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option41 = witTypes.Some[golem_core_types.NumericBound](variant40) + default: + panic("unreachable") + } + var option43 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option43 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant42 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant42 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant42 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant42 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option43 = witTypes.Some[golem_core_types.NumericBound](variant42) + default: + panic("unreachable") + } + var option45 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option45 = witTypes.None[string]() + case 1: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option45 = witTypes.Some[string](value44) + default: + panic("unreachable") + } + + option46 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option41, option43, option45}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU32Type(option46) + + case 9: + var option53 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option53 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option48 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option48 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant47 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant47 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant47 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant47 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option48 = witTypes.Some[golem_core_types.NumericBound](variant47) + default: + panic("unreachable") + } + var option50 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option50 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant49 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant49 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant49 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant49 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option50 = witTypes.Some[golem_core_types.NumericBound](variant49) + default: + panic("unreachable") + } + var option52 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option52 = witTypes.None[string]() + case 1: + value51 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option52 = witTypes.Some[string](value51) + default: + panic("unreachable") + } + + option53 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option48, option50, option52}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyU64Type(option53) + + case 10: + var option60 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option60 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option55 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option55 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant54 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant54 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant54 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant54 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option55 = witTypes.Some[golem_core_types.NumericBound](variant54) + default: + panic("unreachable") + } + var option57 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option57 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant56 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant56 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant56 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant56 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option57 = witTypes.Some[golem_core_types.NumericBound](variant56) + default: + panic("unreachable") + } + var option59 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option59 = witTypes.None[string]() + case 1: + value58 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option59 = witTypes.Some[string](value58) + default: + panic("unreachable") + } + + option60 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option55, option57, option59}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyF32Type(option60) + + case 11: + var option67 witTypes.Option[golem_core_types.NumericRestrictions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option67 = witTypes.None[golem_core_types.NumericRestrictions]() + case 1: + var option62 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option62 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant61 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant61 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant61 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + case 2: + + variant61 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32)))) + + default: + panic("unreachable") + } + + option62 = witTypes.Some[golem_core_types.NumericBound](variant61) + default: + panic("unreachable") + } + var option64 witTypes.Option[golem_core_types.NumericBound] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40))) { + case 0: + + option64 = witTypes.None[golem_core_types.NumericBound]() + case 1: + var variant63 golem_core_types.NumericBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 48))) { + case 0: + + variant63 = golem_core_types.MakeNumericBoundSigned(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56))) + + case 1: + + variant63 = golem_core_types.MakeNumericBoundUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + case 2: + + variant63 = golem_core_types.MakeNumericBoundFloatBits(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 56)))) + + default: + panic("unreachable") + } + + option64 = witTypes.Some[golem_core_types.NumericBound](variant63) + default: + panic("unreachable") + } + var option66 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 64))) { + case 0: + + option66 = witTypes.None[string]() + case 1: + value65 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4)))) + + option66 = witTypes.Some[string](value65) + default: + panic("unreachable") + } + + option67 = witTypes.Some[golem_core_types.NumericRestrictions](golem_core_types.NumericRestrictions{option62, option64, option66}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyF64Type(option67) + + case 12: + + variant160 = golem_core_types.MakeSchemaTypeBodyCharType() + + case 13: + + variant160 = golem_core_types.MakeSchemaTypeBodyStringType() + + case 14: + result79 := make([]golem_core_types.NamedFieldType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(17*4)) + value68 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option70 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + + option70 = witTypes.None[string]() + case 1: + value69 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + option70 = witTypes.Some[string](value69) + default: + panic("unreachable") + } + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))))), index*(2*4)) + value71 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value71) + } + + result73 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))))), index*(2*4)) + value72 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result73 = append(result73, value72) + } + + var option75 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))) { + case 0: + + option75 = witTypes.None[string]() + case 1: + value74 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4)))) + + option75 = witTypes.Some[string](value74) + default: + panic("unreachable") + } + var option78 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) { + case 0: + + option78 = witTypes.None[golem_core_types.Role]() + case 1: + var variant77 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4)))) { + case 0: + + variant77 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant77 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant77 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value76 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) + + variant77 = golem_core_types.MakeRoleOther(value76) + + default: + panic("unreachable") + } + + option78 = witTypes.Some[golem_core_types.Role](variant77) + default: + panic("unreachable") + } + + result79 = append(result79, golem_core_types.NamedFieldType{value68, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), golem_core_types.MetadataEnvelope{option70, result, result73, option75, option78}}) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyRecordType(result79) + + case 15: + result93 := make([]golem_core_types.VariantCaseType, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(8+16*4)) + value80 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option81 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option81 = witTypes.None[int32]() + case 1: + + option81 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4)))) + default: + panic("unreachable") + } + var option83 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option83 = witTypes.None[string]() + case 1: + value82 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option83 = witTypes.Some[string](value82) + default: + panic("unreachable") + } + result85 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value84 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result85 = append(result85, value84) + } + + result87 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))))), index*(2*4)) + value86 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result87 = append(result87, value86) + } + + var option89 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4)))) { + case 0: + + option89 = witTypes.None[string]() + case 1: + value88 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4)))) + + option89 = witTypes.Some[string](value88) + default: + panic("unreachable") + } + var option92 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4)))) { + case 0: + + option92 = witTypes.None[golem_core_types.Role]() + case 1: + var variant91 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4)))) { + case 0: + + variant91 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant91 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant91 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value90 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4)))) + + variant91 = golem_core_types.MakeRoleOther(value90) + + default: + panic("unreachable") + } + + option92 = witTypes.Some[golem_core_types.Role](variant91) + default: + panic("unreachable") + } + + result93 = append(result93, golem_core_types.VariantCaseType{value80, option81, golem_core_types.MetadataEnvelope{option83, result85, result87, option89, option92}}) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyVariantType(result93) + + case 16: + result95 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value94 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result95 = append(result95, value94) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyEnumType(result95) + + case 17: + result97 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(2*4)) + value96 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result97 = append(result97, value96) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyFlagsType(result97) + + case 18: + result98 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result98 = append(result98, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyTupleType(result98) + + case 19: + + variant160 = golem_core_types.MakeSchemaTypeBodyListType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 20: + + variant160 = golem_core_types.MakeSchemaTypeBodyFixedListType(golem_core_types.FixedListSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 21: + + variant160 = golem_core_types.MakeSchemaTypeBodyMapType(golem_core_types.MapSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12))}) + + case 22: + + variant160 = golem_core_types.MakeSchemaTypeBodyOptionType(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 23: + var option99 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option99 = witTypes.None[int32]() + case 1: + + option99 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + var option100 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + option100 = witTypes.None[int32]() + case 1: + + option100 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyResultType(golem_core_types.ResultSpec{option99, option100}) + + case 24: + var option103 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option103 = witTypes.None[[]string]() + case 1: + result102 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value101 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result102 = append(result102, value101) + } + + option103 = witTypes.Some[[]string](result102) + default: + panic("unreachable") + } + var option104 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option104 = witTypes.None[uint32]() + case 1: + + option104 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option105 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option105 = witTypes.None[uint32]() + case 1: + + option105 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + var option107 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4)))) { + case 0: + + option107 = witTypes.None[string]() + case 1: + value106 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))) + + option107 = witTypes.Some[string](value106) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyTextType(golem_core_types.TextRestrictions{option103, option104, option105, option107}) + + case 25: + var option110 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option110 = witTypes.None[[]string]() + case 1: + result109 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value108 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result109 = append(result109, value108) + } + + option110 = witTypes.Some[[]string](result109) + default: + panic("unreachable") + } + var option111 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option111 = witTypes.None[uint32]() + case 1: + + option111 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))))) + default: + panic("unreachable") + } + var option112 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4)))) { + case 0: + + option112 = witTypes.None[uint32]() + case 1: + + option112 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyBinaryType(golem_core_types.BinaryRestrictions{option110, option111, option112}) + + case 26: + var option115 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option115 = witTypes.None[[]string]() + case 1: + result114 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value113 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result114 = append(result114, value113) + } + + option115 = witTypes.Some[[]string](result114) + default: + panic("unreachable") + } + var option118 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option118 = witTypes.None[[]string]() + case 1: + result117 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(2*4)) + value116 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result117 = append(result117, value116) + } + + option118 = witTypes.Some[[]string](result117) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyPathType(golem_core_types.PathSpec{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), option115, option118}) + + case 27: + var option121 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option121 = witTypes.None[[]string]() + case 1: + result120 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))))), index*(2*4)) + value119 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result120 = append(result120, value119) + } + + option121 = witTypes.Some[[]string](result120) + default: + panic("unreachable") + } + var option124 witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + + option124 = witTypes.None[[]string]() + case 1: + result123 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))))), index*(2*4)) + value122 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result123 = append(result123, value122) + } + + option124 = witTypes.Some[[]string](result123) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyUrlType(golem_core_types.UrlRestrictions{option121, option124}) + + case 28: + + variant160 = golem_core_types.MakeSchemaTypeBodyDatetimeType() + + case 29: + + variant160 = golem_core_types.MakeSchemaTypeBodyDurationType() + + case 30: + value125 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result127 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*(2*4)) + value126 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result127 = append(result127, value126) + } + + var option129 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) { + case 0: + + option129 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value128 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4)))) + + option129 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))), value128}) + default: + panic("unreachable") + } + var option131 witTypes.Option[golem_core_types.QuantityValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4)))) { + case 0: + + option131 = witTypes.None[golem_core_types.QuantityValue]() + case 1: + value130 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4)))) + + option131 = witTypes.Some[golem_core_types.QuantityValue](golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))), *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))), value130}) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyQuantityType(golem_core_types.QuantitySpec{value125, result127, option129, option131}) + + case 31: + result153 := make([]golem_core_types.UnionBranch, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*(23*4)) + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var variant141 golem_core_types.DiscriminatorRule + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) { + case 0: + value133 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRulePrefix(value133) + + case 1: + value134 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleSuffix(value134) + + case 2: + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleContains(value135) + + case 3: + value136 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleRegex(value136) + + case 4: + value137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + var option139 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4)))) { + case 0: + + option139 = witTypes.None[string]() + case 1: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4)))) + + option139 = witTypes.Some[string](value138) + default: + panic("unreachable") + } + + variant141 = golem_core_types.MakeDiscriminatorRuleFieldEquals(golem_core_types.FieldDiscriminator{value137, option139}) + + case 5: + value140 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))) + + variant141 = golem_core_types.MakeDiscriminatorRuleFieldAbsent(value140) + + default: + panic("unreachable") + } + var option143 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4)))) { + case 0: + + option143 = witTypes.None[string]() + case 1: + value142 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4)))) + + option143 = witTypes.Some[string](value142) + default: + panic("unreachable") + } + result145 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))))), index*(2*4)) + value144 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result145 = append(result145, value144) + } + + result147 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))))), index*(2*4)) + value146 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result147 = append(result147, value146) + } + + var option149 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4)))) { + case 0: + + option149 = witTypes.None[string]() + case 1: + value148 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4)))) + + option149 = witTypes.Some[string](value148) + default: + panic("unreachable") + } + var option152 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4)))) { + case 0: + + option152 = witTypes.None[golem_core_types.Role]() + case 1: + var variant151 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4)))) { + case 0: + + variant151 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant151 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant151 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value150 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4)))) + + variant151 = golem_core_types.MakeRoleOther(value150) + + default: + panic("unreachable") + } + + option152 = witTypes.Some[golem_core_types.Role](variant151) + default: + panic("unreachable") + } + + result153 = append(result153, golem_core_types.UnionBranch{value132, *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))), variant141, golem_core_types.MetadataEnvelope{option143, result145, result147, option149, option152}}) + } + + variant160 = golem_core_types.MakeSchemaTypeBodyUnionType(golem_core_types.UnionSpec{result153}) + + case 32: + var option155 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) { + case 0: + + option155 = witTypes.None[string]() + case 1: + value154 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + option155 = witTypes.Some[string](value154) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodySecretType(golem_core_types.SecretSpec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), option155}) + + case 33: + var option157 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option157 = witTypes.None[string]() + case 1: + value156 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + option157 = witTypes.Some[string](value156) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyQuotaTokenType(golem_core_types.QuotaTokenSpec{option157}) + + case 34: + var option158 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option158 = witTypes.None[int32]() + case 1: + + option158 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyFutureType(option158) + + case 35: + var option159 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option159 = witTypes.None[int32]() + case 1: + + option159 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant160 = golem_core_types.MakeSchemaTypeBodyStreamType(option159) + + default: + panic("unreachable") + } + var option162 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4)))) { + case 0: + + option162 = witTypes.None[string]() + case 1: + value161 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4)))) + + option162 = witTypes.Some[string](value161) + default: + panic("unreachable") + } + result164 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))))), index*(2*4)) + value163 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result164 = append(result164, value163) + } + + result166 := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))))), index*(2*4)) + value165 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result166 = append(result166, value165) + } + + var option168 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4)))) { + case 0: + + option168 = witTypes.None[string]() + case 1: + value167 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4)))) + + option168 = witTypes.Some[string](value167) + default: + panic("unreachable") + } + var option171 witTypes.Option[golem_core_types.Role] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4)))) { + case 0: + + option171 = witTypes.None[golem_core_types.Role]() + case 1: + var variant170 golem_core_types.Role + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4)))) { + case 0: + + variant170 = golem_core_types.MakeRoleMultimodal() + + case 1: + + variant170 = golem_core_types.MakeRoleUnstructuredText() + + case 2: + + variant170 = golem_core_types.MakeRoleUnstructuredBinary() + + case 3: + value169 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4)))) + + variant170 = golem_core_types.MakeRoleOther(value169) + + default: + panic("unreachable") + } + + option171 = witTypes.Some[golem_core_types.Role](variant170) + default: + panic("unreachable") + } + + result172 = append(result172, golem_core_types.SchemaTypeNode{variant160, golem_core_types.MetadataEnvelope{option162, result164, result166, option168, option171}}) + } + + result176 := make([]golem_core_types.SchemaTypeDef, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 5*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 5*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 4*4))))), index*(6*4)) + value173 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + var option175 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))) { + case 0: + + option175 = witTypes.None[string]() + case 1: + value174 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4)))) + + option175 = witTypes.Some[string](value174) + default: + panic("unreachable") + } + + result176 = append(result176, golem_core_types.SchemaTypeDef{value173, option175, *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4)))}) + } + + result200 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 8*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 8*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 7*4))))), index*(16+4*4)) + var variant199 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant199 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant199 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant199 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant199 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant199 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant199 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant199 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant199 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant199 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant199 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant199 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant199 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value177 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeStringValue(value177) + + case 13: + result178 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result178 = append(result178, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeRecordValue(result178) + + case 14: + var option179 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option179 = witTypes.None[int32]() + case 1: + + option179 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option179}) + + case 15: + + variant199 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result180 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result180 = append(result180, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant199 = golem_core_types.MakeSchemaValueNodeFlagsValue(result180) + + case 17: + result181 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result181 = append(result181, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeTupleValue(result181) + + case 18: + result182 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result182 = append(result182, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeListValue(result182) + + case 19: + result183 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result183 = append(result183, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant199 = golem_core_types.MakeSchemaValueNodeFixedListValue(result183) + + case 20: + result184 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result184 = append(result184, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant199 = golem_core_types.MakeSchemaValueNodeMapValue(result184) + + case 21: + var option185 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option185 = witTypes.None[int32]() + case 1: + + option185 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeOptionValue(option185) + + case 22: + var variant188 golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option186 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option186 = witTypes.None[int32]() + case 1: + + option186 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant188 = golem_core_types.MakeResultValuePayloadOkValue(option186) + + case 1: + var option187 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option187 = witTypes.None[int32]() + case 1: + + option187 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant188 = golem_core_types.MakeResultValuePayloadErrValue(option187) + + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeResultValue(variant188) + + case 23: + value189 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option191 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option191 = witTypes.None[string]() + case 1: + value190 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option191 = witTypes.Some[string](value190) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value189, option191}) + + case 24: + value192 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option194 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option194 = witTypes.None[string]() + case 1: + value193 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option194 = witTypes.Some[string](value193) + default: + panic("unreachable") + } + + variant199 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value192, option194}) + + case 25: + value195 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodePathValue(value195) + + case 26: + value196 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeUrlValue(value196) + + case 27: + + variant199 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant199 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value197 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value197}) + + case 30: + value198 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant199 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value198, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant199 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant199 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result200 = append(result200, variant199) + } + + var variant203 golem_api_oplog.WrappedFunctionType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 10*4)))) { + case 0: + + variant203 = golem_api_oplog.MakeWrappedFunctionTypeReadLocal() + + case 1: + + variant203 = golem_api_oplog.MakeWrappedFunctionTypeWriteLocal() + + case 2: + + variant203 = golem_api_oplog.MakeWrappedFunctionTypeReadRemote() + + case 3: + + variant203 = golem_api_oplog.MakeWrappedFunctionTypeWriteRemote() + + case 4: + var option201 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 10*4)))) { + case 0: + + option201 = witTypes.None[uint64]() + case 1: + + option201 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (32 + 10*4))))) + default: + panic("unreachable") + } + + variant203 = golem_api_oplog.MakeWrappedFunctionTypeWriteRemoteBatched(option201) + + case 5: + var option202 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (24 + 10*4)))) { + case 0: + + option202 = witTypes.None[uint64]() + case 1: + + option202 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (32 + 10*4))))) + default: + panic("unreachable") + } + + variant203 = golem_api_oplog.MakeWrappedFunctionTypeWriteRemoteTransaction(option202) + + default: + panic("unreachable") + } + result204 := PersistedDurableFunctionInvocation{wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 0)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))}, value, golem_core_types.TypedSchemaValue{golem_core_types.SchemaGraph{result172, result176, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 6*4)))}, golem_core_types.SchemaValueTree{result200, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 9*4)))}}, variant203, uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (40 + 10*4)))))} + return result204 + +} diff --git a/sdks/go/internal/wit/golem_quota_types/empty.s b/sdks/go/internal/wit/golem_quota_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_quota_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_quota_types/wit_bindings.go b/sdks/go/internal/wit/golem_quota_types/wit_bindings.go new file mode 100644 index 0000000000..5efb31b454 --- /dev/null +++ b/sdks/go/internal/wit/golem_quota_types/wit_bindings.go @@ -0,0 +1,176 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_quota_types + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type QuotaToken = golem_core_types.QuotaToken + +// Error returned when a reservation cannot be satisfied because the +// resource's enforcement policy is `reject`. +// +// The inner value is an optional estimate in nanoseconds of how long +// the caller would need to wait for capacity (only available for +// rate-limited resources). +type FailedReservation struct { + EstimatedWaitNanos witTypes.Option[uint64] +} + +//go:wasmimport golem:quota/types@1.5.0 [resource-drop]reservation +func resourceDropReservation(handle int32) + +// A short-lived capability that represents a pending or committed +// resource consumption. Drop without committing is equivalent to +// committing zero usage. +type Reservation struct { + handle *witRuntime.Handle +} + +func (self *Reservation) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Reservation) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Reservation) Handle() int32 { + return self.handle.Use() +} + +func (self *Reservation) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropReservation(handle) + } +} + +func ReservationFromOwnHandle(handleValue int32) *Reservation { + handle := witRuntime.MakeHandle(handleValue) + value := &Reservation{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropReservation(handleValue) + } + }, 0) + return value +} + +func ReservationFromBorrowHandle(handleValue int32) *Reservation { + handle := witRuntime.MakeHandle(handleValue) + return &Reservation{handle} +} + +//go:wasmimport golem:quota/types@1.5.0 [static]reservation.commit +func wasm_import_static_reservation_commit(arg0 int32, arg1 int64) + +func ReservationCommit(this *Reservation, used uint64) { + + wasm_import_static_reservation_commit((this).TakeHandle(), int64(used)) + +} + +//go:wasmimport golem:quota/types@1.5.0 new-token +func wasm_import_new_token(arg0 uintptr, arg1 uint32, arg2 int64) int32 + +func NewToken(resourceName string, expectedUse uint64) *golem_core_types.QuotaToken { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(resourceName)) + pinner.Pin(utf8) + result := wasm_import_new_token(uintptr(utf8), uint32(len(resourceName)), int64(expectedUse)) + return golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport golem:quota/types@1.5.0 reserve +func wasm_import_reserve(arg0 int32, arg1 int64, arg2 uintptr) + +func Reserve(token *golem_core_types.QuotaToken, amount uint64) witTypes.Result[*Reservation, FailedReservation] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 24, 8)) + wasm_import_reserve((token).Handle(), int64(amount), returnArea) + var result witTypes.Result[*Reservation, FailedReservation] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*Reservation, FailedReservation](ReservationFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))))) + case 1: + var option witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + option = witTypes.None[uint64]() + case 1: + + option = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))) + default: + panic("unreachable") + } + + result = witTypes.Err[*Reservation, FailedReservation](FailedReservation{option}) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport golem:quota/types@1.5.0 split +func wasm_import_split(arg0 int32, arg1 int64) int32 + +func Split(token *golem_core_types.QuotaToken, childExpectedUse uint64) *golem_core_types.QuotaToken { + + result := wasm_import_split((token).Handle(), int64(childExpectedUse)) + return golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport golem:quota/types@1.5.0 merge +func wasm_import_merge(arg0 int32, arg1 int32) + +func Merge(token *golem_core_types.QuotaToken, other *golem_core_types.QuotaToken) { + + wasm_import_merge((token).Handle(), (other).TakeHandle()) + +} diff --git a/sdks/go/internal/wit/golem_rdbms_ignite2/empty.s b/sdks/go/internal/wit/golem_rdbms_ignite2/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_ignite2/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_rdbms_ignite2/wit_bindings.go b/sdks/go/internal/wit/golem_rdbms_ignite2/wit_bindings.go new file mode 100644 index 0000000000..90597b93dc --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_ignite2/wit_bindings.go @@ -0,0 +1,2036 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_rdbms_ignite2 + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +const ( + ErrorConnectionFailure uint8 = 0 + ErrorQueryParameterFailure uint8 = 1 + ErrorQueryExecutionFailure uint8 = 2 + ErrorQueryResponseFailure uint8 = 3 + ErrorOther uint8 = 4 +) + +// ── Error ────────────────────────────────────────────────────────────────── +type Error struct { + tag uint8 + value any +} + +func (self Error) Tag() uint8 { + return self.tag +} + +func (self Error) ConnectionFailure() string { + if self.tag != ErrorConnectionFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryParameterFailure() string { + if self.tag != ErrorQueryParameterFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryExecutionFailure() string { + if self.tag != ErrorQueryExecutionFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryResponseFailure() string { + if self.tag != ErrorQueryResponseFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) Other() string { + if self.tag != ErrorOther { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeErrorConnectionFailure(value string) Error { + return Error{ErrorConnectionFailure, value} +} +func MakeErrorQueryParameterFailure(value string) Error { + return Error{ErrorQueryParameterFailure, value} +} +func MakeErrorQueryExecutionFailure(value string) Error { + return Error{ErrorQueryExecutionFailure, value} +} +func MakeErrorQueryResponseFailure(value string) Error { + return Error{ErrorQueryResponseFailure, value} +} +func MakeErrorOther(value string) Error { + return Error{ErrorOther, value} +} + +const ( + DbValueDbNull uint8 = 0 + DbValueDbBoolean uint8 = 1 + DbValueDbByte uint8 = 2 + DbValueDbShort uint8 = 3 + DbValueDbInt uint8 = 4 + DbValueDbLong uint8 = 5 + DbValueDbFloat uint8 = 6 + DbValueDbDouble uint8 = 7 + // 16-bit Unicode code unit (Java char). + DbValueDbChar uint8 = 8 + DbValueDbString uint8 = 9 + DbValueDbUuid uint8 = 10 + // Milliseconds since Unix epoch (UTC). + DbValueDbDate uint8 = 11 + // (milliseconds since epoch, sub-millisecond nanoseconds 0..999_999). + DbValueDbTimestamp uint8 = 12 + // Nanoseconds since midnight. + DbValueDbTime uint8 = 13 + DbValueDbDecimal uint8 = 14 + DbValueDbByteArray uint8 = 15 +) + +// ── Value types (maps 1-to-1 onto ignite_client::IgniteValue) ───────────── +type DbValue struct { + tag uint8 + value any +} + +func (self DbValue) Tag() uint8 { + return self.tag +} + +func (self DbValue) DbBoolean() bool { + if self.tag != DbValueDbBoolean { + panic("tag mismatch") + } + return self.value.(bool) +} +func (self DbValue) DbByte() int8 { + if self.tag != DbValueDbByte { + panic("tag mismatch") + } + return self.value.(int8) +} +func (self DbValue) DbShort() int16 { + if self.tag != DbValueDbShort { + panic("tag mismatch") + } + return self.value.(int16) +} +func (self DbValue) DbInt() int32 { + if self.tag != DbValueDbInt { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self DbValue) DbLong() int64 { + if self.tag != DbValueDbLong { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self DbValue) DbFloat() float32 { + if self.tag != DbValueDbFloat { + panic("tag mismatch") + } + return self.value.(float32) +} +func (self DbValue) DbDouble() float64 { + if self.tag != DbValueDbDouble { + panic("tag mismatch") + } + return self.value.(float64) +} +func (self DbValue) DbChar() uint16 { + if self.tag != DbValueDbChar { + panic("tag mismatch") + } + return self.value.(uint16) +} +func (self DbValue) DbString() string { + if self.tag != DbValueDbString { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) DbUuid() witTypes.Tuple2[uint64, uint64] { + if self.tag != DbValueDbUuid { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple2[uint64, uint64]) +} +func (self DbValue) DbDate() int64 { + if self.tag != DbValueDbDate { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self DbValue) DbTimestamp() witTypes.Tuple2[int64, int32] { + if self.tag != DbValueDbTimestamp { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple2[int64, int32]) +} +func (self DbValue) DbTime() int64 { + if self.tag != DbValueDbTime { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self DbValue) DbDecimal() string { + if self.tag != DbValueDbDecimal { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) DbByteArray() []uint8 { + if self.tag != DbValueDbByteArray { + panic("tag mismatch") + } + return self.value.([]uint8) +} + +func MakeDbValueDbNull() DbValue { + return DbValue{DbValueDbNull, nil} +} +func MakeDbValueDbBoolean(value bool) DbValue { + return DbValue{DbValueDbBoolean, value} +} +func MakeDbValueDbByte(value int8) DbValue { + return DbValue{DbValueDbByte, value} +} +func MakeDbValueDbShort(value int16) DbValue { + return DbValue{DbValueDbShort, value} +} +func MakeDbValueDbInt(value int32) DbValue { + return DbValue{DbValueDbInt, value} +} +func MakeDbValueDbLong(value int64) DbValue { + return DbValue{DbValueDbLong, value} +} +func MakeDbValueDbFloat(value float32) DbValue { + return DbValue{DbValueDbFloat, value} +} +func MakeDbValueDbDouble(value float64) DbValue { + return DbValue{DbValueDbDouble, value} +} +func MakeDbValueDbChar(value uint16) DbValue { + return DbValue{DbValueDbChar, value} +} +func MakeDbValueDbString(value string) DbValue { + return DbValue{DbValueDbString, value} +} +func MakeDbValueDbUuid(value witTypes.Tuple2[uint64, uint64]) DbValue { + return DbValue{DbValueDbUuid, value} +} +func MakeDbValueDbDate(value int64) DbValue { + return DbValue{DbValueDbDate, value} +} +func MakeDbValueDbTimestamp(value witTypes.Tuple2[int64, int32]) DbValue { + return DbValue{DbValueDbTimestamp, value} +} +func MakeDbValueDbTime(value int64) DbValue { + return DbValue{DbValueDbTime, value} +} +func MakeDbValueDbDecimal(value string) DbValue { + return DbValue{DbValueDbDecimal, value} +} +func MakeDbValueDbByteArray(value []uint8) DbValue { + return DbValue{DbValueDbByteArray, value} +} + +// ── Metadata ─────────────────────────────────────────────────────────────── +type DbColumn struct { + Ordinal uint64 + Name string +} + +type DbRow struct { + Values []DbValue +} + +type DbResult struct { + Columns []DbColumn + Rows []DbRow +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [resource-drop]db-result-stream +func resourceDropDbResultStream(handle int32) + +// ── Resources ────────────────────────────────────────────────────────────── +type DbResultStream struct { + handle *witRuntime.Handle +} + +func (self *DbResultStream) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbResultStream) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbResultStream) Handle() int32 { + return self.handle.Use() +} + +func (self *DbResultStream) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbResultStream(handle) + } +} + +func DbResultStreamFromOwnHandle(handleValue int32) *DbResultStream { + handle := witRuntime.MakeHandle(handleValue) + value := &DbResultStream{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbResultStream(handleValue) + } + }, 0) + return value +} + +func DbResultStreamFromBorrowHandle(handleValue int32) *DbResultStream { + handle := witRuntime.MakeHandle(handleValue) + return &DbResultStream{handle} +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [resource-drop]db-transaction +func resourceDropDbTransaction(handle int32) + +type DbTransaction struct { + handle *witRuntime.Handle +} + +func (self *DbTransaction) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbTransaction) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbTransaction) Handle() int32 { + return self.handle.Use() +} + +func (self *DbTransaction) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbTransaction(handle) + } +} + +func DbTransactionFromOwnHandle(handleValue int32) *DbTransaction { + handle := witRuntime.MakeHandle(handleValue) + value := &DbTransaction{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbTransaction(handleValue) + } + }, 0) + return value +} + +func DbTransactionFromBorrowHandle(handleValue int32) *DbTransaction { + handle := witRuntime.MakeHandle(handleValue) + return &DbTransaction{handle} +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [resource-drop]db-connection +func resourceDropDbConnection(handle int32) + +type DbConnection struct { + handle *witRuntime.Handle +} + +func (self *DbConnection) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbConnection) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbConnection) Handle() int32 { + return self.handle.Use() +} + +func (self *DbConnection) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbConnection(handle) + } +} + +func DbConnectionFromOwnHandle(handleValue int32) *DbConnection { + handle := witRuntime.MakeHandle(handleValue) + value := &DbConnection{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbConnection(handleValue) + } + }, 0) + return value +} + +func DbConnectionFromBorrowHandle(handleValue int32) *DbConnection { + handle := witRuntime.MakeHandle(handleValue) + return &DbConnection{handle} +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-result-stream.get-columns +func wasm_import_method_db_result_stream_get_columns(arg0 int32, arg1 uintptr) + +func (self *DbResultStream) GetColumns() witTypes.Result[[]DbColumn, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_result_stream_get_columns((self).Handle(), returnArea) + var result5 witTypes.Result[[]DbColumn, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(8+2*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + result = append(result, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value}) + } + + result5 = witTypes.Ok[[]DbColumn, Error](result) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value0) + + case 1: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value1) + + case 2: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value2) + + case 3: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value3) + + case 4: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value4) + + default: + panic("unreachable") + } + + result5 = witTypes.Err[[]DbColumn, Error](variant) + default: + panic("unreachable") + } + result6 := result5 + return result6 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-result-stream.get-next +func wasm_import_method_db_result_stream_get_next(arg0 int32, arg1 uintptr) + +func (self *DbResultStream) GetNext() witTypes.Result[witTypes.Option[[]DbRow], Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_result_stream_get_next((self).Handle(), returnArea) + var result9 witTypes.Result[witTypes.Option[[]DbRow], Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + var option witTypes.Option[[]DbRow] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + option = witTypes.None[[]DbRow]() + case 1: + result2 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4))))), index*(2*4)) + result := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*24) + var variant DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant = MakeDbValueDbNull() + + case 1: + + variant = MakeDbValueDbBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 2: + + variant = MakeDbValueDbByte(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant = MakeDbValueDbShort(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 4: + + variant = MakeDbValueDbInt(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant = MakeDbValueDbLong(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + + variant = MakeDbValueDbFloat(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 7: + + variant = MakeDbValueDbDouble(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 8: + + variant = MakeDbValueDbChar(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 9: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbString(value) + + case 10: + + variant = MakeDbValueDbUuid(witTypes.Tuple2[uint64, uint64]{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 11: + + variant = MakeDbValueDbDate(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 12: + + variant = MakeDbValueDbTimestamp(witTypes.Tuple2[int64, int32]{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 13: + + variant = MakeDbValueDbTime(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbDecimal(value0) + + case 15: + value1 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbByteArray(value1) + + default: + panic("unreachable") + } + + result = append(result, variant) + } + + result2 = append(result2, DbRow{result}) + } + + option = witTypes.Some[[]DbRow](result2) + default: + panic("unreachable") + } + + result9 = witTypes.Ok[witTypes.Option[[]DbRow], Error](option) + case 1: + var variant8 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorConnectionFailure(value3) + + case 1: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorQueryParameterFailure(value4) + + case 2: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorQueryExecutionFailure(value5) + + case 3: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorQueryResponseFailure(value6) + + case 4: + value7 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorOther(value7) + + default: + panic("unreachable") + } + + result9 = witTypes.Err[witTypes.Option[[]DbRow], Error](variant8) + default: + panic("unreachable") + } + result10 := result9 + return result10 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-transaction.query +func wasm_import_method_db_transaction_query(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) Query(statement string, params []DbValue) witTypes.Result[DbResult, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice := params + length := uint32(len(slice)) + result2 := witRuntime.Allocate(pinner, uintptr(length*24), 8) + for index, element := range slice { + base := unsafe.Add(result2, index*24) + + switch element.Tag() { + case DbValueDbNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case DbValueDbBoolean: + payload := element.DbBoolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueDbByte: + payload := element.DbByte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueDbShort: + payload := element.DbShort() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbInt: + payload := element.DbInt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbLong: + payload := element.DbLong() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbFloat: + payload := element.DbFloat() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDouble: + payload := element.DbDouble() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbChar: + payload := element.DbChar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbString: + payload := element.DbString() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDbUuid: + payload := element.DbUuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).F0) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).F1) + + case DbValueDbDate: + payload := element.DbDate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbTimestamp: + payload := element.DbTimestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).F1 + + case DbValueDbTime: + payload := element.DbTime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDecimal: + payload := element.DbDecimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueDbByteArray: + payload := element.DbByteArray() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_query((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result2), length, returnArea) + var result15 witTypes.Result[DbResult, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result3 := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(8+2*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + result3 = append(result3, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value}) + } + + result8 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(2*4)) + result7 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*24) + var variant DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant = MakeDbValueDbNull() + + case 1: + + variant = MakeDbValueDbBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 2: + + variant = MakeDbValueDbByte(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant = MakeDbValueDbShort(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 4: + + variant = MakeDbValueDbInt(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant = MakeDbValueDbLong(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + + variant = MakeDbValueDbFloat(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 7: + + variant = MakeDbValueDbDouble(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 8: + + variant = MakeDbValueDbChar(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 9: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbString(value4) + + case 10: + + variant = MakeDbValueDbUuid(witTypes.Tuple2[uint64, uint64]{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 11: + + variant = MakeDbValueDbDate(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 12: + + variant = MakeDbValueDbTimestamp(witTypes.Tuple2[int64, int32]{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 13: + + variant = MakeDbValueDbTime(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbDecimal(value5) + + case 15: + value6 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbByteArray(value6) + + default: + panic("unreachable") + } + + result7 = append(result7, variant) + } + + result8 = append(result8, DbRow{result7}) + } + + result15 = witTypes.Ok[DbResult, Error](DbResult{result3, result8}) + case 1: + var variant14 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorConnectionFailure(value9) + + case 1: + value10 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorQueryParameterFailure(value10) + + case 2: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorQueryExecutionFailure(value11) + + case 3: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorQueryResponseFailure(value12) + + case 4: + value13 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorOther(value13) + + default: + panic("unreachable") + } + + result15 = witTypes.Err[DbResult, Error](variant14) + default: + panic("unreachable") + } + result16 := result15 + return result16 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-transaction.query-stream +func wasm_import_method_db_transaction_query_stream(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) QueryStream(statement string, params []DbValue) witTypes.Result[*DbResultStream, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice := params + length := uint32(len(slice)) + result2 := witRuntime.Allocate(pinner, uintptr(length*24), 8) + for index, element := range slice { + base := unsafe.Add(result2, index*24) + + switch element.Tag() { + case DbValueDbNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case DbValueDbBoolean: + payload := element.DbBoolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueDbByte: + payload := element.DbByte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueDbShort: + payload := element.DbShort() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbInt: + payload := element.DbInt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbLong: + payload := element.DbLong() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbFloat: + payload := element.DbFloat() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDouble: + payload := element.DbDouble() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbChar: + payload := element.DbChar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbString: + payload := element.DbString() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDbUuid: + payload := element.DbUuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).F0) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).F1) + + case DbValueDbDate: + payload := element.DbDate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbTimestamp: + payload := element.DbTimestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).F1 + + case DbValueDbTime: + payload := element.DbTime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDecimal: + payload := element.DbDecimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueDbByteArray: + payload := element.DbByteArray() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_query_stream((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result2), length, returnArea) + var result7 witTypes.Result[*DbResultStream, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result7 = witTypes.Ok[*DbResultStream, Error](DbResultStreamFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value3) + + case 2: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value4) + + case 3: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value5) + + case 4: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value6) + + default: + panic("unreachable") + } + + result7 = witTypes.Err[*DbResultStream, Error](variant) + default: + panic("unreachable") + } + result8 := result7 + return result8 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-transaction.execute +func wasm_import_method_db_transaction_execute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) Execute(statement string, params []DbValue) witTypes.Result[int64, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (16 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice := params + length := uint32(len(slice)) + result2 := witRuntime.Allocate(pinner, uintptr(length*24), 8) + for index, element := range slice { + base := unsafe.Add(result2, index*24) + + switch element.Tag() { + case DbValueDbNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case DbValueDbBoolean: + payload := element.DbBoolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueDbByte: + payload := element.DbByte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueDbShort: + payload := element.DbShort() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbInt: + payload := element.DbInt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbLong: + payload := element.DbLong() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbFloat: + payload := element.DbFloat() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDouble: + payload := element.DbDouble() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbChar: + payload := element.DbChar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbString: + payload := element.DbString() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDbUuid: + payload := element.DbUuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).F0) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).F1) + + case DbValueDbDate: + payload := element.DbDate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbTimestamp: + payload := element.DbTimestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).F1 + + case DbValueDbTime: + payload := element.DbTime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDecimal: + payload := element.DbDecimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueDbByteArray: + payload := element.DbByteArray() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_execute((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result2), length, returnArea) + var result7 witTypes.Result[int64, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result7 = witTypes.Ok[int64, Error](*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryParameterFailure(value3) + + case 2: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryExecutionFailure(value4) + + case 3: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryResponseFailure(value5) + + case 4: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorOther(value6) + + default: + panic("unreachable") + } + + result7 = witTypes.Err[int64, Error](variant) + default: + panic("unreachable") + } + result8 := result7 + return result8 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-transaction.commit +func wasm_import_method_db_transaction_commit(arg0 int32, arg1 uintptr) + +func (self *DbTransaction) Commit() witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_transaction_commit((self).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-transaction.rollback +func wasm_import_method_db_transaction_rollback(arg0 int32, arg1 uintptr) + +func (self *DbTransaction) Rollback() witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_transaction_rollback((self).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [static]db-connection.open +func wasm_import_static_db_connection_open(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func DbConnectionOpen(address string) witTypes.Result[*DbConnection, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(address)) + pinner.Pin(utf8) + wasm_import_static_db_connection_open(uintptr(utf8), uint32(len(address)), returnArea) + var result witTypes.Result[*DbConnection, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*DbConnection, Error](DbConnectionFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[*DbConnection, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-connection.query +func wasm_import_method_db_connection_query(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) Query(statement string, params []DbValue) witTypes.Result[DbResult, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice := params + length := uint32(len(slice)) + result2 := witRuntime.Allocate(pinner, uintptr(length*24), 8) + for index, element := range slice { + base := unsafe.Add(result2, index*24) + + switch element.Tag() { + case DbValueDbNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case DbValueDbBoolean: + payload := element.DbBoolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueDbByte: + payload := element.DbByte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueDbShort: + payload := element.DbShort() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbInt: + payload := element.DbInt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbLong: + payload := element.DbLong() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbFloat: + payload := element.DbFloat() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDouble: + payload := element.DbDouble() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbChar: + payload := element.DbChar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbString: + payload := element.DbString() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDbUuid: + payload := element.DbUuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).F0) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).F1) + + case DbValueDbDate: + payload := element.DbDate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbTimestamp: + payload := element.DbTimestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).F1 + + case DbValueDbTime: + payload := element.DbTime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDecimal: + payload := element.DbDecimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueDbByteArray: + payload := element.DbByteArray() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_query((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result2), length, returnArea) + var result15 witTypes.Result[DbResult, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result3 := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(8+2*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + result3 = append(result3, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value}) + } + + result8 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(2*4)) + result7 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*24) + var variant DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant = MakeDbValueDbNull() + + case 1: + + variant = MakeDbValueDbBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 2: + + variant = MakeDbValueDbByte(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant = MakeDbValueDbShort(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 4: + + variant = MakeDbValueDbInt(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant = MakeDbValueDbLong(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + + variant = MakeDbValueDbFloat(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 7: + + variant = MakeDbValueDbDouble(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 8: + + variant = MakeDbValueDbChar(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 9: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbString(value4) + + case 10: + + variant = MakeDbValueDbUuid(witTypes.Tuple2[uint64, uint64]{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 11: + + variant = MakeDbValueDbDate(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 12: + + variant = MakeDbValueDbTimestamp(witTypes.Tuple2[int64, int32]{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 13: + + variant = MakeDbValueDbTime(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 14: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbDecimal(value5) + + case 15: + value6 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDbByteArray(value6) + + default: + panic("unreachable") + } + + result7 = append(result7, variant) + } + + result8 = append(result8, DbRow{result7}) + } + + result15 = witTypes.Ok[DbResult, Error](DbResult{result3, result8}) + case 1: + var variant14 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorConnectionFailure(value9) + + case 1: + value10 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorQueryParameterFailure(value10) + + case 2: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorQueryExecutionFailure(value11) + + case 3: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorQueryResponseFailure(value12) + + case 4: + value13 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant14 = MakeErrorOther(value13) + + default: + panic("unreachable") + } + + result15 = witTypes.Err[DbResult, Error](variant14) + default: + panic("unreachable") + } + result16 := result15 + return result16 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-connection.query-stream +func wasm_import_method_db_connection_query_stream(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) QueryStream(statement string, params []DbValue) witTypes.Result[*DbResultStream, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice := params + length := uint32(len(slice)) + result2 := witRuntime.Allocate(pinner, uintptr(length*24), 8) + for index, element := range slice { + base := unsafe.Add(result2, index*24) + + switch element.Tag() { + case DbValueDbNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case DbValueDbBoolean: + payload := element.DbBoolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueDbByte: + payload := element.DbByte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueDbShort: + payload := element.DbShort() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbInt: + payload := element.DbInt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbLong: + payload := element.DbLong() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbFloat: + payload := element.DbFloat() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDouble: + payload := element.DbDouble() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbChar: + payload := element.DbChar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbString: + payload := element.DbString() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDbUuid: + payload := element.DbUuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).F0) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).F1) + + case DbValueDbDate: + payload := element.DbDate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbTimestamp: + payload := element.DbTimestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).F1 + + case DbValueDbTime: + payload := element.DbTime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDecimal: + payload := element.DbDecimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueDbByteArray: + payload := element.DbByteArray() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_query_stream((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result2), length, returnArea) + var result7 witTypes.Result[*DbResultStream, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result7 = witTypes.Ok[*DbResultStream, Error](DbResultStreamFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value3) + + case 2: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value4) + + case 3: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value5) + + case 4: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value6) + + default: + panic("unreachable") + } + + result7 = witTypes.Err[*DbResultStream, Error](variant) + default: + panic("unreachable") + } + result8 := result7 + return result8 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-connection.execute +func wasm_import_method_db_connection_execute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) Execute(statement string, params []DbValue) witTypes.Result[int64, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (16 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice := params + length := uint32(len(slice)) + result2 := witRuntime.Allocate(pinner, uintptr(length*24), 8) + for index, element := range slice { + base := unsafe.Add(result2, index*24) + + switch element.Tag() { + case DbValueDbNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case DbValueDbBoolean: + payload := element.DbBoolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueDbByte: + payload := element.DbByte() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueDbShort: + payload := element.DbShort() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbInt: + payload := element.DbInt() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbLong: + payload := element.DbLong() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbFloat: + payload := element.DbFloat() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDouble: + payload := element.DbDouble() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbChar: + payload := element.DbChar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueDbString: + payload := element.DbString() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDbUuid: + payload := element.DbUuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).F0) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).F1) + + case DbValueDbDate: + payload := element.DbDate() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbTimestamp: + payload := element.DbTimestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).F0 + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).F1 + + case DbValueDbTime: + payload := element.DbTime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDbDecimal: + payload := element.DbDecimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueDbByteArray: + payload := element.DbByteArray() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_execute((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result2), length, returnArea) + var result7 witTypes.Result[int64, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result7 = witTypes.Ok[int64, Error](*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryParameterFailure(value3) + + case 2: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryExecutionFailure(value4) + + case 3: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryResponseFailure(value5) + + case 4: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorOther(value6) + + default: + panic("unreachable") + } + + result7 = witTypes.Err[int64, Error](variant) + default: + panic("unreachable") + } + result8 := result7 + return result8 + +} + +//go:wasmimport golem:rdbms/ignite2@1.5.0 [method]db-connection.begin-transaction +func wasm_import_method_db_connection_begin_transaction(arg0 int32, arg1 uintptr) + +func (self *DbConnection) BeginTransaction() witTypes.Result[*DbTransaction, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_connection_begin_transaction((self).Handle(), returnArea) + var result witTypes.Result[*DbTransaction, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*DbTransaction, Error](DbTransactionFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[*DbTransaction, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} diff --git a/sdks/go/internal/wit/golem_rdbms_mysql/empty.s b/sdks/go/internal/wit/golem_rdbms_mysql/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_mysql/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go b/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go new file mode 100644 index 0000000000..c095930b33 --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go @@ -0,0 +1,4065 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_rdbms_mysql + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_rdbms_types" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Date = golem_rdbms_types.Date +type Time = golem_rdbms_types.Time +type Timestamp = golem_rdbms_types.Timestamp + +const ( + ErrorConnectionFailure uint8 = 0 + ErrorQueryParameterFailure uint8 = 1 + ErrorQueryExecutionFailure uint8 = 2 + ErrorQueryResponseFailure uint8 = 3 + ErrorOther uint8 = 4 +) + +type Error struct { + tag uint8 + value any +} + +func (self Error) Tag() uint8 { + return self.tag +} + +func (self Error) ConnectionFailure() string { + if self.tag != ErrorConnectionFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryParameterFailure() string { + if self.tag != ErrorQueryParameterFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryExecutionFailure() string { + if self.tag != ErrorQueryExecutionFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryResponseFailure() string { + if self.tag != ErrorQueryResponseFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) Other() string { + if self.tag != ErrorOther { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeErrorConnectionFailure(value string) Error { + return Error{ErrorConnectionFailure, value} +} +func MakeErrorQueryParameterFailure(value string) Error { + return Error{ErrorQueryParameterFailure, value} +} +func MakeErrorQueryExecutionFailure(value string) Error { + return Error{ErrorQueryExecutionFailure, value} +} +func MakeErrorQueryResponseFailure(value string) Error { + return Error{ErrorQueryResponseFailure, value} +} +func MakeErrorOther(value string) Error { + return Error{ErrorOther, value} +} + +const ( + DbColumnTypeBoolean uint8 = 0 + DbColumnTypeTinyint uint8 = 1 + DbColumnTypeSmallint uint8 = 2 + DbColumnTypeMediumint uint8 = 3 + DbColumnTypeInt uint8 = 4 + DbColumnTypeBigint uint8 = 5 + DbColumnTypeTinyintUnsigned uint8 = 6 + DbColumnTypeSmallintUnsigned uint8 = 7 + DbColumnTypeMediumintUnsigned uint8 = 8 + DbColumnTypeIntUnsigned uint8 = 9 + DbColumnTypeBigintUnsigned uint8 = 10 + DbColumnTypeFloat uint8 = 11 + DbColumnTypeDouble uint8 = 12 + DbColumnTypeDecimal uint8 = 13 + DbColumnTypeDate uint8 = 14 + DbColumnTypeDatetime uint8 = 15 + DbColumnTypeTimestamp uint8 = 16 + DbColumnTypeTime uint8 = 17 + DbColumnTypeYear uint8 = 18 + DbColumnTypeFixchar uint8 = 19 + DbColumnTypeVarchar uint8 = 20 + DbColumnTypeTinytext uint8 = 21 + DbColumnTypeText uint8 = 22 + DbColumnTypeMediumtext uint8 = 23 + DbColumnTypeLongtext uint8 = 24 + DbColumnTypeBinary uint8 = 25 + DbColumnTypeVarbinary uint8 = 26 + DbColumnTypeTinyblob uint8 = 27 + DbColumnTypeBlob uint8 = 28 + DbColumnTypeMediumblob uint8 = 29 + DbColumnTypeLongblob uint8 = 30 + DbColumnTypeEnumeration uint8 = 31 + DbColumnTypeSet uint8 = 32 + DbColumnTypeBit uint8 = 33 + DbColumnTypeJson uint8 = 34 +) + +type DbColumnType struct { + tag uint8 + value any +} + +func (self DbColumnType) Tag() uint8 { + return self.tag +} + +func MakeDbColumnTypeBoolean() DbColumnType { + return DbColumnType{DbColumnTypeBoolean, nil} +} +func MakeDbColumnTypeTinyint() DbColumnType { + return DbColumnType{DbColumnTypeTinyint, nil} +} +func MakeDbColumnTypeSmallint() DbColumnType { + return DbColumnType{DbColumnTypeSmallint, nil} +} +func MakeDbColumnTypeMediumint() DbColumnType { + return DbColumnType{DbColumnTypeMediumint, nil} +} +func MakeDbColumnTypeInt() DbColumnType { + return DbColumnType{DbColumnTypeInt, nil} +} +func MakeDbColumnTypeBigint() DbColumnType { + return DbColumnType{DbColumnTypeBigint, nil} +} +func MakeDbColumnTypeTinyintUnsigned() DbColumnType { + return DbColumnType{DbColumnTypeTinyintUnsigned, nil} +} +func MakeDbColumnTypeSmallintUnsigned() DbColumnType { + return DbColumnType{DbColumnTypeSmallintUnsigned, nil} +} +func MakeDbColumnTypeMediumintUnsigned() DbColumnType { + return DbColumnType{DbColumnTypeMediumintUnsigned, nil} +} +func MakeDbColumnTypeIntUnsigned() DbColumnType { + return DbColumnType{DbColumnTypeIntUnsigned, nil} +} +func MakeDbColumnTypeBigintUnsigned() DbColumnType { + return DbColumnType{DbColumnTypeBigintUnsigned, nil} +} +func MakeDbColumnTypeFloat() DbColumnType { + return DbColumnType{DbColumnTypeFloat, nil} +} +func MakeDbColumnTypeDouble() DbColumnType { + return DbColumnType{DbColumnTypeDouble, nil} +} +func MakeDbColumnTypeDecimal() DbColumnType { + return DbColumnType{DbColumnTypeDecimal, nil} +} +func MakeDbColumnTypeDate() DbColumnType { + return DbColumnType{DbColumnTypeDate, nil} +} +func MakeDbColumnTypeDatetime() DbColumnType { + return DbColumnType{DbColumnTypeDatetime, nil} +} +func MakeDbColumnTypeTimestamp() DbColumnType { + return DbColumnType{DbColumnTypeTimestamp, nil} +} +func MakeDbColumnTypeTime() DbColumnType { + return DbColumnType{DbColumnTypeTime, nil} +} +func MakeDbColumnTypeYear() DbColumnType { + return DbColumnType{DbColumnTypeYear, nil} +} +func MakeDbColumnTypeFixchar() DbColumnType { + return DbColumnType{DbColumnTypeFixchar, nil} +} +func MakeDbColumnTypeVarchar() DbColumnType { + return DbColumnType{DbColumnTypeVarchar, nil} +} +func MakeDbColumnTypeTinytext() DbColumnType { + return DbColumnType{DbColumnTypeTinytext, nil} +} +func MakeDbColumnTypeText() DbColumnType { + return DbColumnType{DbColumnTypeText, nil} +} +func MakeDbColumnTypeMediumtext() DbColumnType { + return DbColumnType{DbColumnTypeMediumtext, nil} +} +func MakeDbColumnTypeLongtext() DbColumnType { + return DbColumnType{DbColumnTypeLongtext, nil} +} +func MakeDbColumnTypeBinary() DbColumnType { + return DbColumnType{DbColumnTypeBinary, nil} +} +func MakeDbColumnTypeVarbinary() DbColumnType { + return DbColumnType{DbColumnTypeVarbinary, nil} +} +func MakeDbColumnTypeTinyblob() DbColumnType { + return DbColumnType{DbColumnTypeTinyblob, nil} +} +func MakeDbColumnTypeBlob() DbColumnType { + return DbColumnType{DbColumnTypeBlob, nil} +} +func MakeDbColumnTypeMediumblob() DbColumnType { + return DbColumnType{DbColumnTypeMediumblob, nil} +} +func MakeDbColumnTypeLongblob() DbColumnType { + return DbColumnType{DbColumnTypeLongblob, nil} +} +func MakeDbColumnTypeEnumeration() DbColumnType { + return DbColumnType{DbColumnTypeEnumeration, nil} +} +func MakeDbColumnTypeSet() DbColumnType { + return DbColumnType{DbColumnTypeSet, nil} +} +func MakeDbColumnTypeBit() DbColumnType { + return DbColumnType{DbColumnTypeBit, nil} +} +func MakeDbColumnTypeJson() DbColumnType { + return DbColumnType{DbColumnTypeJson, nil} +} + +type DbColumn struct { + Ordinal uint64 + Name string + DbType DbColumnType + DbTypeName string +} + +const ( + DbValueBoolean uint8 = 0 + DbValueTinyint uint8 = 1 + DbValueSmallint uint8 = 2 + DbValueMediumint uint8 = 3 + DbValueInt uint8 = 4 + DbValueBigint uint8 = 5 + DbValueTinyintUnsigned uint8 = 6 + DbValueSmallintUnsigned uint8 = 7 + DbValueMediumintUnsigned uint8 = 8 + DbValueIntUnsigned uint8 = 9 + DbValueBigintUnsigned uint8 = 10 + DbValueFloat uint8 = 11 + DbValueDouble uint8 = 12 + DbValueDecimal uint8 = 13 + DbValueDate uint8 = 14 + DbValueDatetime uint8 = 15 + DbValueTimestamp uint8 = 16 + DbValueTime uint8 = 17 + DbValueYear uint8 = 18 + DbValueFixchar uint8 = 19 + DbValueVarchar uint8 = 20 + DbValueTinytext uint8 = 21 + DbValueText uint8 = 22 + DbValueMediumtext uint8 = 23 + DbValueLongtext uint8 = 24 + DbValueBinary uint8 = 25 + DbValueVarbinary uint8 = 26 + DbValueTinyblob uint8 = 27 + DbValueBlob uint8 = 28 + DbValueMediumblob uint8 = 29 + DbValueLongblob uint8 = 30 + DbValueEnumeration uint8 = 31 + DbValueSet uint8 = 32 + DbValueBit uint8 = 33 + DbValueJson uint8 = 34 + DbValueNull uint8 = 35 +) + +// Value descriptor for a single database value +type DbValue struct { + tag uint8 + value any +} + +func (self DbValue) Tag() uint8 { + return self.tag +} + +func (self DbValue) Boolean() bool { + if self.tag != DbValueBoolean { + panic("tag mismatch") + } + return self.value.(bool) +} +func (self DbValue) Tinyint() int8 { + if self.tag != DbValueTinyint { + panic("tag mismatch") + } + return self.value.(int8) +} +func (self DbValue) Smallint() int16 { + if self.tag != DbValueSmallint { + panic("tag mismatch") + } + return self.value.(int16) +} +func (self DbValue) Mediumint() int32 { + if self.tag != DbValueMediumint { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self DbValue) Int() int32 { + if self.tag != DbValueInt { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self DbValue) Bigint() int64 { + if self.tag != DbValueBigint { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self DbValue) TinyintUnsigned() uint8 { + if self.tag != DbValueTinyintUnsigned { + panic("tag mismatch") + } + return self.value.(uint8) +} +func (self DbValue) SmallintUnsigned() uint16 { + if self.tag != DbValueSmallintUnsigned { + panic("tag mismatch") + } + return self.value.(uint16) +} +func (self DbValue) MediumintUnsigned() uint32 { + if self.tag != DbValueMediumintUnsigned { + panic("tag mismatch") + } + return self.value.(uint32) +} +func (self DbValue) IntUnsigned() uint32 { + if self.tag != DbValueIntUnsigned { + panic("tag mismatch") + } + return self.value.(uint32) +} +func (self DbValue) BigintUnsigned() uint64 { + if self.tag != DbValueBigintUnsigned { + panic("tag mismatch") + } + return self.value.(uint64) +} +func (self DbValue) Float() float32 { + if self.tag != DbValueFloat { + panic("tag mismatch") + } + return self.value.(float32) +} +func (self DbValue) Double() float64 { + if self.tag != DbValueDouble { + panic("tag mismatch") + } + return self.value.(float64) +} +func (self DbValue) Decimal() string { + if self.tag != DbValueDecimal { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Date() golem_rdbms_types.Date { + if self.tag != DbValueDate { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Date) +} +func (self DbValue) Datetime() golem_rdbms_types.Timestamp { + if self.tag != DbValueDatetime { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamp) +} +func (self DbValue) Timestamp() golem_rdbms_types.Timestamp { + if self.tag != DbValueTimestamp { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamp) +} +func (self DbValue) Time() golem_rdbms_types.Time { + if self.tag != DbValueTime { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Time) +} +func (self DbValue) Year() uint16 { + if self.tag != DbValueYear { + panic("tag mismatch") + } + return self.value.(uint16) +} +func (self DbValue) Fixchar() string { + if self.tag != DbValueFixchar { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Varchar() string { + if self.tag != DbValueVarchar { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Tinytext() string { + if self.tag != DbValueTinytext { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Text() string { + if self.tag != DbValueText { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Mediumtext() string { + if self.tag != DbValueMediumtext { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Longtext() string { + if self.tag != DbValueLongtext { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Binary() []uint8 { + if self.tag != DbValueBinary { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self DbValue) Varbinary() []uint8 { + if self.tag != DbValueVarbinary { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self DbValue) Tinyblob() []uint8 { + if self.tag != DbValueTinyblob { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self DbValue) Blob() []uint8 { + if self.tag != DbValueBlob { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self DbValue) Mediumblob() []uint8 { + if self.tag != DbValueMediumblob { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self DbValue) Longblob() []uint8 { + if self.tag != DbValueLongblob { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self DbValue) Enumeration() string { + if self.tag != DbValueEnumeration { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Set() string { + if self.tag != DbValueSet { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Bit() []bool { + if self.tag != DbValueBit { + panic("tag mismatch") + } + return self.value.([]bool) +} +func (self DbValue) Json() string { + if self.tag != DbValueJson { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeDbValueBoolean(value bool) DbValue { + return DbValue{DbValueBoolean, value} +} +func MakeDbValueTinyint(value int8) DbValue { + return DbValue{DbValueTinyint, value} +} +func MakeDbValueSmallint(value int16) DbValue { + return DbValue{DbValueSmallint, value} +} +func MakeDbValueMediumint(value int32) DbValue { + return DbValue{DbValueMediumint, value} +} +func MakeDbValueInt(value int32) DbValue { + return DbValue{DbValueInt, value} +} +func MakeDbValueBigint(value int64) DbValue { + return DbValue{DbValueBigint, value} +} +func MakeDbValueTinyintUnsigned(value uint8) DbValue { + return DbValue{DbValueTinyintUnsigned, value} +} +func MakeDbValueSmallintUnsigned(value uint16) DbValue { + return DbValue{DbValueSmallintUnsigned, value} +} +func MakeDbValueMediumintUnsigned(value uint32) DbValue { + return DbValue{DbValueMediumintUnsigned, value} +} +func MakeDbValueIntUnsigned(value uint32) DbValue { + return DbValue{DbValueIntUnsigned, value} +} +func MakeDbValueBigintUnsigned(value uint64) DbValue { + return DbValue{DbValueBigintUnsigned, value} +} +func MakeDbValueFloat(value float32) DbValue { + return DbValue{DbValueFloat, value} +} +func MakeDbValueDouble(value float64) DbValue { + return DbValue{DbValueDouble, value} +} +func MakeDbValueDecimal(value string) DbValue { + return DbValue{DbValueDecimal, value} +} +func MakeDbValueDate(value golem_rdbms_types.Date) DbValue { + return DbValue{DbValueDate, value} +} +func MakeDbValueDatetime(value golem_rdbms_types.Timestamp) DbValue { + return DbValue{DbValueDatetime, value} +} +func MakeDbValueTimestamp(value golem_rdbms_types.Timestamp) DbValue { + return DbValue{DbValueTimestamp, value} +} +func MakeDbValueTime(value golem_rdbms_types.Time) DbValue { + return DbValue{DbValueTime, value} +} +func MakeDbValueYear(value uint16) DbValue { + return DbValue{DbValueYear, value} +} +func MakeDbValueFixchar(value string) DbValue { + return DbValue{DbValueFixchar, value} +} +func MakeDbValueVarchar(value string) DbValue { + return DbValue{DbValueVarchar, value} +} +func MakeDbValueTinytext(value string) DbValue { + return DbValue{DbValueTinytext, value} +} +func MakeDbValueText(value string) DbValue { + return DbValue{DbValueText, value} +} +func MakeDbValueMediumtext(value string) DbValue { + return DbValue{DbValueMediumtext, value} +} +func MakeDbValueLongtext(value string) DbValue { + return DbValue{DbValueLongtext, value} +} +func MakeDbValueBinary(value []uint8) DbValue { + return DbValue{DbValueBinary, value} +} +func MakeDbValueVarbinary(value []uint8) DbValue { + return DbValue{DbValueVarbinary, value} +} +func MakeDbValueTinyblob(value []uint8) DbValue { + return DbValue{DbValueTinyblob, value} +} +func MakeDbValueBlob(value []uint8) DbValue { + return DbValue{DbValueBlob, value} +} +func MakeDbValueMediumblob(value []uint8) DbValue { + return DbValue{DbValueMediumblob, value} +} +func MakeDbValueLongblob(value []uint8) DbValue { + return DbValue{DbValueLongblob, value} +} +func MakeDbValueEnumeration(value string) DbValue { + return DbValue{DbValueEnumeration, value} +} +func MakeDbValueSet(value string) DbValue { + return DbValue{DbValueSet, value} +} +func MakeDbValueBit(value []bool) DbValue { + return DbValue{DbValueBit, value} +} +func MakeDbValueJson(value string) DbValue { + return DbValue{DbValueJson, value} +} +func MakeDbValueNull() DbValue { + return DbValue{DbValueNull, nil} +} + +// A single row of values +type DbRow struct { + Values []DbValue +} + +type DbResult struct { + Columns []DbColumn + Rows []DbRow +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [resource-drop]db-result-stream +func resourceDropDbResultStream(handle int32) + +// A potentially very large and lazy stream of rows: +type DbResultStream struct { + handle *witRuntime.Handle +} + +func (self *DbResultStream) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbResultStream) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbResultStream) Handle() int32 { + return self.handle.Use() +} + +func (self *DbResultStream) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbResultStream(handle) + } +} + +func DbResultStreamFromOwnHandle(handleValue int32) *DbResultStream { + handle := witRuntime.MakeHandle(handleValue) + value := &DbResultStream{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbResultStream(handleValue) + } + }, 0) + return value +} + +func DbResultStreamFromBorrowHandle(handleValue int32) *DbResultStream { + handle := witRuntime.MakeHandle(handleValue) + return &DbResultStream{handle} +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [resource-drop]db-connection +func resourceDropDbConnection(handle int32) + +type DbConnection struct { + handle *witRuntime.Handle +} + +func (self *DbConnection) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbConnection) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbConnection) Handle() int32 { + return self.handle.Use() +} + +func (self *DbConnection) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbConnection(handle) + } +} + +func DbConnectionFromOwnHandle(handleValue int32) *DbConnection { + handle := witRuntime.MakeHandle(handleValue) + value := &DbConnection{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbConnection(handleValue) + } + }, 0) + return value +} + +func DbConnectionFromBorrowHandle(handleValue int32) *DbConnection { + handle := witRuntime.MakeHandle(handleValue) + return &DbConnection{handle} +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [resource-drop]db-transaction +func resourceDropDbTransaction(handle int32) + +type DbTransaction struct { + handle *witRuntime.Handle +} + +func (self *DbTransaction) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbTransaction) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbTransaction) Handle() int32 { + return self.handle.Use() +} + +func (self *DbTransaction) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbTransaction(handle) + } +} + +func DbTransactionFromOwnHandle(handleValue int32) *DbTransaction { + handle := witRuntime.MakeHandle(handleValue) + value := &DbTransaction{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbTransaction(handleValue) + } + }, 0) + return value +} + +func DbTransactionFromBorrowHandle(handleValue int32) *DbTransaction { + handle := witRuntime.MakeHandle(handleValue) + return &DbTransaction{handle} +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-result-stream.get-columns +func wasm_import_method_db_result_stream_get_columns(arg0 int32, arg1 uintptr) + +func (self *DbResultStream) GetColumns() []DbColumn { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_db_result_stream_get_columns((self).Handle(), returnArea) + result := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(16+4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant DbColumnType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant = MakeDbColumnTypeBoolean() + + case 1: + + variant = MakeDbColumnTypeTinyint() + + case 2: + + variant = MakeDbColumnTypeSmallint() + + case 3: + + variant = MakeDbColumnTypeMediumint() + + case 4: + + variant = MakeDbColumnTypeInt() + + case 5: + + variant = MakeDbColumnTypeBigint() + + case 6: + + variant = MakeDbColumnTypeTinyintUnsigned() + + case 7: + + variant = MakeDbColumnTypeSmallintUnsigned() + + case 8: + + variant = MakeDbColumnTypeMediumintUnsigned() + + case 9: + + variant = MakeDbColumnTypeIntUnsigned() + + case 10: + + variant = MakeDbColumnTypeBigintUnsigned() + + case 11: + + variant = MakeDbColumnTypeFloat() + + case 12: + + variant = MakeDbColumnTypeDouble() + + case 13: + + variant = MakeDbColumnTypeDecimal() + + case 14: + + variant = MakeDbColumnTypeDate() + + case 15: + + variant = MakeDbColumnTypeDatetime() + + case 16: + + variant = MakeDbColumnTypeTimestamp() + + case 17: + + variant = MakeDbColumnTypeTime() + + case 18: + + variant = MakeDbColumnTypeYear() + + case 19: + + variant = MakeDbColumnTypeFixchar() + + case 20: + + variant = MakeDbColumnTypeVarchar() + + case 21: + + variant = MakeDbColumnTypeTinytext() + + case 22: + + variant = MakeDbColumnTypeText() + + case 23: + + variant = MakeDbColumnTypeMediumtext() + + case 24: + + variant = MakeDbColumnTypeLongtext() + + case 25: + + variant = MakeDbColumnTypeBinary() + + case 26: + + variant = MakeDbColumnTypeVarbinary() + + case 27: + + variant = MakeDbColumnTypeTinyblob() + + case 28: + + variant = MakeDbColumnTypeBlob() + + case 29: + + variant = MakeDbColumnTypeMediumblob() + + case 30: + + variant = MakeDbColumnTypeLongblob() + + case 31: + + variant = MakeDbColumnTypeEnumeration() + + case 32: + + variant = MakeDbColumnTypeSet() + + case 33: + + variant = MakeDbColumnTypeBit() + + case 34: + + variant = MakeDbColumnTypeJson() + + default: + panic("unreachable") + } + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + result = append(result, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value, variant, value0}) + } + + result1 := result + return result1 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-result-stream.get-next +func wasm_import_method_db_result_stream_get_next(arg0 int32, arg1 uintptr) + +func (self *DbResultStream) GetNext() witTypes.Option[[]DbRow] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_db_result_stream_get_next((self).Handle(), returnArea) + var option witTypes.Option[[]DbRow] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[[]DbRow]() + case 1: + result16 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(2*4)) + result15 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*24) + var variant DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant = MakeDbValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant = MakeDbValueTinyint(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant = MakeDbValueSmallint(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant = MakeDbValueMediumint(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant = MakeDbValueInt(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant = MakeDbValueBigint(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + + variant = MakeDbValueTinyintUnsigned(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant = MakeDbValueSmallintUnsigned(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 8: + + variant = MakeDbValueMediumintUnsigned(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant = MakeDbValueIntUnsigned(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 10: + + variant = MakeDbValueBigintUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 11: + + variant = MakeDbValueFloat(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 12: + + variant = MakeDbValueDouble(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 13: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueDecimal(value) + + case 14: + + variant = MakeDbValueDate(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 15: + + variant = MakeDbValueDatetime(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 16: + + variant = MakeDbValueTimestamp(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 17: + + variant = MakeDbValueTime(golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 18: + + variant = MakeDbValueYear(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 19: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueFixchar(value0) + + case 20: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueVarchar(value1) + + case 21: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueTinytext(value2) + + case 22: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueText(value3) + + case 23: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueMediumtext(value4) + + case 24: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueLongtext(value5) + + case 25: + value6 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueBinary(value6) + + case 26: + value7 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueVarbinary(value7) + + case 27: + value8 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueTinyblob(value8) + + case 28: + value9 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueBlob(value9) + + case 29: + value10 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueMediumblob(value10) + + case 30: + value11 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueLongblob(value11) + + case 31: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueEnumeration(value12) + + case 32: + value13 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueSet(value13) + + case 33: + result := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result = append(result, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant = MakeDbValueBit(result) + + case 34: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant = MakeDbValueJson(value14) + + case 35: + + variant = MakeDbValueNull() + + default: + panic("unreachable") + } + + result15 = append(result15, variant) + } + + result16 = append(result16, DbRow{result15}) + } + + option = witTypes.Some[[]DbRow](result16) + default: + panic("unreachable") + } + result17 := option + return result17 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [static]db-connection.open +func wasm_import_static_db_connection_open(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func DbConnectionOpen(address string) witTypes.Result[*DbConnection, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(address)) + pinner.Pin(utf8) + wasm_import_static_db_connection_open(uintptr(utf8), uint32(len(address)), returnArea) + var result witTypes.Result[*DbConnection, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*DbConnection, Error](DbConnectionFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[*DbConnection, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-connection.query +func wasm_import_method_db_connection_query(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) Query(statement string, params []DbValue) witTypes.Result[DbResult, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice17 := params + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*24), 8) + for index, element := range slice17 { + base := unsafe.Add(result18, index*24) + + switch element.Tag() { + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueTinyint: + payload := element.Tinyint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallint: + payload := element.Smallint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumint: + payload := element.Mediumint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt: + payload := element.Int() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueBigint: + payload := element.Bigint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueTinyintUnsigned: + payload := element.TinyintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallintUnsigned: + payload := element.SmallintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumintUnsigned: + payload := element.MediumintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueIntUnsigned: + payload := element.IntUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueBigintUnsigned: + payload := element.BigintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case DbValueFloat: + payload := element.Float() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDouble: + payload := element.Double() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDecimal: + payload := element.Decimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueDatetime: + payload := element.Datetime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueYear: + payload := element.Year() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueFixchar: + payload := element.Fixchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueTinytext: + payload := element.Tinytext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueMediumtext: + payload := element.Mediumtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueLongtext: + payload := element.Longtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueBinary: + payload := element.Binary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueVarbinary: + payload := element.Varbinary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + data7 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data7) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data7))) + + case DbValueTinyblob: + payload := element.Tinyblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + data8 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data8))) + + case DbValueBlob: + payload := element.Blob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + data9 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data9) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data9))) + + case DbValueMediumblob: + payload := element.Mediumblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + data10 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data10) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data10))) + + case DbValueLongblob: + payload := element.Longblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + data11 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data11))) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf812))) + + case DbValueSet: + payload := element.Set() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf813))) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + slice := payload + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result15, index*1) + var result14 int32 + if element { + result14 = 1 + } else { + result14 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result14) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result15))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf816))) + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_query((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result18), length19, returnArea) + var result48 witTypes.Result[DbResult, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result21 := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(16+4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant DbColumnType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant = MakeDbColumnTypeBoolean() + + case 1: + + variant = MakeDbColumnTypeTinyint() + + case 2: + + variant = MakeDbColumnTypeSmallint() + + case 3: + + variant = MakeDbColumnTypeMediumint() + + case 4: + + variant = MakeDbColumnTypeInt() + + case 5: + + variant = MakeDbColumnTypeBigint() + + case 6: + + variant = MakeDbColumnTypeTinyintUnsigned() + + case 7: + + variant = MakeDbColumnTypeSmallintUnsigned() + + case 8: + + variant = MakeDbColumnTypeMediumintUnsigned() + + case 9: + + variant = MakeDbColumnTypeIntUnsigned() + + case 10: + + variant = MakeDbColumnTypeBigintUnsigned() + + case 11: + + variant = MakeDbColumnTypeFloat() + + case 12: + + variant = MakeDbColumnTypeDouble() + + case 13: + + variant = MakeDbColumnTypeDecimal() + + case 14: + + variant = MakeDbColumnTypeDate() + + case 15: + + variant = MakeDbColumnTypeDatetime() + + case 16: + + variant = MakeDbColumnTypeTimestamp() + + case 17: + + variant = MakeDbColumnTypeTime() + + case 18: + + variant = MakeDbColumnTypeYear() + + case 19: + + variant = MakeDbColumnTypeFixchar() + + case 20: + + variant = MakeDbColumnTypeVarchar() + + case 21: + + variant = MakeDbColumnTypeTinytext() + + case 22: + + variant = MakeDbColumnTypeText() + + case 23: + + variant = MakeDbColumnTypeMediumtext() + + case 24: + + variant = MakeDbColumnTypeLongtext() + + case 25: + + variant = MakeDbColumnTypeBinary() + + case 26: + + variant = MakeDbColumnTypeVarbinary() + + case 27: + + variant = MakeDbColumnTypeTinyblob() + + case 28: + + variant = MakeDbColumnTypeBlob() + + case 29: + + variant = MakeDbColumnTypeMediumblob() + + case 30: + + variant = MakeDbColumnTypeLongblob() + + case 31: + + variant = MakeDbColumnTypeEnumeration() + + case 32: + + variant = MakeDbColumnTypeSet() + + case 33: + + variant = MakeDbColumnTypeBit() + + case 34: + + variant = MakeDbColumnTypeJson() + + default: + panic("unreachable") + } + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + result21 = append(result21, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value, variant, value20}) + } + + result41 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(2*4)) + result40 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*24) + var variant39 DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant39 = MakeDbValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant39 = MakeDbValueTinyint(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant39 = MakeDbValueSmallint(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant39 = MakeDbValueMediumint(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant39 = MakeDbValueInt(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant39 = MakeDbValueBigint(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + + variant39 = MakeDbValueTinyintUnsigned(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant39 = MakeDbValueSmallintUnsigned(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 8: + + variant39 = MakeDbValueMediumintUnsigned(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant39 = MakeDbValueIntUnsigned(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 10: + + variant39 = MakeDbValueBigintUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 11: + + variant39 = MakeDbValueFloat(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 12: + + variant39 = MakeDbValueDouble(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 13: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueDecimal(value22) + + case 14: + + variant39 = MakeDbValueDate(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 15: + + variant39 = MakeDbValueDatetime(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 16: + + variant39 = MakeDbValueTimestamp(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 17: + + variant39 = MakeDbValueTime(golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 18: + + variant39 = MakeDbValueYear(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 19: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueFixchar(value23) + + case 20: + value24 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueVarchar(value24) + + case 21: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueTinytext(value25) + + case 22: + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueText(value26) + + case 23: + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueMediumtext(value27) + + case 24: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueLongtext(value28) + + case 25: + value29 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueBinary(value29) + + case 26: + value30 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueVarbinary(value30) + + case 27: + value31 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueTinyblob(value31) + + case 28: + value32 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueBlob(value32) + + case 29: + value33 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueMediumblob(value33) + + case 30: + value34 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueLongblob(value34) + + case 31: + value35 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueEnumeration(value35) + + case 32: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueSet(value36) + + case 33: + result37 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result37 = append(result37, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant39 = MakeDbValueBit(result37) + + case 34: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueJson(value38) + + case 35: + + variant39 = MakeDbValueNull() + + default: + panic("unreachable") + } + + result40 = append(result40, variant39) + } + + result41 = append(result41, DbRow{result40}) + } + + result48 = witTypes.Ok[DbResult, Error](DbResult{result21, result41}) + case 1: + var variant47 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorConnectionFailure(value42) + + case 1: + value43 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorQueryParameterFailure(value43) + + case 2: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorQueryExecutionFailure(value44) + + case 3: + value45 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorQueryResponseFailure(value45) + + case 4: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorOther(value46) + + default: + panic("unreachable") + } + + result48 = witTypes.Err[DbResult, Error](variant47) + default: + panic("unreachable") + } + result49 := result48 + return result49 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-connection.query-stream +func wasm_import_method_db_connection_query_stream(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) QueryStream(statement string, params []DbValue) witTypes.Result[*DbResultStream, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice17 := params + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*24), 8) + for index, element := range slice17 { + base := unsafe.Add(result18, index*24) + + switch element.Tag() { + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueTinyint: + payload := element.Tinyint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallint: + payload := element.Smallint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumint: + payload := element.Mediumint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt: + payload := element.Int() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueBigint: + payload := element.Bigint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueTinyintUnsigned: + payload := element.TinyintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallintUnsigned: + payload := element.SmallintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumintUnsigned: + payload := element.MediumintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueIntUnsigned: + payload := element.IntUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueBigintUnsigned: + payload := element.BigintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case DbValueFloat: + payload := element.Float() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDouble: + payload := element.Double() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDecimal: + payload := element.Decimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueDatetime: + payload := element.Datetime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueYear: + payload := element.Year() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueFixchar: + payload := element.Fixchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueTinytext: + payload := element.Tinytext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueMediumtext: + payload := element.Mediumtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueLongtext: + payload := element.Longtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueBinary: + payload := element.Binary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueVarbinary: + payload := element.Varbinary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + data7 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data7) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data7))) + + case DbValueTinyblob: + payload := element.Tinyblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + data8 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data8))) + + case DbValueBlob: + payload := element.Blob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + data9 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data9) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data9))) + + case DbValueMediumblob: + payload := element.Mediumblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + data10 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data10) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data10))) + + case DbValueLongblob: + payload := element.Longblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + data11 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data11))) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf812))) + + case DbValueSet: + payload := element.Set() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf813))) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + slice := payload + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result15, index*1) + var result14 int32 + if element { + result14 = 1 + } else { + result14 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result14) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result15))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf816))) + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_query_stream((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result18), length19, returnArea) + var result24 witTypes.Result[*DbResultStream, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result24 = witTypes.Ok[*DbResultStream, Error](DbResultStreamFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value20) + + case 2: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value21) + + case 3: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value22) + + case 4: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value23) + + default: + panic("unreachable") + } + + result24 = witTypes.Err[*DbResultStream, Error](variant) + default: + panic("unreachable") + } + result25 := result24 + return result25 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-connection.execute +func wasm_import_method_db_connection_execute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) Execute(statement string, params []DbValue) witTypes.Result[uint64, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (16 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice17 := params + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*24), 8) + for index, element := range slice17 { + base := unsafe.Add(result18, index*24) + + switch element.Tag() { + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueTinyint: + payload := element.Tinyint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallint: + payload := element.Smallint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumint: + payload := element.Mediumint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt: + payload := element.Int() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueBigint: + payload := element.Bigint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueTinyintUnsigned: + payload := element.TinyintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallintUnsigned: + payload := element.SmallintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumintUnsigned: + payload := element.MediumintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueIntUnsigned: + payload := element.IntUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueBigintUnsigned: + payload := element.BigintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case DbValueFloat: + payload := element.Float() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDouble: + payload := element.Double() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDecimal: + payload := element.Decimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueDatetime: + payload := element.Datetime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueYear: + payload := element.Year() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueFixchar: + payload := element.Fixchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueTinytext: + payload := element.Tinytext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueMediumtext: + payload := element.Mediumtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueLongtext: + payload := element.Longtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueBinary: + payload := element.Binary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueVarbinary: + payload := element.Varbinary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + data7 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data7) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data7))) + + case DbValueTinyblob: + payload := element.Tinyblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + data8 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data8))) + + case DbValueBlob: + payload := element.Blob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + data9 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data9) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data9))) + + case DbValueMediumblob: + payload := element.Mediumblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + data10 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data10) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data10))) + + case DbValueLongblob: + payload := element.Longblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + data11 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data11))) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf812))) + + case DbValueSet: + payload := element.Set() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf813))) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + slice := payload + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result15, index*1) + var result14 int32 + if element { + result14 = 1 + } else { + result14 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result14) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result15))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf816))) + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_execute((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result18), length19, returnArea) + var result24 witTypes.Result[uint64, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result24 = witTypes.Ok[uint64, Error](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryParameterFailure(value20) + + case 2: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryExecutionFailure(value21) + + case 3: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryResponseFailure(value22) + + case 4: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorOther(value23) + + default: + panic("unreachable") + } + + result24 = witTypes.Err[uint64, Error](variant) + default: + panic("unreachable") + } + result25 := result24 + return result25 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-connection.begin-transaction +func wasm_import_method_db_connection_begin_transaction(arg0 int32, arg1 uintptr) + +func (self *DbConnection) BeginTransaction() witTypes.Result[*DbTransaction, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_connection_begin_transaction((self).Handle(), returnArea) + var result witTypes.Result[*DbTransaction, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*DbTransaction, Error](DbTransactionFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[*DbTransaction, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-transaction.query +func wasm_import_method_db_transaction_query(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) Query(statement string, params []DbValue) witTypes.Result[DbResult, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice17 := params + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*24), 8) + for index, element := range slice17 { + base := unsafe.Add(result18, index*24) + + switch element.Tag() { + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueTinyint: + payload := element.Tinyint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallint: + payload := element.Smallint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumint: + payload := element.Mediumint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt: + payload := element.Int() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueBigint: + payload := element.Bigint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueTinyintUnsigned: + payload := element.TinyintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallintUnsigned: + payload := element.SmallintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumintUnsigned: + payload := element.MediumintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueIntUnsigned: + payload := element.IntUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueBigintUnsigned: + payload := element.BigintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case DbValueFloat: + payload := element.Float() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDouble: + payload := element.Double() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDecimal: + payload := element.Decimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueDatetime: + payload := element.Datetime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueYear: + payload := element.Year() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueFixchar: + payload := element.Fixchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueTinytext: + payload := element.Tinytext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueMediumtext: + payload := element.Mediumtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueLongtext: + payload := element.Longtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueBinary: + payload := element.Binary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueVarbinary: + payload := element.Varbinary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + data7 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data7) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data7))) + + case DbValueTinyblob: + payload := element.Tinyblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + data8 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data8))) + + case DbValueBlob: + payload := element.Blob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + data9 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data9) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data9))) + + case DbValueMediumblob: + payload := element.Mediumblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + data10 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data10) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data10))) + + case DbValueLongblob: + payload := element.Longblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + data11 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data11))) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf812))) + + case DbValueSet: + payload := element.Set() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf813))) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + slice := payload + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result15, index*1) + var result14 int32 + if element { + result14 = 1 + } else { + result14 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result14) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result15))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf816))) + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_query((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result18), length19, returnArea) + var result48 witTypes.Result[DbResult, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result21 := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(16+4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant DbColumnType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant = MakeDbColumnTypeBoolean() + + case 1: + + variant = MakeDbColumnTypeTinyint() + + case 2: + + variant = MakeDbColumnTypeSmallint() + + case 3: + + variant = MakeDbColumnTypeMediumint() + + case 4: + + variant = MakeDbColumnTypeInt() + + case 5: + + variant = MakeDbColumnTypeBigint() + + case 6: + + variant = MakeDbColumnTypeTinyintUnsigned() + + case 7: + + variant = MakeDbColumnTypeSmallintUnsigned() + + case 8: + + variant = MakeDbColumnTypeMediumintUnsigned() + + case 9: + + variant = MakeDbColumnTypeIntUnsigned() + + case 10: + + variant = MakeDbColumnTypeBigintUnsigned() + + case 11: + + variant = MakeDbColumnTypeFloat() + + case 12: + + variant = MakeDbColumnTypeDouble() + + case 13: + + variant = MakeDbColumnTypeDecimal() + + case 14: + + variant = MakeDbColumnTypeDate() + + case 15: + + variant = MakeDbColumnTypeDatetime() + + case 16: + + variant = MakeDbColumnTypeTimestamp() + + case 17: + + variant = MakeDbColumnTypeTime() + + case 18: + + variant = MakeDbColumnTypeYear() + + case 19: + + variant = MakeDbColumnTypeFixchar() + + case 20: + + variant = MakeDbColumnTypeVarchar() + + case 21: + + variant = MakeDbColumnTypeTinytext() + + case 22: + + variant = MakeDbColumnTypeText() + + case 23: + + variant = MakeDbColumnTypeMediumtext() + + case 24: + + variant = MakeDbColumnTypeLongtext() + + case 25: + + variant = MakeDbColumnTypeBinary() + + case 26: + + variant = MakeDbColumnTypeVarbinary() + + case 27: + + variant = MakeDbColumnTypeTinyblob() + + case 28: + + variant = MakeDbColumnTypeBlob() + + case 29: + + variant = MakeDbColumnTypeMediumblob() + + case 30: + + variant = MakeDbColumnTypeLongblob() + + case 31: + + variant = MakeDbColumnTypeEnumeration() + + case 32: + + variant = MakeDbColumnTypeSet() + + case 33: + + variant = MakeDbColumnTypeBit() + + case 34: + + variant = MakeDbColumnTypeJson() + + default: + panic("unreachable") + } + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + result21 = append(result21, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value, variant, value20}) + } + + result41 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(2*4)) + result40 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*24) + var variant39 DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant39 = MakeDbValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant39 = MakeDbValueTinyint(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant39 = MakeDbValueSmallint(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant39 = MakeDbValueMediumint(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant39 = MakeDbValueInt(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant39 = MakeDbValueBigint(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + + variant39 = MakeDbValueTinyintUnsigned(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant39 = MakeDbValueSmallintUnsigned(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 8: + + variant39 = MakeDbValueMediumintUnsigned(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant39 = MakeDbValueIntUnsigned(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 10: + + variant39 = MakeDbValueBigintUnsigned(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 11: + + variant39 = MakeDbValueFloat(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 12: + + variant39 = MakeDbValueDouble(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 13: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueDecimal(value22) + + case 14: + + variant39 = MakeDbValueDate(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 15: + + variant39 = MakeDbValueDatetime(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 16: + + variant39 = MakeDbValueTimestamp(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 17: + + variant39 = MakeDbValueTime(golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 18: + + variant39 = MakeDbValueYear(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 19: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueFixchar(value23) + + case 20: + value24 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueVarchar(value24) + + case 21: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueTinytext(value25) + + case 22: + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueText(value26) + + case 23: + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueMediumtext(value27) + + case 24: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueLongtext(value28) + + case 25: + value29 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueBinary(value29) + + case 26: + value30 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueVarbinary(value30) + + case 27: + value31 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueTinyblob(value31) + + case 28: + value32 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueBlob(value32) + + case 29: + value33 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueMediumblob(value33) + + case 30: + value34 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueLongblob(value34) + + case 31: + value35 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueEnumeration(value35) + + case 32: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueSet(value36) + + case 33: + result37 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result37 = append(result37, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant39 = MakeDbValueBit(result37) + + case 34: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueJson(value38) + + case 35: + + variant39 = MakeDbValueNull() + + default: + panic("unreachable") + } + + result40 = append(result40, variant39) + } + + result41 = append(result41, DbRow{result40}) + } + + result48 = witTypes.Ok[DbResult, Error](DbResult{result21, result41}) + case 1: + var variant47 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorConnectionFailure(value42) + + case 1: + value43 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorQueryParameterFailure(value43) + + case 2: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorQueryExecutionFailure(value44) + + case 3: + value45 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorQueryResponseFailure(value45) + + case 4: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant47 = MakeErrorOther(value46) + + default: + panic("unreachable") + } + + result48 = witTypes.Err[DbResult, Error](variant47) + default: + panic("unreachable") + } + result49 := result48 + return result49 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-transaction.query-stream +func wasm_import_method_db_transaction_query_stream(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) QueryStream(statement string, params []DbValue) witTypes.Result[*DbResultStream, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice17 := params + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*24), 8) + for index, element := range slice17 { + base := unsafe.Add(result18, index*24) + + switch element.Tag() { + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueTinyint: + payload := element.Tinyint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallint: + payload := element.Smallint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumint: + payload := element.Mediumint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt: + payload := element.Int() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueBigint: + payload := element.Bigint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueTinyintUnsigned: + payload := element.TinyintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallintUnsigned: + payload := element.SmallintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumintUnsigned: + payload := element.MediumintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueIntUnsigned: + payload := element.IntUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueBigintUnsigned: + payload := element.BigintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case DbValueFloat: + payload := element.Float() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDouble: + payload := element.Double() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDecimal: + payload := element.Decimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueDatetime: + payload := element.Datetime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueYear: + payload := element.Year() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueFixchar: + payload := element.Fixchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueTinytext: + payload := element.Tinytext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueMediumtext: + payload := element.Mediumtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueLongtext: + payload := element.Longtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueBinary: + payload := element.Binary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueVarbinary: + payload := element.Varbinary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + data7 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data7) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data7))) + + case DbValueTinyblob: + payload := element.Tinyblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + data8 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data8))) + + case DbValueBlob: + payload := element.Blob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + data9 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data9) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data9))) + + case DbValueMediumblob: + payload := element.Mediumblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + data10 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data10) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data10))) + + case DbValueLongblob: + payload := element.Longblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + data11 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data11))) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf812))) + + case DbValueSet: + payload := element.Set() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf813))) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + slice := payload + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result15, index*1) + var result14 int32 + if element { + result14 = 1 + } else { + result14 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result14) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result15))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf816))) + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_query_stream((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result18), length19, returnArea) + var result24 witTypes.Result[*DbResultStream, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result24 = witTypes.Ok[*DbResultStream, Error](DbResultStreamFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value20) + + case 2: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value21) + + case 3: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value22) + + case 4: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value23) + + default: + panic("unreachable") + } + + result24 = witTypes.Err[*DbResultStream, Error](variant) + default: + panic("unreachable") + } + result25 := result24 + return result25 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-transaction.execute +func wasm_import_method_db_transaction_execute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) Execute(statement string, params []DbValue) witTypes.Result[uint64, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (16 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice17 := params + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*24), 8) + for index, element := range slice17 { + base := unsafe.Add(result18, index*24) + + switch element.Tag() { + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueTinyint: + payload := element.Tinyint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallint: + payload := element.Smallint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumint: + payload := element.Mediumint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt: + payload := element.Int() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueBigint: + payload := element.Bigint() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueTinyintUnsigned: + payload := element.TinyintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueSmallintUnsigned: + payload := element.SmallintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueMediumintUnsigned: + payload := element.MediumintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueIntUnsigned: + payload := element.IntUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueBigintUnsigned: + payload := element.BigintUnsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case DbValueFloat: + payload := element.Float() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDouble: + payload := element.Double() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueDecimal: + payload := element.Decimal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueDatetime: + payload := element.Datetime() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueYear: + payload := element.Year() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueFixchar: + payload := element.Fixchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueTinytext: + payload := element.Tinytext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueMediumtext: + payload := element.Mediumtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueLongtext: + payload := element.Longtext() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueBinary: + payload := element.Binary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueVarbinary: + payload := element.Varbinary() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + data7 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data7) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data7))) + + case DbValueTinyblob: + payload := element.Tinyblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + data8 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data8))) + + case DbValueBlob: + payload := element.Blob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + data9 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data9) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data9))) + + case DbValueMediumblob: + payload := element.Mediumblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + data10 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data10) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data10))) + + case DbValueLongblob: + payload := element.Longblob() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + data11 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data11) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data11))) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + utf812 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf812))) + + case DbValueSet: + payload := element.Set() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf813))) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + slice := payload + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result15, index*1) + var result14 int32 + if element { + result14 = 1 + } else { + result14 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result14) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result15))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf816))) + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_execute((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result18), length19, returnArea) + var result24 witTypes.Result[uint64, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result24 = witTypes.Ok[uint64, Error](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryParameterFailure(value20) + + case 2: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryExecutionFailure(value21) + + case 3: + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryResponseFailure(value22) + + case 4: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorOther(value23) + + default: + panic("unreachable") + } + + result24 = witTypes.Err[uint64, Error](variant) + default: + panic("unreachable") + } + result25 := result24 + return result25 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-transaction.commit +func wasm_import_method_db_transaction_commit(arg0 int32, arg1 uintptr) + +func (self *DbTransaction) Commit() witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_transaction_commit((self).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/mysql@1.5.0 [method]db-transaction.rollback +func wasm_import_method_db_transaction_rollback(arg0 int32, arg1 uintptr) + +func (self *DbTransaction) Rollback() witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_transaction_rollback((self).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} diff --git a/sdks/go/internal/wit/golem_rdbms_postgres/empty.s b/sdks/go/internal/wit/golem_rdbms_postgres/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_postgres/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go b/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go new file mode 100644 index 0000000000..d81869336e --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go @@ -0,0 +1,10569 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_rdbms_postgres + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_rdbms_types" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Date = golem_rdbms_types.Date +type Time = golem_rdbms_types.Time +type Timetz = golem_rdbms_types.Timetz +type Timestamp = golem_rdbms_types.Timestamp +type Timestamptz = golem_rdbms_types.Timestamptz +type Uuid = golem_rdbms_types.Uuid +type IpAddress = golem_rdbms_types.IpAddress +type MacAddress = golem_rdbms_types.MacAddress + +const ( + ErrorConnectionFailure uint8 = 0 + ErrorQueryParameterFailure uint8 = 1 + ErrorQueryExecutionFailure uint8 = 2 + ErrorQueryResponseFailure uint8 = 3 + ErrorOther uint8 = 4 +) + +type Error struct { + tag uint8 + value any +} + +func (self Error) Tag() uint8 { + return self.tag +} + +func (self Error) ConnectionFailure() string { + if self.tag != ErrorConnectionFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryParameterFailure() string { + if self.tag != ErrorQueryParameterFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryExecutionFailure() string { + if self.tag != ErrorQueryExecutionFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) QueryResponseFailure() string { + if self.tag != ErrorQueryResponseFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) Other() string { + if self.tag != ErrorOther { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeErrorConnectionFailure(value string) Error { + return Error{ErrorConnectionFailure, value} +} +func MakeErrorQueryParameterFailure(value string) Error { + return Error{ErrorQueryParameterFailure, value} +} +func MakeErrorQueryExecutionFailure(value string) Error { + return Error{ErrorQueryExecutionFailure, value} +} +func MakeErrorQueryResponseFailure(value string) Error { + return Error{ErrorQueryResponseFailure, value} +} +func MakeErrorOther(value string) Error { + return Error{ErrorOther, value} +} + +type Interval struct { + Months int32 + Days int32 + Microseconds int64 +} + +const ( + Int4boundIncluded uint8 = 0 + Int4boundExcluded uint8 = 1 + Int4boundUnbounded uint8 = 2 +) + +type Int4bound struct { + tag uint8 + value any +} + +func (self Int4bound) Tag() uint8 { + return self.tag +} + +func (self Int4bound) Included() int32 { + if self.tag != Int4boundIncluded { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self Int4bound) Excluded() int32 { + if self.tag != Int4boundExcluded { + panic("tag mismatch") + } + return self.value.(int32) +} + +func MakeInt4boundIncluded(value int32) Int4bound { + return Int4bound{Int4boundIncluded, value} +} +func MakeInt4boundExcluded(value int32) Int4bound { + return Int4bound{Int4boundExcluded, value} +} +func MakeInt4boundUnbounded() Int4bound { + return Int4bound{Int4boundUnbounded, nil} +} + +const ( + Int8boundIncluded uint8 = 0 + Int8boundExcluded uint8 = 1 + Int8boundUnbounded uint8 = 2 +) + +type Int8bound struct { + tag uint8 + value any +} + +func (self Int8bound) Tag() uint8 { + return self.tag +} + +func (self Int8bound) Included() int64 { + if self.tag != Int8boundIncluded { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self Int8bound) Excluded() int64 { + if self.tag != Int8boundExcluded { + panic("tag mismatch") + } + return self.value.(int64) +} + +func MakeInt8boundIncluded(value int64) Int8bound { + return Int8bound{Int8boundIncluded, value} +} +func MakeInt8boundExcluded(value int64) Int8bound { + return Int8bound{Int8boundExcluded, value} +} +func MakeInt8boundUnbounded() Int8bound { + return Int8bound{Int8boundUnbounded, nil} +} + +const ( + NumboundIncluded uint8 = 0 + NumboundExcluded uint8 = 1 + NumboundUnbounded uint8 = 2 +) + +type Numbound struct { + tag uint8 + value any +} + +func (self Numbound) Tag() uint8 { + return self.tag +} + +func (self Numbound) Included() string { + if self.tag != NumboundIncluded { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Numbound) Excluded() string { + if self.tag != NumboundExcluded { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeNumboundIncluded(value string) Numbound { + return Numbound{NumboundIncluded, value} +} +func MakeNumboundExcluded(value string) Numbound { + return Numbound{NumboundExcluded, value} +} +func MakeNumboundUnbounded() Numbound { + return Numbound{NumboundUnbounded, nil} +} + +const ( + TsboundIncluded uint8 = 0 + TsboundExcluded uint8 = 1 + TsboundUnbounded uint8 = 2 +) + +type Tsbound struct { + tag uint8 + value any +} + +func (self Tsbound) Tag() uint8 { + return self.tag +} + +func (self Tsbound) Included() golem_rdbms_types.Timestamp { + if self.tag != TsboundIncluded { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamp) +} +func (self Tsbound) Excluded() golem_rdbms_types.Timestamp { + if self.tag != TsboundExcluded { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamp) +} + +func MakeTsboundIncluded(value golem_rdbms_types.Timestamp) Tsbound { + return Tsbound{TsboundIncluded, value} +} +func MakeTsboundExcluded(value golem_rdbms_types.Timestamp) Tsbound { + return Tsbound{TsboundExcluded, value} +} +func MakeTsboundUnbounded() Tsbound { + return Tsbound{TsboundUnbounded, nil} +} + +const ( + TstzboundIncluded uint8 = 0 + TstzboundExcluded uint8 = 1 + TstzboundUnbounded uint8 = 2 +) + +type Tstzbound struct { + tag uint8 + value any +} + +func (self Tstzbound) Tag() uint8 { + return self.tag +} + +func (self Tstzbound) Included() golem_rdbms_types.Timestamptz { + if self.tag != TstzboundIncluded { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamptz) +} +func (self Tstzbound) Excluded() golem_rdbms_types.Timestamptz { + if self.tag != TstzboundExcluded { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamptz) +} + +func MakeTstzboundIncluded(value golem_rdbms_types.Timestamptz) Tstzbound { + return Tstzbound{TstzboundIncluded, value} +} +func MakeTstzboundExcluded(value golem_rdbms_types.Timestamptz) Tstzbound { + return Tstzbound{TstzboundExcluded, value} +} +func MakeTstzboundUnbounded() Tstzbound { + return Tstzbound{TstzboundUnbounded, nil} +} + +const ( + DateboundIncluded uint8 = 0 + DateboundExcluded uint8 = 1 + DateboundUnbounded uint8 = 2 +) + +type Datebound struct { + tag uint8 + value any +} + +func (self Datebound) Tag() uint8 { + return self.tag +} + +func (self Datebound) Included() golem_rdbms_types.Date { + if self.tag != DateboundIncluded { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Date) +} +func (self Datebound) Excluded() golem_rdbms_types.Date { + if self.tag != DateboundExcluded { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Date) +} + +func MakeDateboundIncluded(value golem_rdbms_types.Date) Datebound { + return Datebound{DateboundIncluded, value} +} +func MakeDateboundExcluded(value golem_rdbms_types.Date) Datebound { + return Datebound{DateboundExcluded, value} +} +func MakeDateboundUnbounded() Datebound { + return Datebound{DateboundUnbounded, nil} +} + +type Int4range struct { + Start Int4bound + End Int4bound +} + +type Int8range struct { + Start Int8bound + End Int8bound +} + +type Numrange struct { + Start Numbound + End Numbound +} + +type Tsrange struct { + Start Tsbound + End Tsbound +} + +type Tstzrange struct { + Start Tstzbound + End Tstzbound +} + +type Daterange struct { + Start Datebound + End Datebound +} + +type EnumerationType struct { + Name string +} + +type Enumeration struct { + Name string + Value string +} + +type SparseVec struct { + Dim int32 + Indices []int32 + Values []float32 +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [resource-drop]lazy-db-value +func resourceDropLazyDbValue(handle int32) + +type LazyDbValue struct { + handle *witRuntime.Handle +} + +func (self *LazyDbValue) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *LazyDbValue) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *LazyDbValue) Handle() int32 { + return self.handle.Use() +} + +func (self *LazyDbValue) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropLazyDbValue(handle) + } +} + +func LazyDbValueFromOwnHandle(handleValue int32) *LazyDbValue { + handle := witRuntime.MakeHandle(handleValue) + value := &LazyDbValue{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropLazyDbValue(handleValue) + } + }, 0) + return value +} + +func LazyDbValueFromBorrowHandle(handleValue int32) *LazyDbValue { + handle := witRuntime.MakeHandle(handleValue) + return &LazyDbValue{handle} +} + +type Composite struct { + Name string + Values []*LazyDbValue +} + +type Domain struct { + Name string + Value *LazyDbValue +} + +const ( + ValueBoundIncluded uint8 = 0 + ValueBoundExcluded uint8 = 1 + ValueBoundUnbounded uint8 = 2 +) + +type ValueBound struct { + tag uint8 + value any +} + +func (self ValueBound) Tag() uint8 { + return self.tag +} + +func (self ValueBound) Included() *LazyDbValue { + if self.tag != ValueBoundIncluded { + panic("tag mismatch") + } + return self.value.(*LazyDbValue) +} +func (self ValueBound) Excluded() *LazyDbValue { + if self.tag != ValueBoundExcluded { + panic("tag mismatch") + } + return self.value.(*LazyDbValue) +} + +func MakeValueBoundIncluded(value *LazyDbValue) ValueBound { + return ValueBound{ValueBoundIncluded, value} +} +func MakeValueBoundExcluded(value *LazyDbValue) ValueBound { + return ValueBound{ValueBoundExcluded, value} +} +func MakeValueBoundUnbounded() ValueBound { + return ValueBound{ValueBoundUnbounded, nil} +} + +type ValuesRange struct { + Start ValueBound + End ValueBound +} + +type Range struct { + Name string + Value ValuesRange +} + +const ( + DbValueCharacter uint8 = 0 + DbValueInt2 uint8 = 1 + DbValueInt4 uint8 = 2 + DbValueInt8 uint8 = 3 + DbValueFloat4 uint8 = 4 + DbValueFloat8 uint8 = 5 + DbValueNumeric uint8 = 6 + DbValueBoolean uint8 = 7 + DbValueText uint8 = 8 + DbValueVarchar uint8 = 9 + DbValueBpchar uint8 = 10 + DbValueTimestamp uint8 = 11 + DbValueTimestamptz uint8 = 12 + DbValueDate uint8 = 13 + DbValueTime uint8 = 14 + DbValueTimetz uint8 = 15 + DbValueInterval uint8 = 16 + DbValueBytea uint8 = 17 + DbValueJson uint8 = 18 + DbValueJsonb uint8 = 19 + DbValueJsonpath uint8 = 20 + DbValueXml uint8 = 21 + DbValueUuid uint8 = 22 + DbValueInet uint8 = 23 + DbValueCidr uint8 = 24 + DbValueMacaddr uint8 = 25 + DbValueBit uint8 = 26 + DbValueVarbit uint8 = 27 + DbValueInt4range uint8 = 28 + DbValueInt8range uint8 = 29 + DbValueNumrange uint8 = 30 + DbValueTsrange uint8 = 31 + DbValueTstzrange uint8 = 32 + DbValueDaterange uint8 = 33 + DbValueMoney uint8 = 34 + DbValueOid uint8 = 35 + DbValueEnumeration uint8 = 36 + DbValueComposite uint8 = 37 + DbValueDomain uint8 = 38 + DbValueArray uint8 = 39 + DbValueRange uint8 = 40 + DbValueNull uint8 = 41 + DbValueVector uint8 = 42 + DbValueHalfvec uint8 = 43 + DbValueSparsevec uint8 = 44 +) + +type DbValue struct { + tag uint8 + value any +} + +func (self DbValue) Tag() uint8 { + return self.tag +} + +func (self DbValue) Character() int8 { + if self.tag != DbValueCharacter { + panic("tag mismatch") + } + return self.value.(int8) +} +func (self DbValue) Int2() int16 { + if self.tag != DbValueInt2 { + panic("tag mismatch") + } + return self.value.(int16) +} +func (self DbValue) Int4() int32 { + if self.tag != DbValueInt4 { + panic("tag mismatch") + } + return self.value.(int32) +} +func (self DbValue) Int8() int64 { + if self.tag != DbValueInt8 { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self DbValue) Float4() float32 { + if self.tag != DbValueFloat4 { + panic("tag mismatch") + } + return self.value.(float32) +} +func (self DbValue) Float8() float64 { + if self.tag != DbValueFloat8 { + panic("tag mismatch") + } + return self.value.(float64) +} +func (self DbValue) Numeric() string { + if self.tag != DbValueNumeric { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Boolean() bool { + if self.tag != DbValueBoolean { + panic("tag mismatch") + } + return self.value.(bool) +} +func (self DbValue) Text() string { + if self.tag != DbValueText { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Varchar() string { + if self.tag != DbValueVarchar { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Bpchar() string { + if self.tag != DbValueBpchar { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Timestamp() golem_rdbms_types.Timestamp { + if self.tag != DbValueTimestamp { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamp) +} +func (self DbValue) Timestamptz() golem_rdbms_types.Timestamptz { + if self.tag != DbValueTimestamptz { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timestamptz) +} +func (self DbValue) Date() golem_rdbms_types.Date { + if self.tag != DbValueDate { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Date) +} +func (self DbValue) Time() golem_rdbms_types.Time { + if self.tag != DbValueTime { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Time) +} +func (self DbValue) Timetz() golem_rdbms_types.Timetz { + if self.tag != DbValueTimetz { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Timetz) +} +func (self DbValue) Interval() Interval { + if self.tag != DbValueInterval { + panic("tag mismatch") + } + return self.value.(Interval) +} +func (self DbValue) Bytea() []uint8 { + if self.tag != DbValueBytea { + panic("tag mismatch") + } + return self.value.([]uint8) +} +func (self DbValue) Json() string { + if self.tag != DbValueJson { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Jsonb() string { + if self.tag != DbValueJsonb { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Jsonpath() string { + if self.tag != DbValueJsonpath { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Xml() string { + if self.tag != DbValueXml { + panic("tag mismatch") + } + return self.value.(string) +} +func (self DbValue) Uuid() golem_rdbms_types.Uuid { + if self.tag != DbValueUuid { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.Uuid) +} +func (self DbValue) Inet() golem_rdbms_types.IpAddress { + if self.tag != DbValueInet { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.IpAddress) +} +func (self DbValue) Cidr() golem_rdbms_types.IpAddress { + if self.tag != DbValueCidr { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.IpAddress) +} +func (self DbValue) Macaddr() golem_rdbms_types.MacAddress { + if self.tag != DbValueMacaddr { + panic("tag mismatch") + } + return self.value.(golem_rdbms_types.MacAddress) +} +func (self DbValue) Bit() []bool { + if self.tag != DbValueBit { + panic("tag mismatch") + } + return self.value.([]bool) +} +func (self DbValue) Varbit() []bool { + if self.tag != DbValueVarbit { + panic("tag mismatch") + } + return self.value.([]bool) +} +func (self DbValue) Int4range() Int4range { + if self.tag != DbValueInt4range { + panic("tag mismatch") + } + return self.value.(Int4range) +} +func (self DbValue) Int8range() Int8range { + if self.tag != DbValueInt8range { + panic("tag mismatch") + } + return self.value.(Int8range) +} +func (self DbValue) Numrange() Numrange { + if self.tag != DbValueNumrange { + panic("tag mismatch") + } + return self.value.(Numrange) +} +func (self DbValue) Tsrange() Tsrange { + if self.tag != DbValueTsrange { + panic("tag mismatch") + } + return self.value.(Tsrange) +} +func (self DbValue) Tstzrange() Tstzrange { + if self.tag != DbValueTstzrange { + panic("tag mismatch") + } + return self.value.(Tstzrange) +} +func (self DbValue) Daterange() Daterange { + if self.tag != DbValueDaterange { + panic("tag mismatch") + } + return self.value.(Daterange) +} +func (self DbValue) Money() int64 { + if self.tag != DbValueMoney { + panic("tag mismatch") + } + return self.value.(int64) +} +func (self DbValue) Oid() uint32 { + if self.tag != DbValueOid { + panic("tag mismatch") + } + return self.value.(uint32) +} +func (self DbValue) Enumeration() Enumeration { + if self.tag != DbValueEnumeration { + panic("tag mismatch") + } + return self.value.(Enumeration) +} +func (self DbValue) Composite() Composite { + if self.tag != DbValueComposite { + panic("tag mismatch") + } + return self.value.(Composite) +} +func (self DbValue) Domain() Domain { + if self.tag != DbValueDomain { + panic("tag mismatch") + } + return self.value.(Domain) +} +func (self DbValue) Array() []*LazyDbValue { + if self.tag != DbValueArray { + panic("tag mismatch") + } + return self.value.([]*LazyDbValue) +} +func (self DbValue) Range() Range { + if self.tag != DbValueRange { + panic("tag mismatch") + } + return self.value.(Range) +} +func (self DbValue) Vector() []float32 { + if self.tag != DbValueVector { + panic("tag mismatch") + } + return self.value.([]float32) +} +func (self DbValue) Halfvec() []float32 { + if self.tag != DbValueHalfvec { + panic("tag mismatch") + } + return self.value.([]float32) +} +func (self DbValue) Sparsevec() SparseVec { + if self.tag != DbValueSparsevec { + panic("tag mismatch") + } + return self.value.(SparseVec) +} + +func MakeDbValueCharacter(value int8) DbValue { + return DbValue{DbValueCharacter, value} +} +func MakeDbValueInt2(value int16) DbValue { + return DbValue{DbValueInt2, value} +} +func MakeDbValueInt4(value int32) DbValue { + return DbValue{DbValueInt4, value} +} +func MakeDbValueInt8(value int64) DbValue { + return DbValue{DbValueInt8, value} +} +func MakeDbValueFloat4(value float32) DbValue { + return DbValue{DbValueFloat4, value} +} +func MakeDbValueFloat8(value float64) DbValue { + return DbValue{DbValueFloat8, value} +} +func MakeDbValueNumeric(value string) DbValue { + return DbValue{DbValueNumeric, value} +} +func MakeDbValueBoolean(value bool) DbValue { + return DbValue{DbValueBoolean, value} +} +func MakeDbValueText(value string) DbValue { + return DbValue{DbValueText, value} +} +func MakeDbValueVarchar(value string) DbValue { + return DbValue{DbValueVarchar, value} +} +func MakeDbValueBpchar(value string) DbValue { + return DbValue{DbValueBpchar, value} +} +func MakeDbValueTimestamp(value golem_rdbms_types.Timestamp) DbValue { + return DbValue{DbValueTimestamp, value} +} +func MakeDbValueTimestamptz(value golem_rdbms_types.Timestamptz) DbValue { + return DbValue{DbValueTimestamptz, value} +} +func MakeDbValueDate(value golem_rdbms_types.Date) DbValue { + return DbValue{DbValueDate, value} +} +func MakeDbValueTime(value golem_rdbms_types.Time) DbValue { + return DbValue{DbValueTime, value} +} +func MakeDbValueTimetz(value golem_rdbms_types.Timetz) DbValue { + return DbValue{DbValueTimetz, value} +} +func MakeDbValueInterval(value Interval) DbValue { + return DbValue{DbValueInterval, value} +} +func MakeDbValueBytea(value []uint8) DbValue { + return DbValue{DbValueBytea, value} +} +func MakeDbValueJson(value string) DbValue { + return DbValue{DbValueJson, value} +} +func MakeDbValueJsonb(value string) DbValue { + return DbValue{DbValueJsonb, value} +} +func MakeDbValueJsonpath(value string) DbValue { + return DbValue{DbValueJsonpath, value} +} +func MakeDbValueXml(value string) DbValue { + return DbValue{DbValueXml, value} +} +func MakeDbValueUuid(value golem_rdbms_types.Uuid) DbValue { + return DbValue{DbValueUuid, value} +} +func MakeDbValueInet(value golem_rdbms_types.IpAddress) DbValue { + return DbValue{DbValueInet, value} +} +func MakeDbValueCidr(value golem_rdbms_types.IpAddress) DbValue { + return DbValue{DbValueCidr, value} +} +func MakeDbValueMacaddr(value golem_rdbms_types.MacAddress) DbValue { + return DbValue{DbValueMacaddr, value} +} +func MakeDbValueBit(value []bool) DbValue { + return DbValue{DbValueBit, value} +} +func MakeDbValueVarbit(value []bool) DbValue { + return DbValue{DbValueVarbit, value} +} +func MakeDbValueInt4range(value Int4range) DbValue { + return DbValue{DbValueInt4range, value} +} +func MakeDbValueInt8range(value Int8range) DbValue { + return DbValue{DbValueInt8range, value} +} +func MakeDbValueNumrange(value Numrange) DbValue { + return DbValue{DbValueNumrange, value} +} +func MakeDbValueTsrange(value Tsrange) DbValue { + return DbValue{DbValueTsrange, value} +} +func MakeDbValueTstzrange(value Tstzrange) DbValue { + return DbValue{DbValueTstzrange, value} +} +func MakeDbValueDaterange(value Daterange) DbValue { + return DbValue{DbValueDaterange, value} +} +func MakeDbValueMoney(value int64) DbValue { + return DbValue{DbValueMoney, value} +} +func MakeDbValueOid(value uint32) DbValue { + return DbValue{DbValueOid, value} +} +func MakeDbValueEnumeration(value Enumeration) DbValue { + return DbValue{DbValueEnumeration, value} +} +func MakeDbValueComposite(value Composite) DbValue { + return DbValue{DbValueComposite, value} +} +func MakeDbValueDomain(value Domain) DbValue { + return DbValue{DbValueDomain, value} +} +func MakeDbValueArray(value []*LazyDbValue) DbValue { + return DbValue{DbValueArray, value} +} +func MakeDbValueRange(value Range) DbValue { + return DbValue{DbValueRange, value} +} +func MakeDbValueNull() DbValue { + return DbValue{DbValueNull, nil} +} +func MakeDbValueVector(value []float32) DbValue { + return DbValue{DbValueVector, value} +} +func MakeDbValueHalfvec(value []float32) DbValue { + return DbValue{DbValueHalfvec, value} +} +func MakeDbValueSparsevec(value SparseVec) DbValue { + return DbValue{DbValueSparsevec, value} +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [resource-drop]lazy-db-column-type +func resourceDropLazyDbColumnType(handle int32) + +type LazyDbColumnType struct { + handle *witRuntime.Handle +} + +func (self *LazyDbColumnType) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *LazyDbColumnType) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *LazyDbColumnType) Handle() int32 { + return self.handle.Use() +} + +func (self *LazyDbColumnType) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropLazyDbColumnType(handle) + } +} + +func LazyDbColumnTypeFromOwnHandle(handleValue int32) *LazyDbColumnType { + handle := witRuntime.MakeHandle(handleValue) + value := &LazyDbColumnType{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropLazyDbColumnType(handleValue) + } + }, 0) + return value +} + +func LazyDbColumnTypeFromBorrowHandle(handleValue int32) *LazyDbColumnType { + handle := witRuntime.MakeHandle(handleValue) + return &LazyDbColumnType{handle} +} + +type CompositeType struct { + Name string + Attributes []witTypes.Tuple2[string, *LazyDbColumnType] +} + +type DomainType struct { + Name string + BaseType *LazyDbColumnType +} + +type RangeType struct { + Name string + BaseType *LazyDbColumnType +} + +const ( + DbColumnTypeCharacter uint8 = 0 + DbColumnTypeInt2 uint8 = 1 + DbColumnTypeInt4 uint8 = 2 + DbColumnTypeInt8 uint8 = 3 + DbColumnTypeFloat4 uint8 = 4 + DbColumnTypeFloat8 uint8 = 5 + DbColumnTypeNumeric uint8 = 6 + DbColumnTypeBoolean uint8 = 7 + DbColumnTypeText uint8 = 8 + DbColumnTypeVarchar uint8 = 9 + DbColumnTypeBpchar uint8 = 10 + DbColumnTypeTimestamp uint8 = 11 + DbColumnTypeTimestamptz uint8 = 12 + DbColumnTypeDate uint8 = 13 + DbColumnTypeTime uint8 = 14 + DbColumnTypeTimetz uint8 = 15 + DbColumnTypeInterval uint8 = 16 + DbColumnTypeBytea uint8 = 17 + DbColumnTypeUuid uint8 = 18 + DbColumnTypeXml uint8 = 19 + DbColumnTypeJson uint8 = 20 + DbColumnTypeJsonb uint8 = 21 + DbColumnTypeJsonpath uint8 = 22 + DbColumnTypeInet uint8 = 23 + DbColumnTypeCidr uint8 = 24 + DbColumnTypeMacaddr uint8 = 25 + DbColumnTypeBit uint8 = 26 + DbColumnTypeVarbit uint8 = 27 + DbColumnTypeInt4range uint8 = 28 + DbColumnTypeInt8range uint8 = 29 + DbColumnTypeNumrange uint8 = 30 + DbColumnTypeTsrange uint8 = 31 + DbColumnTypeTstzrange uint8 = 32 + DbColumnTypeDaterange uint8 = 33 + DbColumnTypeMoney uint8 = 34 + DbColumnTypeOid uint8 = 35 + DbColumnTypeEnumeration uint8 = 36 + DbColumnTypeComposite uint8 = 37 + DbColumnTypeDomain uint8 = 38 + DbColumnTypeArray uint8 = 39 + DbColumnTypeRange uint8 = 40 + DbColumnTypeVector uint8 = 41 + DbColumnTypeHalfvec uint8 = 42 + DbColumnTypeSparsevec uint8 = 43 +) + +type DbColumnType struct { + tag uint8 + value any +} + +func (self DbColumnType) Tag() uint8 { + return self.tag +} + +func (self DbColumnType) Enumeration() EnumerationType { + if self.tag != DbColumnTypeEnumeration { + panic("tag mismatch") + } + return self.value.(EnumerationType) +} +func (self DbColumnType) Composite() CompositeType { + if self.tag != DbColumnTypeComposite { + panic("tag mismatch") + } + return self.value.(CompositeType) +} +func (self DbColumnType) Domain() DomainType { + if self.tag != DbColumnTypeDomain { + panic("tag mismatch") + } + return self.value.(DomainType) +} +func (self DbColumnType) Array() *LazyDbColumnType { + if self.tag != DbColumnTypeArray { + panic("tag mismatch") + } + return self.value.(*LazyDbColumnType) +} +func (self DbColumnType) Range() RangeType { + if self.tag != DbColumnTypeRange { + panic("tag mismatch") + } + return self.value.(RangeType) +} + +func MakeDbColumnTypeCharacter() DbColumnType { + return DbColumnType{DbColumnTypeCharacter, nil} +} +func MakeDbColumnTypeInt2() DbColumnType { + return DbColumnType{DbColumnTypeInt2, nil} +} +func MakeDbColumnTypeInt4() DbColumnType { + return DbColumnType{DbColumnTypeInt4, nil} +} +func MakeDbColumnTypeInt8() DbColumnType { + return DbColumnType{DbColumnTypeInt8, nil} +} +func MakeDbColumnTypeFloat4() DbColumnType { + return DbColumnType{DbColumnTypeFloat4, nil} +} +func MakeDbColumnTypeFloat8() DbColumnType { + return DbColumnType{DbColumnTypeFloat8, nil} +} +func MakeDbColumnTypeNumeric() DbColumnType { + return DbColumnType{DbColumnTypeNumeric, nil} +} +func MakeDbColumnTypeBoolean() DbColumnType { + return DbColumnType{DbColumnTypeBoolean, nil} +} +func MakeDbColumnTypeText() DbColumnType { + return DbColumnType{DbColumnTypeText, nil} +} +func MakeDbColumnTypeVarchar() DbColumnType { + return DbColumnType{DbColumnTypeVarchar, nil} +} +func MakeDbColumnTypeBpchar() DbColumnType { + return DbColumnType{DbColumnTypeBpchar, nil} +} +func MakeDbColumnTypeTimestamp() DbColumnType { + return DbColumnType{DbColumnTypeTimestamp, nil} +} +func MakeDbColumnTypeTimestamptz() DbColumnType { + return DbColumnType{DbColumnTypeTimestamptz, nil} +} +func MakeDbColumnTypeDate() DbColumnType { + return DbColumnType{DbColumnTypeDate, nil} +} +func MakeDbColumnTypeTime() DbColumnType { + return DbColumnType{DbColumnTypeTime, nil} +} +func MakeDbColumnTypeTimetz() DbColumnType { + return DbColumnType{DbColumnTypeTimetz, nil} +} +func MakeDbColumnTypeInterval() DbColumnType { + return DbColumnType{DbColumnTypeInterval, nil} +} +func MakeDbColumnTypeBytea() DbColumnType { + return DbColumnType{DbColumnTypeBytea, nil} +} +func MakeDbColumnTypeUuid() DbColumnType { + return DbColumnType{DbColumnTypeUuid, nil} +} +func MakeDbColumnTypeXml() DbColumnType { + return DbColumnType{DbColumnTypeXml, nil} +} +func MakeDbColumnTypeJson() DbColumnType { + return DbColumnType{DbColumnTypeJson, nil} +} +func MakeDbColumnTypeJsonb() DbColumnType { + return DbColumnType{DbColumnTypeJsonb, nil} +} +func MakeDbColumnTypeJsonpath() DbColumnType { + return DbColumnType{DbColumnTypeJsonpath, nil} +} +func MakeDbColumnTypeInet() DbColumnType { + return DbColumnType{DbColumnTypeInet, nil} +} +func MakeDbColumnTypeCidr() DbColumnType { + return DbColumnType{DbColumnTypeCidr, nil} +} +func MakeDbColumnTypeMacaddr() DbColumnType { + return DbColumnType{DbColumnTypeMacaddr, nil} +} +func MakeDbColumnTypeBit() DbColumnType { + return DbColumnType{DbColumnTypeBit, nil} +} +func MakeDbColumnTypeVarbit() DbColumnType { + return DbColumnType{DbColumnTypeVarbit, nil} +} +func MakeDbColumnTypeInt4range() DbColumnType { + return DbColumnType{DbColumnTypeInt4range, nil} +} +func MakeDbColumnTypeInt8range() DbColumnType { + return DbColumnType{DbColumnTypeInt8range, nil} +} +func MakeDbColumnTypeNumrange() DbColumnType { + return DbColumnType{DbColumnTypeNumrange, nil} +} +func MakeDbColumnTypeTsrange() DbColumnType { + return DbColumnType{DbColumnTypeTsrange, nil} +} +func MakeDbColumnTypeTstzrange() DbColumnType { + return DbColumnType{DbColumnTypeTstzrange, nil} +} +func MakeDbColumnTypeDaterange() DbColumnType { + return DbColumnType{DbColumnTypeDaterange, nil} +} +func MakeDbColumnTypeMoney() DbColumnType { + return DbColumnType{DbColumnTypeMoney, nil} +} +func MakeDbColumnTypeOid() DbColumnType { + return DbColumnType{DbColumnTypeOid, nil} +} +func MakeDbColumnTypeEnumeration(value EnumerationType) DbColumnType { + return DbColumnType{DbColumnTypeEnumeration, value} +} +func MakeDbColumnTypeComposite(value CompositeType) DbColumnType { + return DbColumnType{DbColumnTypeComposite, value} +} +func MakeDbColumnTypeDomain(value DomainType) DbColumnType { + return DbColumnType{DbColumnTypeDomain, value} +} +func MakeDbColumnTypeArray(value *LazyDbColumnType) DbColumnType { + return DbColumnType{DbColumnTypeArray, value} +} +func MakeDbColumnTypeRange(value RangeType) DbColumnType { + return DbColumnType{DbColumnTypeRange, value} +} +func MakeDbColumnTypeVector() DbColumnType { + return DbColumnType{DbColumnTypeVector, nil} +} +func MakeDbColumnTypeHalfvec() DbColumnType { + return DbColumnType{DbColumnTypeHalfvec, nil} +} +func MakeDbColumnTypeSparsevec() DbColumnType { + return DbColumnType{DbColumnTypeSparsevec, nil} +} + +type DbColumn struct { + Ordinal uint64 + Name string + DbType DbColumnType + DbTypeName string +} + +// A single row of values +type DbRow struct { + Values []DbValue +} + +type DbResult struct { + Columns []DbColumn + Rows []DbRow +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [resource-drop]db-result-stream +func resourceDropDbResultStream(handle int32) + +// A potentially very large and lazy stream of rows: +type DbResultStream struct { + handle *witRuntime.Handle +} + +func (self *DbResultStream) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbResultStream) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbResultStream) Handle() int32 { + return self.handle.Use() +} + +func (self *DbResultStream) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbResultStream(handle) + } +} + +func DbResultStreamFromOwnHandle(handleValue int32) *DbResultStream { + handle := witRuntime.MakeHandle(handleValue) + value := &DbResultStream{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbResultStream(handleValue) + } + }, 0) + return value +} + +func DbResultStreamFromBorrowHandle(handleValue int32) *DbResultStream { + handle := witRuntime.MakeHandle(handleValue) + return &DbResultStream{handle} +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [resource-drop]db-connection +func resourceDropDbConnection(handle int32) + +type DbConnection struct { + handle *witRuntime.Handle +} + +func (self *DbConnection) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbConnection) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbConnection) Handle() int32 { + return self.handle.Use() +} + +func (self *DbConnection) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbConnection(handle) + } +} + +func DbConnectionFromOwnHandle(handleValue int32) *DbConnection { + handle := witRuntime.MakeHandle(handleValue) + value := &DbConnection{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbConnection(handleValue) + } + }, 0) + return value +} + +func DbConnectionFromBorrowHandle(handleValue int32) *DbConnection { + handle := witRuntime.MakeHandle(handleValue) + return &DbConnection{handle} +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [resource-drop]db-transaction +func resourceDropDbTransaction(handle int32) + +type DbTransaction struct { + handle *witRuntime.Handle +} + +func (self *DbTransaction) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *DbTransaction) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *DbTransaction) Handle() int32 { + return self.handle.Use() +} + +func (self *DbTransaction) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropDbTransaction(handle) + } +} + +func DbTransactionFromOwnHandle(handleValue int32) *DbTransaction { + handle := witRuntime.MakeHandle(handleValue) + value := &DbTransaction{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropDbTransaction(handleValue) + } + }, 0) + return value +} + +func DbTransactionFromBorrowHandle(handleValue int32) *DbTransaction { + handle := witRuntime.MakeHandle(handleValue) + return &DbTransaction{handle} +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [constructor]lazy-db-value +func wasm_import_constructor_lazy_db_value(arg0 uintptr) int32 + +func MakeLazyDbValue(value DbValue) *LazyDbValue { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 56, 8)) + + switch value.Tag() { + case DbValueCharacter: + payload := value.Character() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(payload)) + + case DbValueInt2: + payload := value.Int2() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int16(int32(payload)) + + case DbValueInt4: + payload := value.Int4() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = payload + + case DbValueInt8: + payload := value.Int8() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = payload + + case DbValueFloat4: + payload := value.Float4() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(4)) + *(*float32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = payload + + case DbValueFloat8: + payload := value.Float8() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(5)) + *(*float64)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = payload + + case DbValueNumeric: + payload := value.Numeric() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(6)) + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf8))) + + case DbValueBoolean: + payload := value.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(7)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(result) + + case DbValueText: + payload := value.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(8)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueVarchar: + payload := value.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(9)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueBpchar: + payload := value.Bpchar() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(10)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueTimestamp: + payload := value.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamptz: + payload := value.Timestamptz() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 13)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 18)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = (payload).Offset + + case DbValueDate: + payload := value.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 13)) = int8(int32((payload).Day)) + + case DbValueTime: + payload := value.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(14)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int32((payload).Nanosecond) + + case DbValueTimetz: + payload := value.Timetz() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(15)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 9)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 10)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int32(((payload).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = (payload).Offset + + case DbValueInterval: + payload := value.Interval() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = (payload).Months + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = (payload).Days + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = (payload).Microseconds + + case DbValueBytea: + payload := value.Bytea() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(17)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueJson: + payload := value.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(18)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueJsonb: + payload := value.Jsonb() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(19)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueJsonpath: + payload := value.Jsonpath() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(20)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueXml: + payload := value.Xml() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(21)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueUuid: + payload := value.Uuid() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int64((payload).LowBits) + + case DbValueInet: + payload := value.Inet() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(23)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueCidr: + payload := value.Cidr() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(24)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueMacaddr: + payload := value.Macaddr() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(25)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(((payload).Octets).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 9)) = int8(int32(((payload).Octets).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 10)) = int8(int32(((payload).Octets).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 11)) = int8(int32(((payload).Octets).F3)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = int8(int32(((payload).Octets).F4)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 13)) = int8(int32(((payload).Octets).F5)) + + case DbValueBit: + payload := value.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(26)) + slice := payload + length := uint32(len(slice)) + result8 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result8, index*1) + var result7 int32 + if element { + result7 = 1 + } else { + result7 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result7) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(result8))) + + case DbValueVarbit: + payload := value.Varbit() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(27)) + slice10 := payload + length12 := uint32(len(slice10)) + result11 := witRuntime.Allocate(pinner, uintptr(length12*1), 1) + for index, element := range slice10 { + base := unsafe.Add(result11, index*1) + var result9 int32 + if element { + result9 = 1 + } else { + result9 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result9) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(length12) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(result11))) + + case DbValueInt4range: + payload := value.Int4range() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(28)) + + switch (payload).Start.Tag() { + case Int4boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = payload + + case Int4boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int4boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = payload + + case Int4boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueInt8range: + payload := value.Int8range() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(29)) + + switch (payload).Start.Tag() { + case Int8boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = payload + + case Int8boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int8boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 32)) = payload + + case Int8boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 32)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNumrange: + payload := value.Numrange() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(30)) + + switch (payload).Start.Tag() { + case NumboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uintptr(uintptr(utf813))) + + case NumboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + utf814 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uintptr(uintptr(utf814))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case NumboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4))) = int8(int32(0)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4))) = uint32(uintptr(uintptr(utf815))) + + case NumboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4))) = int8(int32(1)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4))) = uint32(uintptr(uintptr(utf816))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTsrange: + payload := value.Tsrange() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(31)) + + switch (payload).Start.Tag() { + case TsboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TsboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 28)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 28)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 28)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTstzrange: + payload := value.Tstzrange() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(32)) + + switch (payload).Start.Tag() { + case TstzboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 28)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 28)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TstzboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 32)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 52)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 32)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 52)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueDaterange: + payload := value.Daterange() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(33)) + + switch (payload).Start.Tag() { + case DateboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 17)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case DateboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 29)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 29)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 20)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueMoney: + payload := value.Money() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = payload + + case DbValueOid: + payload := value.Oid() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(35)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = int32(payload) + + case DbValueEnumeration: + payload := value.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(36)) + utf817 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf817))) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = uint32(uintptr(uintptr(utf818))) + + case DbValueComposite: + payload := value.Composite() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(37)) + utf819 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf819))) + slice20 := (payload).Values + length22 := uint32(len(slice20)) + result21 := witRuntime.Allocate(pinner, uintptr(length22*4), 4) + for index, element := range slice20 { + base := unsafe.Add(result21, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4))) = uint32(length22) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = uint32(uintptr(uintptr(result21))) + + case DbValueDomain: + payload := value.Domain() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(38)) + utf823 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf823))) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = ((payload).Value).TakeHandle() + + case DbValueArray: + payload := value.Array() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(39)) + slice24 := payload + length26 := uint32(len(slice24)) + result25 := witRuntime.Allocate(pinner, uintptr(length26*4), 4) + for index, element := range slice24 { + base := unsafe.Add(result25, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(length26) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(result25))) + + case DbValueRange: + payload := value.Range() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(40)) + utf827 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf827) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(utf827))) + + switch ((payload).Value).Start.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch ((payload).Value).End.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(41)) + + case DbValueVector: + payload := value.Vector() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(42)) + data28 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data28) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(data28))) + + case DbValueHalfvec: + payload := value.Halfvec() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(43)) + data29 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data29) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = uint32(uintptr(uintptr(data29))) + + case DbValueSparsevec: + payload := value.Sparsevec() + *(*int8)(unsafe.Add(unsafe.Pointer(returnArea), 0)) = int8(int32(44)) + *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)) = (payload).Dim + data30 := unsafe.Pointer(unsafe.SliceData((payload).Indices)) + pinner.Pin(data30) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))) = uint32(uint32(len((payload).Indices))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4))) = uint32(uintptr(uintptr(data30))) + data31 := unsafe.Pointer(unsafe.SliceData((payload).Values)) + pinner.Pin(data31) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4))) = uint32(uint32(len((payload).Values))) + *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4))) = uint32(uintptr(uintptr(data31))) + + default: + panic("unreachable") + } + result32 := wasm_import_constructor_lazy_db_value(returnArea) + return LazyDbValueFromOwnHandle(int32(uintptr(result32))) + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]lazy-db-value.get +func wasm_import_method_lazy_db_value_get(arg0 int32, arg1 uintptr) + +func (self *LazyDbValue) Get() DbValue { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 56, 8)) + wasm_import_method_lazy_db_value_get((self).Handle(), returnArea) + var variant39 DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + variant39 = MakeDbValueCharacter(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))) + + case 1: + + variant39 = MakeDbValueInt2(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))) + + case 2: + + variant39 = MakeDbValueInt4(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) + + case 3: + + variant39 = MakeDbValueInt8(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))) + + case 4: + + variant39 = MakeDbValueFloat4(*(*float32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) + + case 5: + + variant39 = MakeDbValueFloat8(*(*float64)(unsafe.Add(unsafe.Pointer(returnArea), 8))) + + case 6: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueNumeric(value) + + case 7: + + variant39 = MakeDbValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) != 0)) + + case 8: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueText(value0) + + case 9: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueVarchar(value1) + + case 10: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueBpchar(value2) + + case 11: + + variant39 = MakeDbValueTimestamp(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))}}) + + case 12: + + variant39 = MakeDbValueTimestamptz(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24))}) + + case 13: + + variant39 = MakeDbValueDate(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 13))))}) + + case 14: + + variant39 = MakeDbValueTime(golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))}) + + case 15: + + variant39 = MakeDbValueTimetz(golem_rdbms_types.Timetz{golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))}, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 16))}) + + case 16: + + variant39 = MakeDbValueInterval(Interval{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)), *(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16))}) + + case 17: + value3 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueBytea(value3) + + case 18: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueJson(value4) + + case 19: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueJsonb(value5) + + case 20: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueJsonpath(value6) + + case 21: + value7 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueXml(value7) + + case 22: + + variant39 = MakeDbValueUuid(golem_rdbms_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16)))}) + + case 23: + var variant golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 13))))}) + + case 1: + + variant = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 24))))}) + + default: + panic("unreachable") + } + + variant39 = MakeDbValueInet(variant) + + case 24: + var variant8 golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant8 = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 13))))}) + + case 1: + + variant8 = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 24))))}) + + default: + panic("unreachable") + } + + variant39 = MakeDbValueCidr(variant8) + + case 25: + + variant39 = MakeDbValueMacaddr(golem_rdbms_types.MacAddress{witTypes.Tuple6[uint8, uint8, uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 13))))}}) + + case 26: + result := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))), index*1) + + result = append(result, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant39 = MakeDbValueBit(result) + + case 27: + result9 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))), index*1) + + result9 = append(result9, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant39 = MakeDbValueVarbit(result9) + + case 28: + var variant10 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant10 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12))) + + case 1: + + variant10 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12))) + + case 2: + + variant10 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + var variant11 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + variant11 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20))) + + case 1: + + variant11 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20))) + + case 2: + + variant11 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueInt4range(Int4range{variant10, variant11}) + + case 29: + var variant12 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant12 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16))) + + case 1: + + variant12 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 16))) + + case 2: + + variant12 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + var variant13 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 24))) { + case 0: + + variant13 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 32))) + + case 1: + + variant13 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 32))) + + case 2: + + variant13 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueInt8range(Int8range{variant12, variant13}) + + case 30: + var variant16 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant16 = MakeNumboundIncluded(value14) + + case 1: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant16 = MakeNumboundExcluded(value15) + + case 2: + + variant16 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + var variant19 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))) { + case 0: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4)))) + + variant19 = MakeNumboundIncluded(value17) + + case 1: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 5*4)))) + + variant19 = MakeNumboundExcluded(value18) + + case 2: + + variant19 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueNumrange(Numrange{variant16, variant19}) + + case 31: + var variant20 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant20 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)))}}) + + case 1: + + variant20 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)))}}) + + case 2: + + variant20 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + var variant21 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 28))) { + case 0: + + variant21 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 44)))}}) + + case 1: + + variant21 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 44)))}}) + + case 2: + + variant21 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueTsrange(Tsrange{variant20, variant21}) + + case 32: + var variant22 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant22 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 28))}) + + case 1: + + variant22 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 28))}) + + case 2: + + variant22 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + var variant23 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 32))) { + case 0: + + variant23 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 52))}) + + case 1: + + variant23 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 52))}) + + case 2: + + variant23 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueTstzrange(Tstzrange{variant22, variant23}) + + case 33: + var variant24 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant24 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17))))}) + + case 1: + + variant24 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17))))}) + + case 2: + + variant24 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + var variant25 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 20))) { + case 0: + + variant25 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 29))))}) + + case 1: + + variant25 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 29))))}) + + case 2: + + variant25 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueDaterange(Daterange{variant24, variant25}) + + case 34: + + variant39 = MakeDbValueMoney(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8))) + + case 35: + + variant39 = MakeDbValueOid(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + + case 36: + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))) + + variant39 = MakeDbValueEnumeration(Enumeration{value26, value27}) + + case 37: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + result29 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))))), index*4) + + result29 = append(result29, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant39 = MakeDbValueComposite(Composite{value28, result29}) + + case 38: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueDomain(Domain{value30, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))))))}) + + case 39: + result31 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))), index*4) + + result31 = append(result31, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant39 = MakeDbValueArray(result31) + + case 40: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + var variant33 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) { + case 0: + + variant33 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (12 + 2*4))))))) + + case 1: + + variant33 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (12 + 2*4))))))) + + case 2: + + variant33 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + var variant34 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) { + case 0: + + variant34 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 2*4))))))) + + case 1: + + variant34 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 2*4))))))) + + case 2: + + variant34 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueRange(Range{value32, ValuesRange{variant33, variant34}}) + + case 41: + + variant39 = MakeDbValueNull() + + case 42: + value35 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueVector(value35) + + case 43: + value36 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + variant39 = MakeDbValueHalfvec(value36) + + case 44: + value37 := unsafe.Slice((*int32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + value38 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4)))) + + variant39 = MakeDbValueSparsevec(SparseVec{*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)), value37, value38}) + + default: + panic("unreachable") + } + result40 := variant39 + return result40 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [constructor]lazy-db-column-type +func wasm_import_constructor_lazy_db_column_type(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32) int32 + +func MakeLazyDbColumnType(value DbColumnType) *LazyDbColumnType { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + var variant int32 + var variant4 uintptr + var variant5 uint32 + var variant6 uintptr + var variant7 uint32 + switch value.Tag() { + case DbColumnTypeCharacter: + + variant = int32(0) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeInt2: + + variant = int32(1) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeInt4: + + variant = int32(2) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeInt8: + + variant = int32(3) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeFloat4: + + variant = int32(4) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeFloat8: + + variant = int32(5) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeNumeric: + + variant = int32(6) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeBoolean: + + variant = int32(7) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeText: + + variant = int32(8) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeVarchar: + + variant = int32(9) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeBpchar: + + variant = int32(10) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeTimestamp: + + variant = int32(11) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeTimestamptz: + + variant = int32(12) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeDate: + + variant = int32(13) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeTime: + + variant = int32(14) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeTimetz: + + variant = int32(15) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeInterval: + + variant = int32(16) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeBytea: + + variant = int32(17) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeUuid: + + variant = int32(18) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeXml: + + variant = int32(19) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeJson: + + variant = int32(20) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeJsonb: + + variant = int32(21) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeJsonpath: + + variant = int32(22) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeInet: + + variant = int32(23) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeCidr: + + variant = int32(24) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeMacaddr: + + variant = int32(25) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeBit: + + variant = int32(26) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeVarbit: + + variant = int32(27) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeInt4range: + + variant = int32(28) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeInt8range: + + variant = int32(29) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeNumrange: + + variant = int32(30) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeTsrange: + + variant = int32(31) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeTstzrange: + + variant = int32(32) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeDaterange: + + variant = int32(33) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeMoney: + + variant = int32(34) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeOid: + + variant = int32(35) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeEnumeration: + payload := value.Enumeration() + utf8 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf8) + + variant = int32(36) + variant4 = uintptr(utf8) + variant5 = uint32(len((payload).Name)) + variant6 = 0 + variant7 = 0 + + case DbColumnTypeComposite: + payload := value.Composite() + utf80 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf80) + slice := (payload).Attributes + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(3*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(3*4)) + utf81 := unsafe.Pointer(unsafe.StringData((element).F0)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).F0))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf81))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = ((element).F1).TakeHandle() + + } + + variant = int32(37) + variant4 = uintptr(utf80) + variant5 = uint32(len((payload).Name)) + variant6 = uintptr(result) + variant7 = length + + case DbColumnTypeDomain: + payload := value.Domain() + utf82 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf82) + + variant = int32(38) + variant4 = uintptr(utf82) + variant5 = uint32(len((payload).Name)) + variant6 = uintptr(((payload).BaseType).TakeHandle()) + variant7 = 0 + + case DbColumnTypeArray: + payload := value.Array() + + variant = int32(39) + variant4 = uintptr((payload).TakeHandle()) + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeRange: + payload := value.Range() + utf83 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf83) + + variant = int32(40) + variant4 = uintptr(utf83) + variant5 = uint32(len((payload).Name)) + variant6 = uintptr(((payload).BaseType).TakeHandle()) + variant7 = 0 + + case DbColumnTypeVector: + + variant = int32(41) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeHalfvec: + + variant = int32(42) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + case DbColumnTypeSparsevec: + + variant = int32(43) + variant4 = 0 + variant5 = 0 + variant6 = 0 + variant7 = 0 + + default: + panic("unreachable") + } + result8 := wasm_import_constructor_lazy_db_column_type(variant, variant4, variant5, variant6, variant7) + return LazyDbColumnTypeFromOwnHandle(int32(uintptr(result8))) + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]lazy-db-column-type.get +func wasm_import_method_lazy_db_column_type_get(arg0 int32, arg1 uintptr) + +func (self *LazyDbColumnType) Get() DbColumnType { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + wasm_import_method_lazy_db_column_type_get((self).Handle(), returnArea) + var variant DbColumnType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + variant = MakeDbColumnTypeCharacter() + + case 1: + + variant = MakeDbColumnTypeInt2() + + case 2: + + variant = MakeDbColumnTypeInt4() + + case 3: + + variant = MakeDbColumnTypeInt8() + + case 4: + + variant = MakeDbColumnTypeFloat4() + + case 5: + + variant = MakeDbColumnTypeFloat8() + + case 6: + + variant = MakeDbColumnTypeNumeric() + + case 7: + + variant = MakeDbColumnTypeBoolean() + + case 8: + + variant = MakeDbColumnTypeText() + + case 9: + + variant = MakeDbColumnTypeVarchar() + + case 10: + + variant = MakeDbColumnTypeBpchar() + + case 11: + + variant = MakeDbColumnTypeTimestamp() + + case 12: + + variant = MakeDbColumnTypeTimestamptz() + + case 13: + + variant = MakeDbColumnTypeDate() + + case 14: + + variant = MakeDbColumnTypeTime() + + case 15: + + variant = MakeDbColumnTypeTimetz() + + case 16: + + variant = MakeDbColumnTypeInterval() + + case 17: + + variant = MakeDbColumnTypeBytea() + + case 18: + + variant = MakeDbColumnTypeUuid() + + case 19: + + variant = MakeDbColumnTypeXml() + + case 20: + + variant = MakeDbColumnTypeJson() + + case 21: + + variant = MakeDbColumnTypeJsonb() + + case 22: + + variant = MakeDbColumnTypeJsonpath() + + case 23: + + variant = MakeDbColumnTypeInet() + + case 24: + + variant = MakeDbColumnTypeCidr() + + case 25: + + variant = MakeDbColumnTypeMacaddr() + + case 26: + + variant = MakeDbColumnTypeBit() + + case 27: + + variant = MakeDbColumnTypeVarbit() + + case 28: + + variant = MakeDbColumnTypeInt4range() + + case 29: + + variant = MakeDbColumnTypeInt8range() + + case 30: + + variant = MakeDbColumnTypeNumrange() + + case 31: + + variant = MakeDbColumnTypeTsrange() + + case 32: + + variant = MakeDbColumnTypeTstzrange() + + case 33: + + variant = MakeDbColumnTypeDaterange() + + case 34: + + variant = MakeDbColumnTypeMoney() + + case 35: + + variant = MakeDbColumnTypeOid() + + case 36: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + variant = MakeDbColumnTypeEnumeration(EnumerationType{value}) + + case 37: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + result := make([]witTypes.Tuple2[string, *LazyDbColumnType], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(3*4)) + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, witTypes.Tuple2[string, *LazyDbColumnType]{value1, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))))}) + } + + variant = MakeDbColumnTypeComposite(CompositeType{value0, result}) + + case 38: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + variant = MakeDbColumnTypeDomain(DomainType{value2, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))))}) + + case 39: + + variant = MakeDbColumnTypeArray(LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + + case 40: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + variant = MakeDbColumnTypeRange(RangeType{value3, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))))}) + + case 41: + + variant = MakeDbColumnTypeVector() + + case 42: + + variant = MakeDbColumnTypeHalfvec() + + case 43: + + variant = MakeDbColumnTypeSparsevec() + + default: + panic("unreachable") + } + result4 := variant + return result4 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-result-stream.get-columns +func wasm_import_method_db_result_stream_get_columns(arg0 int32, arg1 uintptr) + +func (self *DbResultStream) GetColumns() []DbColumn { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_db_result_stream_get_columns((self).Handle(), returnArea) + result6 := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(16+8*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant DbColumnType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant = MakeDbColumnTypeCharacter() + + case 1: + + variant = MakeDbColumnTypeInt2() + + case 2: + + variant = MakeDbColumnTypeInt4() + + case 3: + + variant = MakeDbColumnTypeInt8() + + case 4: + + variant = MakeDbColumnTypeFloat4() + + case 5: + + variant = MakeDbColumnTypeFloat8() + + case 6: + + variant = MakeDbColumnTypeNumeric() + + case 7: + + variant = MakeDbColumnTypeBoolean() + + case 8: + + variant = MakeDbColumnTypeText() + + case 9: + + variant = MakeDbColumnTypeVarchar() + + case 10: + + variant = MakeDbColumnTypeBpchar() + + case 11: + + variant = MakeDbColumnTypeTimestamp() + + case 12: + + variant = MakeDbColumnTypeTimestamptz() + + case 13: + + variant = MakeDbColumnTypeDate() + + case 14: + + variant = MakeDbColumnTypeTime() + + case 15: + + variant = MakeDbColumnTypeTimetz() + + case 16: + + variant = MakeDbColumnTypeInterval() + + case 17: + + variant = MakeDbColumnTypeBytea() + + case 18: + + variant = MakeDbColumnTypeUuid() + + case 19: + + variant = MakeDbColumnTypeXml() + + case 20: + + variant = MakeDbColumnTypeJson() + + case 21: + + variant = MakeDbColumnTypeJsonb() + + case 22: + + variant = MakeDbColumnTypeJsonpath() + + case 23: + + variant = MakeDbColumnTypeInet() + + case 24: + + variant = MakeDbColumnTypeCidr() + + case 25: + + variant = MakeDbColumnTypeMacaddr() + + case 26: + + variant = MakeDbColumnTypeBit() + + case 27: + + variant = MakeDbColumnTypeVarbit() + + case 28: + + variant = MakeDbColumnTypeInt4range() + + case 29: + + variant = MakeDbColumnTypeInt8range() + + case 30: + + variant = MakeDbColumnTypeNumrange() + + case 31: + + variant = MakeDbColumnTypeTsrange() + + case 32: + + variant = MakeDbColumnTypeTstzrange() + + case 33: + + variant = MakeDbColumnTypeDaterange() + + case 34: + + variant = MakeDbColumnTypeMoney() + + case 35: + + variant = MakeDbColumnTypeOid() + + case 36: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeEnumeration(EnumerationType{value0}) + + case 37: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + result := make([]witTypes.Tuple2[string, *LazyDbColumnType], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(3*4)) + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, witTypes.Tuple2[string, *LazyDbColumnType]{value2, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))))}) + } + + variant = MakeDbColumnTypeComposite(CompositeType{value1, result}) + + case 38: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeDomain(DomainType{value3, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))))}) + + case 39: + + variant = MakeDbColumnTypeArray(LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))))))) + + case 40: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeRange(RangeType{value4, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))))}) + + case 41: + + variant = MakeDbColumnTypeVector() + + case 42: + + variant = MakeDbColumnTypeHalfvec() + + case 43: + + variant = MakeDbColumnTypeSparsevec() + + default: + panic("unreachable") + } + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + + result6 = append(result6, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value, variant, value5}) + } + + result7 := result6 + return result7 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-result-stream.get-next +func wasm_import_method_db_result_stream_get_next(arg0 int32, arg1 uintptr) + +func (self *DbResultStream) GetNext() witTypes.Option[[]DbRow] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_db_result_stream_get_next((self).Handle(), returnArea) + var option witTypes.Option[[]DbRow] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[[]DbRow]() + case 1: + result41 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(2*4)) + result40 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*56) + var variant39 DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant39 = MakeDbValueCharacter(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 1: + + variant39 = MakeDbValueInt2(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant39 = MakeDbValueInt4(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 3: + + variant39 = MakeDbValueInt8(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant39 = MakeDbValueFloat4(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant39 = MakeDbValueFloat8(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueNumeric(value) + + case 7: + + variant39 = MakeDbValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 8: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueText(value0) + + case 9: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueVarchar(value1) + + case 10: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueBpchar(value2) + + case 11: + + variant39 = MakeDbValueTimestamp(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 12: + + variant39 = MakeDbValueTimestamptz(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 13: + + variant39 = MakeDbValueDate(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 14: + + variant39 = MakeDbValueTime(golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 15: + + variant39 = MakeDbValueTimetz(golem_rdbms_types.Timetz{golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 16: + + variant39 = MakeDbValueInterval(Interval{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), *(*int64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 17: + value3 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueBytea(value3) + + case 18: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueJson(value4) + + case 19: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueJsonb(value5) + + case 20: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueJsonpath(value6) + + case 21: + value7 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueXml(value7) + + case 22: + + variant39 = MakeDbValueUuid(golem_rdbms_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 23: + var variant golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 1: + + variant = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))}) + + default: + panic("unreachable") + } + + variant39 = MakeDbValueInet(variant) + + case 24: + var variant8 golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant8 = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 1: + + variant8 = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))}) + + default: + panic("unreachable") + } + + variant39 = MakeDbValueCidr(variant8) + + case 25: + + variant39 = MakeDbValueMacaddr(golem_rdbms_types.MacAddress{witTypes.Tuple6[uint8, uint8, uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}}) + + case 26: + result := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result = append(result, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant39 = MakeDbValueBit(result) + + case 27: + result9 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result9 = append(result9, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant39 = MakeDbValueVarbit(result9) + + case 28: + var variant10 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant10 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + + case 1: + + variant10 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + + case 2: + + variant10 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + var variant11 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + variant11 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + + case 1: + + variant11 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + + case 2: + + variant11 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueInt4range(Int4range{variant10, variant11}) + + case 29: + var variant12 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant12 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))) + + case 1: + + variant12 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))) + + case 2: + + variant12 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + var variant13 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant13 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant13 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 2: + + variant13 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueInt8range(Int8range{variant12, variant13}) + + case 30: + var variant16 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + value14 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + variant16 = MakeNumboundIncluded(value14) + + case 1: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + variant16 = MakeNumboundExcluded(value15) + + case 2: + + variant16 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + var variant19 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + + variant19 = MakeNumboundIncluded(value17) + + case 1: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + + variant19 = MakeNumboundExcluded(value18) + + case 2: + + variant19 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueNumrange(Numrange{variant16, variant19}) + + case 31: + var variant20 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant20 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 1: + + variant20 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 2: + + variant20 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + var variant21 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28))) { + case 0: + + variant21 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 44)))}}) + + case 1: + + variant21 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 44)))}}) + + case 2: + + variant21 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueTsrange(Tsrange{variant20, variant21}) + + case 32: + var variant22 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant22 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 28))}) + + case 1: + + variant22 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 28))}) + + case 2: + + variant22 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + var variant23 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + variant23 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 52))}) + + case 1: + + variant23 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 52))}) + + case 2: + + variant23 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueTstzrange(Tstzrange{variant22, variant23}) + + case 33: + var variant24 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant24 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}) + + case 1: + + variant24 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}) + + case 2: + + variant24 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + var variant25 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20))) { + case 0: + + variant25 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 29))))}) + + case 1: + + variant25 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 29))))}) + + case 2: + + variant25 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueDaterange(Daterange{variant24, variant25}) + + case 34: + + variant39 = MakeDbValueMoney(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 35: + + variant39 = MakeDbValueOid(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 36: + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant39 = MakeDbValueEnumeration(Enumeration{value26, value27}) + + case 37: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result29 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*4) + + result29 = append(result29, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant39 = MakeDbValueComposite(Composite{value28, result29}) + + case 38: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueDomain(Domain{value30, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))))}) + + case 39: + result31 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result31 = append(result31, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant39 = MakeDbValueArray(result31) + + case 40: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant33 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant33 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))))))) + + case 1: + + variant33 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))))))) + + case 2: + + variant33 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + var variant34 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) { + case 0: + + variant34 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))))))) + + case 1: + + variant34 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))))))) + + case 2: + + variant34 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + + variant39 = MakeDbValueRange(Range{value32, ValuesRange{variant33, variant34}}) + + case 41: + + variant39 = MakeDbValueNull() + + case 42: + value35 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueVector(value35) + + case 43: + value36 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant39 = MakeDbValueHalfvec(value36) + + case 44: + value37 := unsafe.Slice((*int32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + value38 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant39 = MakeDbValueSparsevec(SparseVec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), value37, value38}) + + default: + panic("unreachable") + } + + result40 = append(result40, variant39) + } + + result41 = append(result41, DbRow{result40}) + } + + option = witTypes.Some[[]DbRow](result41) + default: + panic("unreachable") + } + result42 := option + return result42 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [static]db-connection.open +func wasm_import_static_db_connection_open(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func DbConnectionOpen(address string) witTypes.Result[*DbConnection, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(address)) + pinner.Pin(utf8) + wasm_import_static_db_connection_open(uintptr(utf8), uint32(len(address)), returnArea) + var result witTypes.Result[*DbConnection, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*DbConnection, Error](DbConnectionFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[*DbConnection, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-connection.query +func wasm_import_method_db_connection_query(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) Query(statement string, params []DbValue) witTypes.Result[DbResult, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice33 := params + length35 := uint32(len(slice33)) + result34 := witRuntime.Allocate(pinner, uintptr(length35*56), 8) + for index, element := range slice33 { + base := unsafe.Add(result34, index*56) + + switch element.Tag() { + case DbValueCharacter: + payload := element.Character() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueInt2: + payload := element.Int2() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueInt4: + payload := element.Int4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt8: + payload := element.Int8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat4: + payload := element.Float4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat8: + payload := element.Float8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueNumeric: + payload := element.Numeric() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueBpchar: + payload := element.Bpchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamptz: + payload := element.Timestamptz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Offset + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueTimetz: + payload := element.Timetz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32(((payload).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Offset + + case DbValueInterval: + payload := element.Interval() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Months + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Days + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Microseconds + + case DbValueBytea: + payload := element.Bytea() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueJsonb: + payload := element.Jsonb() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueJsonpath: + payload := element.Jsonpath() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueXml: + payload := element.Xml() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf87))) + + case DbValueUuid: + payload := element.Uuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).LowBits) + + case DbValueInet: + payload := element.Inet() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueCidr: + payload := element.Cidr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueMacaddr: + payload := element.Macaddr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Octets).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Octets).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Octets).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32(((payload).Octets).F3)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Octets).F4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Octets).F5)) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + slice := payload + length := uint32(len(slice)) + result9 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result9, index*1) + var result8 int32 + if element { + result8 = 1 + } else { + result8 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result8) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result9))) + + case DbValueVarbit: + payload := element.Varbit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + slice11 := payload + length13 := uint32(len(slice11)) + result12 := witRuntime.Allocate(pinner, uintptr(length13*1), 1) + for index, element := range slice11 { + base := unsafe.Add(result12, index*1) + var result10 int32 + if element { + result10 = 1 + } else { + result10 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result10) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length13) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result12))) + + case DbValueInt4range: + payload := element.Int4range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + switch (payload).Start.Tag() { + case Int4boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int4boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueInt8range: + payload := element.Int8range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + switch (payload).Start.Tag() { + case Int8boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int8boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNumrange: + payload := element.Numrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + + switch (payload).Start.Tag() { + case NumboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + utf814 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf814))) + + case NumboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf815))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case NumboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf816))) + + case NumboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf817))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTsrange: + payload := element.Tsrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + + switch (payload).Start.Tag() { + case TsboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TsboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTstzrange: + payload := element.Tstzrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + + switch (payload).Start.Tag() { + case TstzboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TstzboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueDaterange: + payload := element.Daterange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).Start.Tag() { + case DateboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case DateboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueMoney: + payload := element.Money() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueOid: + payload := element.Oid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(36)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + utf819 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf819))) + + case DbValueComposite: + payload := element.Composite() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(37)) + utf820 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf820))) + slice21 := (payload).Values + length23 := uint32(len(slice21)) + result22 := witRuntime.Allocate(pinner, uintptr(length23*4), 4) + for index, element := range slice21 { + base := unsafe.Add(result22, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length23) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result22))) + + case DbValueDomain: + payload := element.Domain() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(38)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Value).TakeHandle() + + case DbValueArray: + payload := element.Array() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(39)) + slice25 := payload + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*4), 4) + for index, element := range slice25 { + base := unsafe.Add(result26, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length27) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result26))) + + case DbValueRange: + payload := element.Range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(40)) + utf828 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf828) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf828))) + + switch ((payload).Value).Start.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch ((payload).Value).End.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(41)) + + case DbValueVector: + payload := element.Vector() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(42)) + data29 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data29) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data29))) + + case DbValueHalfvec: + payload := element.Halfvec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(43)) + data30 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data30))) + + case DbValueSparsevec: + payload := element.Sparsevec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(44)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Dim + data31 := unsafe.Pointer(unsafe.SliceData((payload).Indices)) + pinner.Pin(data31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len((payload).Indices))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(data31))) + data32 := unsafe.Pointer(unsafe.SliceData((payload).Values)) + pinner.Pin(data32) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Values))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(data32))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_query((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result34), length35, returnArea) + var result95 witTypes.Result[DbResult, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result43 := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(16+8*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant DbColumnType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant = MakeDbColumnTypeCharacter() + + case 1: + + variant = MakeDbColumnTypeInt2() + + case 2: + + variant = MakeDbColumnTypeInt4() + + case 3: + + variant = MakeDbColumnTypeInt8() + + case 4: + + variant = MakeDbColumnTypeFloat4() + + case 5: + + variant = MakeDbColumnTypeFloat8() + + case 6: + + variant = MakeDbColumnTypeNumeric() + + case 7: + + variant = MakeDbColumnTypeBoolean() + + case 8: + + variant = MakeDbColumnTypeText() + + case 9: + + variant = MakeDbColumnTypeVarchar() + + case 10: + + variant = MakeDbColumnTypeBpchar() + + case 11: + + variant = MakeDbColumnTypeTimestamp() + + case 12: + + variant = MakeDbColumnTypeTimestamptz() + + case 13: + + variant = MakeDbColumnTypeDate() + + case 14: + + variant = MakeDbColumnTypeTime() + + case 15: + + variant = MakeDbColumnTypeTimetz() + + case 16: + + variant = MakeDbColumnTypeInterval() + + case 17: + + variant = MakeDbColumnTypeBytea() + + case 18: + + variant = MakeDbColumnTypeUuid() + + case 19: + + variant = MakeDbColumnTypeXml() + + case 20: + + variant = MakeDbColumnTypeJson() + + case 21: + + variant = MakeDbColumnTypeJsonb() + + case 22: + + variant = MakeDbColumnTypeJsonpath() + + case 23: + + variant = MakeDbColumnTypeInet() + + case 24: + + variant = MakeDbColumnTypeCidr() + + case 25: + + variant = MakeDbColumnTypeMacaddr() + + case 26: + + variant = MakeDbColumnTypeBit() + + case 27: + + variant = MakeDbColumnTypeVarbit() + + case 28: + + variant = MakeDbColumnTypeInt4range() + + case 29: + + variant = MakeDbColumnTypeInt8range() + + case 30: + + variant = MakeDbColumnTypeNumrange() + + case 31: + + variant = MakeDbColumnTypeTsrange() + + case 32: + + variant = MakeDbColumnTypeTstzrange() + + case 33: + + variant = MakeDbColumnTypeDaterange() + + case 34: + + variant = MakeDbColumnTypeMoney() + + case 35: + + variant = MakeDbColumnTypeOid() + + case 36: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeEnumeration(EnumerationType{value36}) + + case 37: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + result39 := make([]witTypes.Tuple2[string, *LazyDbColumnType], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(3*4)) + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result39 = append(result39, witTypes.Tuple2[string, *LazyDbColumnType]{value38, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))))}) + } + + variant = MakeDbColumnTypeComposite(CompositeType{value37, result39}) + + case 38: + value40 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeDomain(DomainType{value40, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))))}) + + case 39: + + variant = MakeDbColumnTypeArray(LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))))))) + + case 40: + value41 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeRange(RangeType{value41, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))))}) + + case 41: + + variant = MakeDbColumnTypeVector() + + case 42: + + variant = MakeDbColumnTypeHalfvec() + + case 43: + + variant = MakeDbColumnTypeSparsevec() + + default: + panic("unreachable") + } + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + + result43 = append(result43, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value, variant, value42}) + } + + result88 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(2*4)) + result87 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*56) + var variant86 DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant86 = MakeDbValueCharacter(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 1: + + variant86 = MakeDbValueInt2(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant86 = MakeDbValueInt4(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 3: + + variant86 = MakeDbValueInt8(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant86 = MakeDbValueFloat4(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant86 = MakeDbValueFloat8(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueNumeric(value44) + + case 7: + + variant86 = MakeDbValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 8: + value45 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueText(value45) + + case 9: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueVarchar(value46) + + case 10: + value47 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueBpchar(value47) + + case 11: + + variant86 = MakeDbValueTimestamp(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 12: + + variant86 = MakeDbValueTimestamptz(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 13: + + variant86 = MakeDbValueDate(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 14: + + variant86 = MakeDbValueTime(golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 15: + + variant86 = MakeDbValueTimetz(golem_rdbms_types.Timetz{golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 16: + + variant86 = MakeDbValueInterval(Interval{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), *(*int64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 17: + value48 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueBytea(value48) + + case 18: + value49 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueJson(value49) + + case 19: + value50 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueJsonb(value50) + + case 20: + value51 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueJsonpath(value51) + + case 21: + value52 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueXml(value52) + + case 22: + + variant86 = MakeDbValueUuid(golem_rdbms_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 23: + var variant53 golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant53 = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 1: + + variant53 = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))}) + + default: + panic("unreachable") + } + + variant86 = MakeDbValueInet(variant53) + + case 24: + var variant54 golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant54 = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 1: + + variant54 = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))}) + + default: + panic("unreachable") + } + + variant86 = MakeDbValueCidr(variant54) + + case 25: + + variant86 = MakeDbValueMacaddr(golem_rdbms_types.MacAddress{witTypes.Tuple6[uint8, uint8, uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}}) + + case 26: + result55 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result55 = append(result55, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant86 = MakeDbValueBit(result55) + + case 27: + result56 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result56 = append(result56, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant86 = MakeDbValueVarbit(result56) + + case 28: + var variant57 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant57 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + + case 1: + + variant57 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + + case 2: + + variant57 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + var variant58 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + variant58 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + + case 1: + + variant58 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + + case 2: + + variant58 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueInt4range(Int4range{variant57, variant58}) + + case 29: + var variant59 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant59 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))) + + case 1: + + variant59 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))) + + case 2: + + variant59 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + var variant60 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant60 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant60 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 2: + + variant60 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueInt8range(Int8range{variant59, variant60}) + + case 30: + var variant63 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + value61 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + variant63 = MakeNumboundIncluded(value61) + + case 1: + value62 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + variant63 = MakeNumboundExcluded(value62) + + case 2: + + variant63 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + var variant66 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + value64 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + + variant66 = MakeNumboundIncluded(value64) + + case 1: + value65 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + + variant66 = MakeNumboundExcluded(value65) + + case 2: + + variant66 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueNumrange(Numrange{variant63, variant66}) + + case 31: + var variant67 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant67 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 1: + + variant67 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 2: + + variant67 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + var variant68 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28))) { + case 0: + + variant68 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 44)))}}) + + case 1: + + variant68 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 44)))}}) + + case 2: + + variant68 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueTsrange(Tsrange{variant67, variant68}) + + case 32: + var variant69 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant69 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 28))}) + + case 1: + + variant69 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 28))}) + + case 2: + + variant69 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + var variant70 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + variant70 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 52))}) + + case 1: + + variant70 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 52))}) + + case 2: + + variant70 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueTstzrange(Tstzrange{variant69, variant70}) + + case 33: + var variant71 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant71 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}) + + case 1: + + variant71 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}) + + case 2: + + variant71 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + var variant72 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20))) { + case 0: + + variant72 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 29))))}) + + case 1: + + variant72 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 29))))}) + + case 2: + + variant72 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueDaterange(Daterange{variant71, variant72}) + + case 34: + + variant86 = MakeDbValueMoney(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 35: + + variant86 = MakeDbValueOid(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 36: + value73 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value74 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant86 = MakeDbValueEnumeration(Enumeration{value73, value74}) + + case 37: + value75 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result76 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*4) + + result76 = append(result76, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant86 = MakeDbValueComposite(Composite{value75, result76}) + + case 38: + value77 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueDomain(Domain{value77, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))))}) + + case 39: + result78 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result78 = append(result78, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant86 = MakeDbValueArray(result78) + + case 40: + value79 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant80 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant80 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))))))) + + case 1: + + variant80 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))))))) + + case 2: + + variant80 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + var variant81 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) { + case 0: + + variant81 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))))))) + + case 1: + + variant81 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))))))) + + case 2: + + variant81 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueRange(Range{value79, ValuesRange{variant80, variant81}}) + + case 41: + + variant86 = MakeDbValueNull() + + case 42: + value82 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueVector(value82) + + case 43: + value83 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueHalfvec(value83) + + case 44: + value84 := unsafe.Slice((*int32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + value85 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant86 = MakeDbValueSparsevec(SparseVec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), value84, value85}) + + default: + panic("unreachable") + } + + result87 = append(result87, variant86) + } + + result88 = append(result88, DbRow{result87}) + } + + result95 = witTypes.Ok[DbResult, Error](DbResult{result43, result88}) + case 1: + var variant94 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value89 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorConnectionFailure(value89) + + case 1: + value90 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorQueryParameterFailure(value90) + + case 2: + value91 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorQueryExecutionFailure(value91) + + case 3: + value92 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorQueryResponseFailure(value92) + + case 4: + value93 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorOther(value93) + + default: + panic("unreachable") + } + + result95 = witTypes.Err[DbResult, Error](variant94) + default: + panic("unreachable") + } + result96 := result95 + return result96 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-connection.query-stream +func wasm_import_method_db_connection_query_stream(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) QueryStream(statement string, params []DbValue) witTypes.Result[*DbResultStream, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice33 := params + length35 := uint32(len(slice33)) + result34 := witRuntime.Allocate(pinner, uintptr(length35*56), 8) + for index, element := range slice33 { + base := unsafe.Add(result34, index*56) + + switch element.Tag() { + case DbValueCharacter: + payload := element.Character() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueInt2: + payload := element.Int2() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueInt4: + payload := element.Int4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt8: + payload := element.Int8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat4: + payload := element.Float4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat8: + payload := element.Float8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueNumeric: + payload := element.Numeric() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueBpchar: + payload := element.Bpchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamptz: + payload := element.Timestamptz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Offset + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueTimetz: + payload := element.Timetz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32(((payload).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Offset + + case DbValueInterval: + payload := element.Interval() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Months + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Days + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Microseconds + + case DbValueBytea: + payload := element.Bytea() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueJsonb: + payload := element.Jsonb() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueJsonpath: + payload := element.Jsonpath() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueXml: + payload := element.Xml() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf87))) + + case DbValueUuid: + payload := element.Uuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).LowBits) + + case DbValueInet: + payload := element.Inet() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueCidr: + payload := element.Cidr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueMacaddr: + payload := element.Macaddr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Octets).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Octets).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Octets).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32(((payload).Octets).F3)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Octets).F4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Octets).F5)) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + slice := payload + length := uint32(len(slice)) + result9 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result9, index*1) + var result8 int32 + if element { + result8 = 1 + } else { + result8 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result8) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result9))) + + case DbValueVarbit: + payload := element.Varbit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + slice11 := payload + length13 := uint32(len(slice11)) + result12 := witRuntime.Allocate(pinner, uintptr(length13*1), 1) + for index, element := range slice11 { + base := unsafe.Add(result12, index*1) + var result10 int32 + if element { + result10 = 1 + } else { + result10 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result10) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length13) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result12))) + + case DbValueInt4range: + payload := element.Int4range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + switch (payload).Start.Tag() { + case Int4boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int4boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueInt8range: + payload := element.Int8range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + switch (payload).Start.Tag() { + case Int8boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int8boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNumrange: + payload := element.Numrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + + switch (payload).Start.Tag() { + case NumboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + utf814 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf814))) + + case NumboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf815))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case NumboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf816))) + + case NumboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf817))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTsrange: + payload := element.Tsrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + + switch (payload).Start.Tag() { + case TsboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TsboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTstzrange: + payload := element.Tstzrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + + switch (payload).Start.Tag() { + case TstzboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TstzboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueDaterange: + payload := element.Daterange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).Start.Tag() { + case DateboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case DateboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueMoney: + payload := element.Money() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueOid: + payload := element.Oid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(36)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + utf819 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf819))) + + case DbValueComposite: + payload := element.Composite() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(37)) + utf820 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf820))) + slice21 := (payload).Values + length23 := uint32(len(slice21)) + result22 := witRuntime.Allocate(pinner, uintptr(length23*4), 4) + for index, element := range slice21 { + base := unsafe.Add(result22, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length23) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result22))) + + case DbValueDomain: + payload := element.Domain() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(38)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Value).TakeHandle() + + case DbValueArray: + payload := element.Array() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(39)) + slice25 := payload + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*4), 4) + for index, element := range slice25 { + base := unsafe.Add(result26, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length27) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result26))) + + case DbValueRange: + payload := element.Range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(40)) + utf828 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf828) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf828))) + + switch ((payload).Value).Start.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch ((payload).Value).End.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(41)) + + case DbValueVector: + payload := element.Vector() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(42)) + data29 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data29) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data29))) + + case DbValueHalfvec: + payload := element.Halfvec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(43)) + data30 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data30))) + + case DbValueSparsevec: + payload := element.Sparsevec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(44)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Dim + data31 := unsafe.Pointer(unsafe.SliceData((payload).Indices)) + pinner.Pin(data31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len((payload).Indices))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(data31))) + data32 := unsafe.Pointer(unsafe.SliceData((payload).Values)) + pinner.Pin(data32) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Values))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(data32))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_query_stream((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result34), length35, returnArea) + var result40 witTypes.Result[*DbResultStream, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result40 = witTypes.Ok[*DbResultStream, Error](DbResultStreamFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value36) + + case 2: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value37) + + case 3: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value38) + + case 4: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value39) + + default: + panic("unreachable") + } + + result40 = witTypes.Err[*DbResultStream, Error](variant) + default: + panic("unreachable") + } + result41 := result40 + return result41 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-connection.execute +func wasm_import_method_db_connection_execute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbConnection) Execute(statement string, params []DbValue) witTypes.Result[uint64, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (16 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice33 := params + length35 := uint32(len(slice33)) + result34 := witRuntime.Allocate(pinner, uintptr(length35*56), 8) + for index, element := range slice33 { + base := unsafe.Add(result34, index*56) + + switch element.Tag() { + case DbValueCharacter: + payload := element.Character() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueInt2: + payload := element.Int2() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueInt4: + payload := element.Int4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt8: + payload := element.Int8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat4: + payload := element.Float4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat8: + payload := element.Float8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueNumeric: + payload := element.Numeric() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueBpchar: + payload := element.Bpchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamptz: + payload := element.Timestamptz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Offset + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueTimetz: + payload := element.Timetz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32(((payload).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Offset + + case DbValueInterval: + payload := element.Interval() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Months + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Days + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Microseconds + + case DbValueBytea: + payload := element.Bytea() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueJsonb: + payload := element.Jsonb() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueJsonpath: + payload := element.Jsonpath() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueXml: + payload := element.Xml() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf87))) + + case DbValueUuid: + payload := element.Uuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).LowBits) + + case DbValueInet: + payload := element.Inet() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueCidr: + payload := element.Cidr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueMacaddr: + payload := element.Macaddr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Octets).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Octets).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Octets).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32(((payload).Octets).F3)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Octets).F4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Octets).F5)) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + slice := payload + length := uint32(len(slice)) + result9 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result9, index*1) + var result8 int32 + if element { + result8 = 1 + } else { + result8 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result8) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result9))) + + case DbValueVarbit: + payload := element.Varbit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + slice11 := payload + length13 := uint32(len(slice11)) + result12 := witRuntime.Allocate(pinner, uintptr(length13*1), 1) + for index, element := range slice11 { + base := unsafe.Add(result12, index*1) + var result10 int32 + if element { + result10 = 1 + } else { + result10 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result10) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length13) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result12))) + + case DbValueInt4range: + payload := element.Int4range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + switch (payload).Start.Tag() { + case Int4boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int4boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueInt8range: + payload := element.Int8range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + switch (payload).Start.Tag() { + case Int8boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int8boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNumrange: + payload := element.Numrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + + switch (payload).Start.Tag() { + case NumboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + utf814 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf814))) + + case NumboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf815))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case NumboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf816))) + + case NumboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf817))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTsrange: + payload := element.Tsrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + + switch (payload).Start.Tag() { + case TsboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TsboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTstzrange: + payload := element.Tstzrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + + switch (payload).Start.Tag() { + case TstzboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TstzboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueDaterange: + payload := element.Daterange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).Start.Tag() { + case DateboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case DateboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueMoney: + payload := element.Money() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueOid: + payload := element.Oid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(36)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + utf819 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf819))) + + case DbValueComposite: + payload := element.Composite() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(37)) + utf820 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf820))) + slice21 := (payload).Values + length23 := uint32(len(slice21)) + result22 := witRuntime.Allocate(pinner, uintptr(length23*4), 4) + for index, element := range slice21 { + base := unsafe.Add(result22, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length23) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result22))) + + case DbValueDomain: + payload := element.Domain() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(38)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Value).TakeHandle() + + case DbValueArray: + payload := element.Array() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(39)) + slice25 := payload + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*4), 4) + for index, element := range slice25 { + base := unsafe.Add(result26, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length27) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result26))) + + case DbValueRange: + payload := element.Range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(40)) + utf828 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf828) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf828))) + + switch ((payload).Value).Start.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch ((payload).Value).End.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(41)) + + case DbValueVector: + payload := element.Vector() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(42)) + data29 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data29) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data29))) + + case DbValueHalfvec: + payload := element.Halfvec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(43)) + data30 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data30))) + + case DbValueSparsevec: + payload := element.Sparsevec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(44)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Dim + data31 := unsafe.Pointer(unsafe.SliceData((payload).Indices)) + pinner.Pin(data31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len((payload).Indices))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(data31))) + data32 := unsafe.Pointer(unsafe.SliceData((payload).Values)) + pinner.Pin(data32) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Values))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(data32))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_connection_execute((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result34), length35, returnArea) + var result40 witTypes.Result[uint64, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result40 = witTypes.Ok[uint64, Error](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryParameterFailure(value36) + + case 2: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryExecutionFailure(value37) + + case 3: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryResponseFailure(value38) + + case 4: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorOther(value39) + + default: + panic("unreachable") + } + + result40 = witTypes.Err[uint64, Error](variant) + default: + panic("unreachable") + } + result41 := result40 + return result41 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-connection.begin-transaction +func wasm_import_method_db_connection_begin_transaction(arg0 int32, arg1 uintptr) + +func (self *DbConnection) BeginTransaction() witTypes.Result[*DbTransaction, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_connection_begin_transaction((self).Handle(), returnArea) + var result witTypes.Result[*DbTransaction, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*DbTransaction, Error](DbTransactionFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[*DbTransaction, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-transaction.query +func wasm_import_method_db_transaction_query(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) Query(statement string, params []DbValue) witTypes.Result[DbResult, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice33 := params + length35 := uint32(len(slice33)) + result34 := witRuntime.Allocate(pinner, uintptr(length35*56), 8) + for index, element := range slice33 { + base := unsafe.Add(result34, index*56) + + switch element.Tag() { + case DbValueCharacter: + payload := element.Character() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueInt2: + payload := element.Int2() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueInt4: + payload := element.Int4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt8: + payload := element.Int8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat4: + payload := element.Float4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat8: + payload := element.Float8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueNumeric: + payload := element.Numeric() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueBpchar: + payload := element.Bpchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamptz: + payload := element.Timestamptz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Offset + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueTimetz: + payload := element.Timetz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32(((payload).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Offset + + case DbValueInterval: + payload := element.Interval() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Months + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Days + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Microseconds + + case DbValueBytea: + payload := element.Bytea() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueJsonb: + payload := element.Jsonb() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueJsonpath: + payload := element.Jsonpath() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueXml: + payload := element.Xml() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf87))) + + case DbValueUuid: + payload := element.Uuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).LowBits) + + case DbValueInet: + payload := element.Inet() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueCidr: + payload := element.Cidr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueMacaddr: + payload := element.Macaddr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Octets).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Octets).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Octets).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32(((payload).Octets).F3)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Octets).F4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Octets).F5)) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + slice := payload + length := uint32(len(slice)) + result9 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result9, index*1) + var result8 int32 + if element { + result8 = 1 + } else { + result8 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result8) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result9))) + + case DbValueVarbit: + payload := element.Varbit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + slice11 := payload + length13 := uint32(len(slice11)) + result12 := witRuntime.Allocate(pinner, uintptr(length13*1), 1) + for index, element := range slice11 { + base := unsafe.Add(result12, index*1) + var result10 int32 + if element { + result10 = 1 + } else { + result10 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result10) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length13) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result12))) + + case DbValueInt4range: + payload := element.Int4range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + switch (payload).Start.Tag() { + case Int4boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int4boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueInt8range: + payload := element.Int8range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + switch (payload).Start.Tag() { + case Int8boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int8boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNumrange: + payload := element.Numrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + + switch (payload).Start.Tag() { + case NumboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + utf814 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf814))) + + case NumboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf815))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case NumboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf816))) + + case NumboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf817))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTsrange: + payload := element.Tsrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + + switch (payload).Start.Tag() { + case TsboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TsboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTstzrange: + payload := element.Tstzrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + + switch (payload).Start.Tag() { + case TstzboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TstzboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueDaterange: + payload := element.Daterange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).Start.Tag() { + case DateboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case DateboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueMoney: + payload := element.Money() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueOid: + payload := element.Oid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(36)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + utf819 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf819))) + + case DbValueComposite: + payload := element.Composite() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(37)) + utf820 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf820))) + slice21 := (payload).Values + length23 := uint32(len(slice21)) + result22 := witRuntime.Allocate(pinner, uintptr(length23*4), 4) + for index, element := range slice21 { + base := unsafe.Add(result22, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length23) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result22))) + + case DbValueDomain: + payload := element.Domain() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(38)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Value).TakeHandle() + + case DbValueArray: + payload := element.Array() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(39)) + slice25 := payload + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*4), 4) + for index, element := range slice25 { + base := unsafe.Add(result26, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length27) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result26))) + + case DbValueRange: + payload := element.Range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(40)) + utf828 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf828) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf828))) + + switch ((payload).Value).Start.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch ((payload).Value).End.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(41)) + + case DbValueVector: + payload := element.Vector() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(42)) + data29 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data29) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data29))) + + case DbValueHalfvec: + payload := element.Halfvec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(43)) + data30 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data30))) + + case DbValueSparsevec: + payload := element.Sparsevec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(44)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Dim + data31 := unsafe.Pointer(unsafe.SliceData((payload).Indices)) + pinner.Pin(data31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len((payload).Indices))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(data31))) + data32 := unsafe.Pointer(unsafe.SliceData((payload).Values)) + pinner.Pin(data32) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Values))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(data32))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_query((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result34), length35, returnArea) + var result95 witTypes.Result[DbResult, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result43 := make([]DbColumn, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(16+8*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant DbColumnType + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant = MakeDbColumnTypeCharacter() + + case 1: + + variant = MakeDbColumnTypeInt2() + + case 2: + + variant = MakeDbColumnTypeInt4() + + case 3: + + variant = MakeDbColumnTypeInt8() + + case 4: + + variant = MakeDbColumnTypeFloat4() + + case 5: + + variant = MakeDbColumnTypeFloat8() + + case 6: + + variant = MakeDbColumnTypeNumeric() + + case 7: + + variant = MakeDbColumnTypeBoolean() + + case 8: + + variant = MakeDbColumnTypeText() + + case 9: + + variant = MakeDbColumnTypeVarchar() + + case 10: + + variant = MakeDbColumnTypeBpchar() + + case 11: + + variant = MakeDbColumnTypeTimestamp() + + case 12: + + variant = MakeDbColumnTypeTimestamptz() + + case 13: + + variant = MakeDbColumnTypeDate() + + case 14: + + variant = MakeDbColumnTypeTime() + + case 15: + + variant = MakeDbColumnTypeTimetz() + + case 16: + + variant = MakeDbColumnTypeInterval() + + case 17: + + variant = MakeDbColumnTypeBytea() + + case 18: + + variant = MakeDbColumnTypeUuid() + + case 19: + + variant = MakeDbColumnTypeXml() + + case 20: + + variant = MakeDbColumnTypeJson() + + case 21: + + variant = MakeDbColumnTypeJsonb() + + case 22: + + variant = MakeDbColumnTypeJsonpath() + + case 23: + + variant = MakeDbColumnTypeInet() + + case 24: + + variant = MakeDbColumnTypeCidr() + + case 25: + + variant = MakeDbColumnTypeMacaddr() + + case 26: + + variant = MakeDbColumnTypeBit() + + case 27: + + variant = MakeDbColumnTypeVarbit() + + case 28: + + variant = MakeDbColumnTypeInt4range() + + case 29: + + variant = MakeDbColumnTypeInt8range() + + case 30: + + variant = MakeDbColumnTypeNumrange() + + case 31: + + variant = MakeDbColumnTypeTsrange() + + case 32: + + variant = MakeDbColumnTypeTstzrange() + + case 33: + + variant = MakeDbColumnTypeDaterange() + + case 34: + + variant = MakeDbColumnTypeMoney() + + case 35: + + variant = MakeDbColumnTypeOid() + + case 36: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeEnumeration(EnumerationType{value36}) + + case 37: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + result39 := make([]witTypes.Tuple2[string, *LazyDbColumnType], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))), index*(3*4)) + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result39 = append(result39, witTypes.Tuple2[string, *LazyDbColumnType]{value38, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))))))}) + } + + variant = MakeDbColumnTypeComposite(CompositeType{value37, result39}) + + case 38: + value40 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeDomain(DomainType{value40, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))))}) + + case 39: + + variant = MakeDbColumnTypeArray(LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))))))) + + case 40: + value41 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant = MakeDbColumnTypeRange(RangeType{value41, LazyDbColumnTypeFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))))))}) + + case 41: + + variant = MakeDbColumnTypeVector() + + case 42: + + variant = MakeDbColumnTypeHalfvec() + + case 43: + + variant = MakeDbColumnTypeSparsevec() + + default: + panic("unreachable") + } + value42 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4)))) + + result43 = append(result43, DbColumn{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 0))), value, variant, value42}) + } + + result88 := make([]DbRow, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), index*(2*4)) + result87 := make([]DbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)))), index*56) + var variant86 DbValue + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant86 = MakeDbValueCharacter(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 1: + + variant86 = MakeDbValueInt2(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant86 = MakeDbValueInt4(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 3: + + variant86 = MakeDbValueInt8(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant86 = MakeDbValueFloat4(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant86 = MakeDbValueFloat8(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 6: + value44 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueNumeric(value44) + + case 7: + + variant86 = MakeDbValueBoolean((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 8: + value45 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueText(value45) + + case 9: + value46 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueVarchar(value46) + + case 10: + value47 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueBpchar(value47) + + case 11: + + variant86 = MakeDbValueTimestamp(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}) + + case 12: + + variant86 = MakeDbValueTimestamptz(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 24))}) + + case 13: + + variant86 = MakeDbValueDate(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 14: + + variant86 = MakeDbValueTime(golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}) + + case 15: + + variant86 = MakeDbValueTimetz(golem_rdbms_types.Timetz{golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)))}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 16: + + variant86 = MakeDbValueInterval(Interval{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), *(*int64)(unsafe.Add(unsafe.Pointer(base), 16))}) + + case 17: + value48 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueBytea(value48) + + case 18: + value49 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueJson(value49) + + case 19: + value50 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueJsonb(value50) + + case 20: + value51 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueJsonpath(value51) + + case 21: + value52 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueXml(value52) + + case 22: + + variant86 = MakeDbValueUuid(golem_rdbms_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 23: + var variant53 golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant53 = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 1: + + variant53 = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))}) + + default: + panic("unreachable") + } + + variant86 = MakeDbValueInet(variant53) + + case 24: + var variant54 golem_rdbms_types.IpAddress + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant54 = golem_rdbms_types.MakeIpAddressIpv4(witTypes.Tuple4[uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}) + + case 1: + + variant54 = golem_rdbms_types.MakeIpAddressIpv6(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 14)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 18)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))))}) + + default: + panic("unreachable") + } + + variant86 = MakeDbValueCidr(variant54) + + case 25: + + variant86 = MakeDbValueMacaddr(golem_rdbms_types.MacAddress{witTypes.Tuple6[uint8, uint8, uint8, uint8, uint8, uint8]{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 9)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 10)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 11)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 13))))}}) + + case 26: + result55 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result55 = append(result55, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant86 = MakeDbValueBit(result55) + + case 27: + result56 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result56 = append(result56, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant86 = MakeDbValueVarbit(result56) + + case 28: + var variant57 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant57 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + + case 1: + + variant57 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + + case 2: + + variant57 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + var variant58 Int4bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16))) { + case 0: + + variant58 = MakeInt4boundIncluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + + case 1: + + variant58 = MakeInt4boundExcluded(*(*int32)(unsafe.Add(unsafe.Pointer(base), 20))) + + case 2: + + variant58 = MakeInt4boundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueInt4range(Int4range{variant57, variant58}) + + case 29: + var variant59 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant59 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))) + + case 1: + + variant59 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 16))) + + case 2: + + variant59 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + var variant60 Int8bound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 24))) { + case 0: + + variant60 = MakeInt8boundIncluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 1: + + variant60 = MakeInt8boundExcluded(*(*int64)(unsafe.Add(unsafe.Pointer(base), 32))) + + case 2: + + variant60 = MakeInt8boundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueInt8range(Int8range{variant59, variant60}) + + case 30: + var variant63 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + value61 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + variant63 = MakeNumboundIncluded(value61) + + case 1: + value62 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + + variant63 = MakeNumboundExcluded(value62) + + case 2: + + variant63 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + var variant66 Numbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) { + case 0: + value64 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + + variant66 = MakeNumboundIncluded(value64) + + case 1: + value65 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4)))) + + variant66 = MakeNumboundExcluded(value65) + + case 2: + + variant66 = MakeNumboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueNumrange(Numrange{variant63, variant66}) + + case 31: + var variant67 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant67 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 1: + + variant67 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}) + + case 2: + + variant67 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + var variant68 Tsbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28))) { + case 0: + + variant68 = MakeTsboundIncluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 44)))}}) + + case 1: + + variant68 = MakeTsboundExcluded(golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 32)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 36)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 37))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 42)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 44)))}}) + + case 2: + + variant68 = MakeTsboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueTsrange(Tsrange{variant67, variant68}) + + case 32: + var variant69 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant69 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 28))}) + + case 1: + + variant69 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 21)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 22)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 28))}) + + case 2: + + variant69 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + var variant70 Tstzbound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 32))) { + case 0: + + variant70 = MakeTstzboundIncluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 52))}) + + case 1: + + variant70 = MakeTstzboundExcluded(golem_rdbms_types.Timestamptz{golem_rdbms_types.Timestamp{golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 36)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 40)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 41))))}, golem_rdbms_types.Time{uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 44)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 45)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 46)))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 48)))}}, *(*int32)(unsafe.Add(unsafe.Pointer(base), 52))}) + + case 2: + + variant70 = MakeTstzboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueTstzrange(Tstzrange{variant69, variant70}) + + case 33: + var variant71 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + variant71 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}) + + case 1: + + variant71 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 12)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 16)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 17))))}) + + case 2: + + variant71 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + var variant72 Datebound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 20))) { + case 0: + + variant72 = MakeDateboundIncluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 29))))}) + + case 1: + + variant72 = MakeDateboundExcluded(golem_rdbms_types.Date{*(*int32)(unsafe.Add(unsafe.Pointer(base), 24)), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 28)))), uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 29))))}) + + case 2: + + variant72 = MakeDateboundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueDaterange(Daterange{variant71, variant72}) + + case 34: + + variant86 = MakeDbValueMoney(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 35: + + variant86 = MakeDbValueOid(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 36: + value73 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + value74 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + + variant86 = MakeDbValueEnumeration(Enumeration{value73, value74}) + + case 37: + value75 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + result76 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))), index*4) + + result76 = append(result76, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant86 = MakeDbValueComposite(Composite{value75, result76}) + + case 38: + value77 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueDomain(Domain{value77, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))))))}) + + case 39: + result78 := make([]*LazyDbValue, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result78 = append(result78, LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)))))) + } + + variant86 = MakeDbValueArray(result78) + + case 40: + value79 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var variant80 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + variant80 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))))))) + + case 1: + + variant80 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))))))) + + case 2: + + variant80 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + var variant81 ValueBound + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) { + case 0: + + variant81 = MakeValueBoundIncluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))))))) + + case 1: + + variant81 = MakeValueBoundExcluded(LazyDbValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))))))) + + case 2: + + variant81 = MakeValueBoundUnbounded() + + default: + panic("unreachable") + } + + variant86 = MakeDbValueRange(Range{value79, ValuesRange{variant80, variant81}}) + + case 41: + + variant86 = MakeDbValueNull() + + case 42: + value82 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueVector(value82) + + case 43: + value83 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant86 = MakeDbValueHalfvec(value83) + + case 44: + value84 := unsafe.Slice((*int32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) + value85 := unsafe.Slice((*float32)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + variant86 = MakeDbValueSparsevec(SparseVec{*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)), value84, value85}) + + default: + panic("unreachable") + } + + result87 = append(result87, variant86) + } + + result88 = append(result88, DbRow{result87}) + } + + result95 = witTypes.Ok[DbResult, Error](DbResult{result43, result88}) + case 1: + var variant94 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value89 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorConnectionFailure(value89) + + case 1: + value90 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorQueryParameterFailure(value90) + + case 2: + value91 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorQueryExecutionFailure(value91) + + case 3: + value92 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorQueryResponseFailure(value92) + + case 4: + value93 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant94 = MakeErrorOther(value93) + + default: + panic("unreachable") + } + + result95 = witTypes.Err[DbResult, Error](variant94) + default: + panic("unreachable") + } + result96 := result95 + return result96 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-transaction.query-stream +func wasm_import_method_db_transaction_query_stream(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) QueryStream(statement string, params []DbValue) witTypes.Result[*DbResultStream, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice33 := params + length35 := uint32(len(slice33)) + result34 := witRuntime.Allocate(pinner, uintptr(length35*56), 8) + for index, element := range slice33 { + base := unsafe.Add(result34, index*56) + + switch element.Tag() { + case DbValueCharacter: + payload := element.Character() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueInt2: + payload := element.Int2() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueInt4: + payload := element.Int4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt8: + payload := element.Int8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat4: + payload := element.Float4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat8: + payload := element.Float8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueNumeric: + payload := element.Numeric() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueBpchar: + payload := element.Bpchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamptz: + payload := element.Timestamptz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Offset + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueTimetz: + payload := element.Timetz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32(((payload).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Offset + + case DbValueInterval: + payload := element.Interval() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Months + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Days + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Microseconds + + case DbValueBytea: + payload := element.Bytea() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueJsonb: + payload := element.Jsonb() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueJsonpath: + payload := element.Jsonpath() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueXml: + payload := element.Xml() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf87))) + + case DbValueUuid: + payload := element.Uuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).LowBits) + + case DbValueInet: + payload := element.Inet() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueCidr: + payload := element.Cidr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueMacaddr: + payload := element.Macaddr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Octets).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Octets).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Octets).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32(((payload).Octets).F3)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Octets).F4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Octets).F5)) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + slice := payload + length := uint32(len(slice)) + result9 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result9, index*1) + var result8 int32 + if element { + result8 = 1 + } else { + result8 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result8) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result9))) + + case DbValueVarbit: + payload := element.Varbit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + slice11 := payload + length13 := uint32(len(slice11)) + result12 := witRuntime.Allocate(pinner, uintptr(length13*1), 1) + for index, element := range slice11 { + base := unsafe.Add(result12, index*1) + var result10 int32 + if element { + result10 = 1 + } else { + result10 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result10) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length13) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result12))) + + case DbValueInt4range: + payload := element.Int4range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + switch (payload).Start.Tag() { + case Int4boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int4boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueInt8range: + payload := element.Int8range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + switch (payload).Start.Tag() { + case Int8boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int8boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNumrange: + payload := element.Numrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + + switch (payload).Start.Tag() { + case NumboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + utf814 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf814))) + + case NumboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf815))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case NumboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf816))) + + case NumboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf817))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTsrange: + payload := element.Tsrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + + switch (payload).Start.Tag() { + case TsboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TsboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTstzrange: + payload := element.Tstzrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + + switch (payload).Start.Tag() { + case TstzboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TstzboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueDaterange: + payload := element.Daterange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).Start.Tag() { + case DateboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case DateboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueMoney: + payload := element.Money() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueOid: + payload := element.Oid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(36)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + utf819 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf819))) + + case DbValueComposite: + payload := element.Composite() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(37)) + utf820 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf820))) + slice21 := (payload).Values + length23 := uint32(len(slice21)) + result22 := witRuntime.Allocate(pinner, uintptr(length23*4), 4) + for index, element := range slice21 { + base := unsafe.Add(result22, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length23) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result22))) + + case DbValueDomain: + payload := element.Domain() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(38)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Value).TakeHandle() + + case DbValueArray: + payload := element.Array() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(39)) + slice25 := payload + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*4), 4) + for index, element := range slice25 { + base := unsafe.Add(result26, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length27) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result26))) + + case DbValueRange: + payload := element.Range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(40)) + utf828 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf828) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf828))) + + switch ((payload).Value).Start.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch ((payload).Value).End.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(41)) + + case DbValueVector: + payload := element.Vector() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(42)) + data29 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data29) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data29))) + + case DbValueHalfvec: + payload := element.Halfvec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(43)) + data30 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data30))) + + case DbValueSparsevec: + payload := element.Sparsevec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(44)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Dim + data31 := unsafe.Pointer(unsafe.SliceData((payload).Indices)) + pinner.Pin(data31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len((payload).Indices))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(data31))) + data32 := unsafe.Pointer(unsafe.SliceData((payload).Values)) + pinner.Pin(data32) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Values))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(data32))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_query_stream((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result34), length35, returnArea) + var result40 witTypes.Result[*DbResultStream, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result40 = witTypes.Ok[*DbResultStream, Error](DbResultStreamFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value36) + + case 2: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value37) + + case 3: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value38) + + case 4: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value39) + + default: + panic("unreachable") + } + + result40 = witTypes.Err[*DbResultStream, Error](variant) + default: + panic("unreachable") + } + result41 := result40 + return result41 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-transaction.execute +func wasm_import_method_db_transaction_execute(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *DbTransaction) Execute(statement string, params []DbValue) witTypes.Result[uint64, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (16 + 2*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(statement)) + pinner.Pin(utf8) + slice33 := params + length35 := uint32(len(slice33)) + result34 := witRuntime.Allocate(pinner, uintptr(length35*56), 8) + for index, element := range slice33 { + base := unsafe.Add(result34, index*56) + + switch element.Tag() { + case DbValueCharacter: + payload := element.Character() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case DbValueInt2: + payload := element.Int2() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case DbValueInt4: + payload := element.Int4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueInt8: + payload := element.Int8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat4: + payload := element.Float4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueFloat8: + payload := element.Float8() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueNumeric: + payload := element.Numeric() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf80))) + + case DbValueBoolean: + payload := element.Boolean() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + var result int32 + if payload { + result = 1 + } else { + result = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result) + + case DbValueText: + payload := element.Text() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf81))) + + case DbValueVarchar: + payload := element.Varchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf82))) + + case DbValueBpchar: + payload := element.Bpchar() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf83))) + + case DbValueTimestamp: + payload := element.Timestamp() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32(((payload).Time).Nanosecond) + + case DbValueTimestamptz: + payload := element.Timestamptz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 18)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Offset + + case DbValueDate: + payload := element.Date() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).Day)) + + case DbValueTime: + payload := element.Time() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Nanosecond) + + case DbValueTimetz: + payload := element.Timetz() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32(((payload).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Offset + + case DbValueInterval: + payload := element.Interval() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Months + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Days + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Microseconds + + case DbValueBytea: + payload := element.Bytea() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + case DbValueJson: + payload := element.Json() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf84))) + + case DbValueJsonb: + payload := element.Jsonb() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf85))) + + case DbValueJsonpath: + payload := element.Jsonpath() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf86))) + + case DbValueXml: + payload := element.Xml() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf87))) + + case DbValueUuid: + payload := element.Uuid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64((payload).HighBits) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = int64((payload).LowBits) + + case DbValueInet: + payload := element.Inet() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueCidr: + payload := element.Cidr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch payload.Tag() { + case golem_rdbms_types.IpAddressIpv4: + payload := payload.Ipv4() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32((payload).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32((payload).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32((payload).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32((payload).F3)) + + case golem_rdbms_types.IpAddressIpv6: + payload := payload.Ipv6() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 10)) = int16(int32((payload).F0)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 12)) = int16(int32((payload).F1)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 14)) = int16(int32((payload).F2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 16)) = int16(int32((payload).F3)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 18)) = int16(int32((payload).F4)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 20)) = int16(int32((payload).F5)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 22)) = int16(int32((payload).F6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 24)) = int16(int32((payload).F7)) + + default: + panic("unreachable") + } + + case DbValueMacaddr: + payload := element.Macaddr() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(((payload).Octets).F0)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32(((payload).Octets).F1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 10)) = int8(int32(((payload).Octets).F2)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 11)) = int8(int32(((payload).Octets).F3)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(((payload).Octets).F4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 13)) = int8(int32(((payload).Octets).F5)) + + case DbValueBit: + payload := element.Bit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + slice := payload + length := uint32(len(slice)) + result9 := witRuntime.Allocate(pinner, uintptr(length*1), 1) + for index, element := range slice { + base := unsafe.Add(result9, index*1) + var result8 int32 + if element { + result8 = 1 + } else { + result8 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result8) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result9))) + + case DbValueVarbit: + payload := element.Varbit() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + slice11 := payload + length13 := uint32(len(slice11)) + result12 := witRuntime.Allocate(pinner, uintptr(length13*1), 1) + for index, element := range slice11 { + base := unsafe.Add(result12, index*1) + var result10 int32 + if element { + result10 = 1 + } else { + result10 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result10) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length13) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result12))) + + case DbValueInt4range: + payload := element.Int4range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + switch (payload).Start.Tag() { + case Int4boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int4boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + case Int4boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueInt8range: + payload := element.Int8range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + switch (payload).Start.Tag() { + case Int8boundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case Int8boundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case Int8boundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNumrange: + payload := element.Numrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + + switch (payload).Start.Tag() { + case NumboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + utf814 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf814))) + + case NumboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf815 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf815) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf815))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case NumboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf816))) + + case NumboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(utf817))) + + case NumboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTsrange: + payload := element.Tsrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + + switch (payload).Start.Tag() { + case TsboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TsboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 32)) = ((payload).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 36)) = int8(int32(((payload).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 37)) = int8(int32(((payload).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(((payload).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32(((payload).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 42)) = int8(int32(((payload).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 44)) = int32(((payload).Time).Nanosecond) + + case TsboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueTstzrange: + payload := element.Tstzrange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + + switch (payload).Start.Tag() { + case TstzboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 21)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 22)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 28)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case TstzboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 36)) = (((payload).Timestamp).Date).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32((((payload).Timestamp).Date).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 41)) = int8(int32((((payload).Timestamp).Date).Day)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 44)) = int8(int32((((payload).Timestamp).Time).Hour)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 45)) = int8(int32((((payload).Timestamp).Time).Minute)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 46)) = int8(int32((((payload).Timestamp).Time).Second)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 48)) = int32((((payload).Timestamp).Time).Nanosecond) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 52)) = (payload).Offset + + case TstzboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 32)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueDaterange: + payload := element.Daterange() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).Start.Tag() { + case DateboundIncluded: + payload := (payload).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 17)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch (payload).End.Tag() { + case DateboundIncluded: + payload := (payload).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundExcluded: + payload := (payload).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 24)) = (payload).Year + *(*int8)(unsafe.Add(unsafe.Pointer(base), 28)) = int8(int32((payload).Month)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 29)) = int8(int32((payload).Day)) + + case DateboundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 20)) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueMoney: + payload := element.Money() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case DbValueOid: + payload := element.Oid() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case DbValueEnumeration: + payload := element.Enumeration() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(36)) + utf818 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf818) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf818))) + utf819 := unsafe.Pointer(unsafe.StringData((payload).Value)) + pinner.Pin(utf819) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len((payload).Value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf819))) + + case DbValueComposite: + payload := element.Composite() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(37)) + utf820 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf820))) + slice21 := (payload).Values + length23 := uint32(len(slice21)) + result22 := witRuntime.Allocate(pinner, uintptr(length23*4), 4) + for index, element := range slice21 { + base := unsafe.Add(result22, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length23) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result22))) + + case DbValueDomain: + payload := element.Domain() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(38)) + utf824 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf824) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf824))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = ((payload).Value).TakeHandle() + + case DbValueArray: + payload := element.Array() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(39)) + slice25 := payload + length27 := uint32(len(slice25)) + result26 := witRuntime.Allocate(pinner, uintptr(length27*4), 4) + for index, element := range slice25 { + base := unsafe.Add(result26, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).TakeHandle() + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length27) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result26))) + + case DbValueRange: + payload := element.Range() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(40)) + utf828 := unsafe.Pointer(unsafe.StringData((payload).Name)) + pinner.Pin(utf828) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf828))) + + switch ((payload).Value).Start.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).Start.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).Start.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + switch ((payload).Value).End.Tag() { + case ValueBoundIncluded: + payload := ((payload).Value).End.Included() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundExcluded: + payload := ((payload).Value).End.Excluded() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 2*4))) = (payload).TakeHandle() + + case ValueBoundUnbounded: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = int8(int32(2)) + + default: + panic("unreachable") + } + + case DbValueNull: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(41)) + + case DbValueVector: + payload := element.Vector() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(42)) + data29 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data29) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data29))) + + case DbValueHalfvec: + payload := element.Halfvec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(43)) + data30 := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data30))) + + case DbValueSparsevec: + payload := element.Sparsevec() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(44)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Dim + data31 := unsafe.Pointer(unsafe.SliceData((payload).Indices)) + pinner.Pin(data31) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len((payload).Indices))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(data31))) + data32 := unsafe.Pointer(unsafe.SliceData((payload).Values)) + pinner.Pin(data32) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len((payload).Values))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(data32))) + + default: + panic("unreachable") + } + + } + + wasm_import_method_db_transaction_execute((self).Handle(), uintptr(utf8), uint32(len(statement)), uintptr(result34), length35, returnArea) + var result40 witTypes.Result[uint64, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result40 = witTypes.Ok[uint64, Error](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryParameterFailure(value36) + + case 2: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryExecutionFailure(value37) + + case 3: + value38 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorQueryResponseFailure(value38) + + case 4: + value39 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))) + + variant = MakeErrorOther(value39) + + default: + panic("unreachable") + } + + result40 = witTypes.Err[uint64, Error](variant) + default: + panic("unreachable") + } + result41 := result40 + return result41 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-transaction.commit +func wasm_import_method_db_transaction_commit(arg0 int32, arg1 uintptr) + +func (self *DbTransaction) Commit() witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_transaction_commit((self).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} + +//go:wasmimport golem:rdbms/postgres@1.5.0 [method]db-transaction.rollback +func wasm_import_method_db_transaction_rollback(arg0 int32, arg1 uintptr) + +func (self *DbTransaction) Rollback() witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_db_transaction_rollback((self).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryParameterFailure(value0) + + case 2: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryExecutionFailure(value1) + + case 3: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorQueryResponseFailure(value2) + + case 4: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value3) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant) + default: + panic("unreachable") + } + result4 := result + return result4 + +} diff --git a/sdks/go/internal/wit/golem_rdbms_types/empty.s b/sdks/go/internal/wit/golem_rdbms_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_rdbms_types/wit_bindings.go b/sdks/go/internal/wit/golem_rdbms_types/wit_bindings.go new file mode 100644 index 0000000000..463945cd83 --- /dev/null +++ b/sdks/go/internal/wit/golem_rdbms_types/wit_bindings.go @@ -0,0 +1,107 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_rdbms_types + +import ( + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +type Uuid struct { + HighBits uint64 + LowBits uint64 +} + +const ( + IpAddressIpv4 uint8 = 0 + IpAddressIpv6 uint8 = 1 +) + +type IpAddress struct { + tag uint8 + value any +} + +func (self IpAddress) Tag() uint8 { + return self.tag +} + +func (self IpAddress) Ipv4() witTypes.Tuple4[uint8, uint8, uint8, uint8] { + if self.tag != IpAddressIpv4 { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple4[uint8, uint8, uint8, uint8]) +} +func (self IpAddress) Ipv6() witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16] { + if self.tag != IpAddressIpv6 { + panic("tag mismatch") + } + return self.value.(witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]) +} + +func MakeIpAddressIpv4(value witTypes.Tuple4[uint8, uint8, uint8, uint8]) IpAddress { + return IpAddress{IpAddressIpv4, value} +} +func MakeIpAddressIpv6(value witTypes.Tuple8[uint16, uint16, uint16, uint16, uint16, uint16, uint16, uint16]) IpAddress { + return IpAddress{IpAddressIpv6, value} +} + +type MacAddress struct { + Octets witTypes.Tuple6[uint8, uint8, uint8, uint8, uint8, uint8] +} + +type Date struct { + Year int32 + Month uint8 + Day uint8 +} + +type Time struct { + Hour uint8 + Minute uint8 + Second uint8 + Nanosecond uint32 +} + +type Timestamp struct { + Date Date + Time Time +} + +type Timestamptz struct { + Timestamp Timestamp + Offset int32 +} + +type Timetz struct { + Time Time + Offset int32 +} diff --git a/sdks/go/internal/wit/golem_secrets_reveal/empty.s b/sdks/go/internal/wit/golem_secrets_reveal/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_secrets_reveal/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go b/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go new file mode 100644 index 0000000000..187de165f8 --- /dev/null +++ b/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go @@ -0,0 +1,2389 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_secrets_reveal + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem-go/internal/wit/golem_secrets_types" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type SecretError = golem_secrets_types.SecretError +type Secret = golem_core_types.Secret +type SchemaGraph = golem_core_types.SchemaGraph +type SchemaValueTree = golem_core_types.SchemaValueTree + +//go:wasmimport golem:secrets/reveal@0.1.0 reveal +func wasm_import_reveal(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 int32, arg6 uintptr) + +func Reveal(s *golem_core_types.Secret, expected golem_core_types.SchemaGraph) witTypes.Result[golem_core_types.SchemaValueTree, golem_secrets_types.SecretError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + slice114 := (expected).TypeNodes + length116 := uint32(len(slice114)) + result115 := witRuntime.Allocate(pinner, uintptr(length116*(56+22*4)), 8) + for index, element := range slice114 { + base := unsafe.Add(result115, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf80 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf80))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf81 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf81))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf82))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf83))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf84))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf85))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf86))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf87))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf88 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf88))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice18 := payload + length20 := uint32(len(slice18)) + result19 := witRuntime.Allocate(pinner, uintptr(length20*(17*4)), 4) + for index, element := range slice18 { + base := unsafe.Add(result19, index*(17*4)) + utf89 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf89) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf89))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf810 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf810) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf810))) + + default: + panic("unreachable") + } + slice := ((element).Metadata).Aliases + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(2*4)) + utf811 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf811) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf811))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result))) + slice13 := ((element).Metadata).Examples + length15 := uint32(len(slice13)) + result14 := witRuntime.Allocate(pinner, uintptr(length15*(2*4)), 4) + for index, element := range slice13 { + base := unsafe.Add(result14, index*(2*4)) + utf812 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf812))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length15) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result14))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf816 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf816))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf817 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf817) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf817))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length20) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result19))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice33 := payload + length35 := uint32(len(slice33)) + result34 := witRuntime.Allocate(pinner, uintptr(length35*(8+16*4)), 4) + for index, element := range slice33 { + base := unsafe.Add(result34, index*(8+16*4)) + utf821 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf821))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf822 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf822) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf822))) + + default: + panic("unreachable") + } + slice24 := ((element).Metadata).Aliases + length26 := uint32(len(slice24)) + result25 := witRuntime.Allocate(pinner, uintptr(length26*(2*4)), 4) + for index, element := range slice24 { + base := unsafe.Add(result25, index*(2*4)) + utf823 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf823) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf823))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length26) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result25))) + slice28 := ((element).Metadata).Examples + length30 := uint32(len(slice28)) + result29 := witRuntime.Allocate(pinner, uintptr(length30*(2*4)), 4) + for index, element := range slice28 { + base := unsafe.Add(result29, index*(2*4)) + utf827 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf827) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf827))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result29))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf831 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf831) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf831))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf832 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf832) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf832))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length35) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result34))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice37 := payload + length39 := uint32(len(slice37)) + result38 := witRuntime.Allocate(pinner, uintptr(length39*(2*4)), 4) + for index, element := range slice37 { + base := unsafe.Add(result38, index*(2*4)) + utf836 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf836))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length39) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result38))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice41 := payload + length43 := uint32(len(slice41)) + result42 := witRuntime.Allocate(pinner, uintptr(length43*(2*4)), 4) + for index, element := range slice41 { + base := unsafe.Add(result42, index*(2*4)) + utf840 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf840) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf840))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length43) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result42))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice44 := payload + length46 := uint32(len(slice44)) + result45 := witRuntime.Allocate(pinner, uintptr(length46*4), 4) + for index, element := range slice44 { + base := unsafe.Add(result45, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length46) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result45))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice48 := payload + length50 := uint32(len(slice48)) + result49 := witRuntime.Allocate(pinner, uintptr(length50*(2*4)), 4) + for index, element := range slice48 { + base := unsafe.Add(result49, index*(2*4)) + utf847 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf847) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf847))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length50) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result49))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf851 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf851) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf851))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice53 := payload + length55 := uint32(len(slice53)) + result54 := witRuntime.Allocate(pinner, uintptr(length55*(2*4)), 4) + for index, element := range slice53 { + base := unsafe.Add(result54, index*(2*4)) + utf852 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf852) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf852))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length55) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result54))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice57 := payload + length59 := uint32(len(slice57)) + result58 := witRuntime.Allocate(pinner, uintptr(length59*(2*4)), 4) + for index, element := range slice57 { + base := unsafe.Add(result58, index*(2*4)) + utf856 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf856) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf856))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length59) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result58))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice61 := payload + length63 := uint32(len(slice61)) + result62 := witRuntime.Allocate(pinner, uintptr(length63*(2*4)), 4) + for index, element := range slice61 { + base := unsafe.Add(result62, index*(2*4)) + utf860 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf860) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf860))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length63) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result62))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice65 := payload + length67 := uint32(len(slice65)) + result66 := witRuntime.Allocate(pinner, uintptr(length67*(2*4)), 4) + for index, element := range slice65 { + base := unsafe.Add(result66, index*(2*4)) + utf864 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf864) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf864))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length67) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result66))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice69 := payload + length71 := uint32(len(slice69)) + result70 := witRuntime.Allocate(pinner, uintptr(length71*(2*4)), 4) + for index, element := range slice69 { + base := unsafe.Add(result70, index*(2*4)) + utf868 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf868) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf868))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length71) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result70))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf872 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf872) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf872))) + slice74 := (payload).AllowedSuffixes + length76 := uint32(len(slice74)) + result75 := witRuntime.Allocate(pinner, uintptr(length76*(2*4)), 4) + for index, element := range slice74 { + base := unsafe.Add(result75, index*(2*4)) + utf873 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf873) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf873))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length76) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result75))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf877 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf877) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf877))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf878 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf878) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf878))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice98 := (payload).Branches + length100 := uint32(len(slice98)) + result99 := witRuntime.Allocate(pinner, uintptr(length100*(23*4)), 4) + for index, element := range slice98 { + base := unsafe.Add(result99, index*(23*4)) + utf879 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf879) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf879))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf880 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf880) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf880))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf881 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf881))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf882 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf882) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf882))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf883 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf883) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf883))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf884 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf884) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf884))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf885 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf885))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf886 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf886) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf886))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf887 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf887) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf887))) + + default: + panic("unreachable") + } + slice89 := ((element).Metadata).Aliases + length91 := uint32(len(slice89)) + result90 := witRuntime.Allocate(pinner, uintptr(length91*(2*4)), 4) + for index, element := range slice89 { + base := unsafe.Add(result90, index*(2*4)) + utf888 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf888) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf888))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length91) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result90))) + slice93 := ((element).Metadata).Examples + length95 := uint32(len(slice93)) + result94 := witRuntime.Allocate(pinner, uintptr(length95*(2*4)), 4) + for index, element := range slice93 { + base := unsafe.Add(result94, index*(2*4)) + utf892 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf892) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf892))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length95) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result94))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf896 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf896) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf896))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf897 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf897) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf897))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length100) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result99))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8101 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8101))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8102 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8102) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8102))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8103 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8103) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8103))) + + default: + panic("unreachable") + } + slice105 := ((element).Metadata).Aliases + length107 := uint32(len(slice105)) + result106 := witRuntime.Allocate(pinner, uintptr(length107*(2*4)), 4) + for index, element := range slice105 { + base := unsafe.Add(result106, index*(2*4)) + utf8104 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8104) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8104))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length107) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result106))) + slice109 := ((element).Metadata).Examples + length111 := uint32(len(slice109)) + result110 := witRuntime.Allocate(pinner, uintptr(length111*(2*4)), 4) + for index, element := range slice109 { + base := unsafe.Add(result110, index*(2*4)) + utf8108 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8108) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8108))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length111) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result110))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8112 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8112))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8113 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8113) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8113))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + slice119 := (expected).Defs + length121 := uint32(len(slice119)) + result120 := witRuntime.Allocate(pinner, uintptr(length121*(6*4)), 4) + for index, element := range slice119 { + base := unsafe.Add(result120, index*(6*4)) + utf8117 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8117) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8117))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8118 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8118) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8118))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + wasm_import_reveal((s).Handle(), uintptr(result115), length116, uintptr(result120), length121, (expected).Root, returnArea) + var result147 witTypes.Result[golem_core_types.SchemaValueTree, golem_secrets_types.SecretError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result142 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(16+4*4)) + var variant141 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant141 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant141 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant141 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant141 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant141 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant141 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant141 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant141 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant141 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant141 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant141 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant141 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant141 = golem_core_types.MakeSchemaValueNodeStringValue(value) + + case 13: + result122 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result122 = append(result122, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant141 = golem_core_types.MakeSchemaValueNodeRecordValue(result122) + + case 14: + var option witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option = witTypes.None[int32]() + case 1: + + option = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant141 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option}) + + case 15: + + variant141 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result123 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result123 = append(result123, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant141 = golem_core_types.MakeSchemaValueNodeFlagsValue(result123) + + case 17: + result124 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result124 = append(result124, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant141 = golem_core_types.MakeSchemaValueNodeTupleValue(result124) + + case 18: + result125 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result125 = append(result125, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant141 = golem_core_types.MakeSchemaValueNodeListValue(result125) + + case 19: + result126 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result126 = append(result126, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant141 = golem_core_types.MakeSchemaValueNodeFixedListValue(result126) + + case 20: + result127 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result127 = append(result127, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant141 = golem_core_types.MakeSchemaValueNodeMapValue(result127) + + case 21: + var option128 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option128 = witTypes.None[int32]() + case 1: + + option128 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant141 = golem_core_types.MakeSchemaValueNodeOptionValue(option128) + + case 22: + var variant golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option129 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option129 = witTypes.None[int32]() + case 1: + + option129 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadOkValue(option129) + + case 1: + var option130 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option130 = witTypes.None[int32]() + case 1: + + option130 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadErrValue(option130) + + default: + panic("unreachable") + } + + variant141 = golem_core_types.MakeSchemaValueNodeResultValue(variant) + + case 23: + value131 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option133 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option133 = witTypes.None[string]() + case 1: + value132 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option133 = witTypes.Some[string](value132) + default: + panic("unreachable") + } + + variant141 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value131, option133}) + + case 24: + value134 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option136 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option136 = witTypes.None[string]() + case 1: + value135 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option136 = witTypes.Some[string](value135) + default: + panic("unreachable") + } + + variant141 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value134, option136}) + + case 25: + value137 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant141 = golem_core_types.MakeSchemaValueNodePathValue(value137) + + case 26: + value138 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant141 = golem_core_types.MakeSchemaValueNodeUrlValue(value138) + + case 27: + + variant141 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant141 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value139 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant141 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value139}) + + case 30: + value140 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant141 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value140, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant141 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant141 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result142 = append(result142, variant141) + } + + result147 = witTypes.Ok[golem_core_types.SchemaValueTree, golem_secrets_types.SecretError](golem_core_types.SchemaValueTree{result142, *(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))}) + case 1: + var variant146 golem_secrets_types.SecretError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value143 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant146 = golem_secrets_types.MakeSecretErrorUnavailable(value143) + + case 1: + value144 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant146 = golem_secrets_types.MakeSecretErrorVersionNotFound(golem_secrets_types.SecretVersion{value144}) + + case 2: + value145 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant146 = golem_secrets_types.MakeSecretErrorInternal(value145) + + default: + panic("unreachable") + } + + result147 = witTypes.Err[golem_core_types.SchemaValueTree, golem_secrets_types.SecretError](variant146) + default: + panic("unreachable") + } + result148 := result147 + return result148 + +} diff --git a/sdks/go/internal/wit/golem_secrets_types/empty.s b/sdks/go/internal/wit/golem_secrets_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_secrets_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go b/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go new file mode 100644 index 0000000000..d423683834 --- /dev/null +++ b/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go @@ -0,0 +1,206 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_secrets_types + +import ( + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Datetime = wasi_clocks_0_3_0_system_clock.Instant +type Secret = golem_core_types.Secret + +// The opaque handle to a sensitive value is defined in +// `golem:core/types` so it can travel inside a `schema-value-tree` as an +// unforgeable owned handle. This interface exposes only safe metadata +// operations over that handle. +// +// Resource handles are scoped to a component instance's +// resource table. When a secret is passed across a component +// boundary (e.g., agent → tool via `tool-rpc.invoke`'s +// `value-tree`), the runtime issues a fresh handle in the +// receiving instance's table that points at the same +// host-side state. The wire form carries only the +// `secret-id`, never plaintext. +// Stable, opaque identifier scoped to the deployment. +type SecretId struct { + Bytes []uint8 +} + +// A secret-store-assigned, monotonic version identifier. The +// secret-store backend defines the ordering and the format; +// the type-tree treats it as opaque. +type SecretVersion struct { + Bytes []uint8 +} + +type SecretMetadata struct { + // Config-key path the secret resolved from, when applicable. + // `none` for secrets returned in tool-result position. + ConfigKey witTypes.Option[[]string] + // Pinned version captured at resolve-time. `none` for + // dynamic-origin secrets (e.g. returned from a tool that + // didn't itself have a versioned source). + Version witTypes.Option[SecretVersion] + // Time of resolution. + ResolvedAt wasi_clocks_0_3_0_system_clock.Instant + // The semantic category declared on the secret's schema type, when + // known. Mirrors `secret-spec.category` in `golem:core/types`. + Category witTypes.Option[string] +} + +const ( + // The secret was bound but its current resolution failed + // (e.g., the secret-store entry was deleted between binding + // and reveal, or the network to the store is partitioned). + SecretErrorUnavailable uint8 = 0 + // The secret was version-pinned and the pinned version no + // longer exists (administratively destroyed). + SecretErrorVersionNotFound uint8 = 1 + // Internal runtime error (carries an opaque message; never + // includes plaintext). + SecretErrorInternal uint8 = 2 +) + +// Errors common to operations on secrets. +type SecretError struct { + tag uint8 + value any +} + +func (self SecretError) Tag() uint8 { + return self.tag +} + +func (self SecretError) Unavailable() string { + if self.tag != SecretErrorUnavailable { + panic("tag mismatch") + } + return self.value.(string) +} +func (self SecretError) VersionNotFound() SecretVersion { + if self.tag != SecretErrorVersionNotFound { + panic("tag mismatch") + } + return self.value.(SecretVersion) +} +func (self SecretError) Internal() string { + if self.tag != SecretErrorInternal { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeSecretErrorUnavailable(value string) SecretError { + return SecretError{SecretErrorUnavailable, value} +} +func MakeSecretErrorVersionNotFound(value SecretVersion) SecretError { + return SecretError{SecretErrorVersionNotFound, value} +} +func MakeSecretErrorInternal(value string) SecretError { + return SecretError{SecretErrorInternal, value} +} + +//go:wasmimport golem:secrets/types@0.1.0 id +func wasm_import_id(arg0 int32, arg1 uintptr) + +func Id(s *golem_core_types.Secret) SecretId { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_id((s).Handle(), returnArea) + value := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + result := SecretId{value} + return result + +} + +//go:wasmimport golem:secrets/types@0.1.0 metadata +func wasm_import_metadata(arg0 int32, arg1 uintptr) + +func Metadata(s *golem_core_types.Secret) SecretMetadata { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (24 + 8*4), 8)) + wasm_import_metadata((s).Handle(), returnArea) + var option witTypes.Option[[]string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[[]string]() + case 1: + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(2*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value) + } + + option = witTypes.Some[[]string](result) + default: + panic("unreachable") + } + var option1 witTypes.Option[SecretVersion] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) { + case 0: + + option1 = witTypes.None[SecretVersion]() + case 1: + value0 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + + option1 = witTypes.Some[SecretVersion](SecretVersion{value0}) + default: + panic("unreachable") + } + var option3 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 6*4)))) { + case 0: + + option3 = witTypes.None[string]() + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 7*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 8*4)))) + + option3 = witTypes.Some[string](value2) + default: + panic("unreachable") + } + result4 := SecretMetadata{option, option1, wasi_clocks_0_3_0_system_clock.Instant{*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (6 * 4))), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 6*4))))}, option3} + return result4 + +} diff --git a/sdks/go/internal/wit/golem_websocket_client/empty.s b/sdks/go/internal/wit/golem_websocket_client/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/golem_websocket_client/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/golem_websocket_client/wit_bindings.go b/sdks/go/internal/wit/golem_websocket_client/wit_bindings.go new file mode 100644 index 0000000000..b72d6abe32 --- /dev/null +++ b/sdks/go/internal/wit/golem_websocket_client/wit_bindings.go @@ -0,0 +1,691 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package golem_websocket_client + +import ( + witAsync "go.bytecodealliance.org/pkg/wit/async" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type CloseInfo struct { + Code uint16 + Reason string +} + +const ( + ErrorConnectionFailure uint8 = 0 + ErrorSendFailure uint8 = 1 + ErrorReceiveFailure uint8 = 2 + ErrorProtocolError uint8 = 3 + ErrorClosed uint8 = 4 + ErrorOther uint8 = 5 +) + +type Error struct { + tag uint8 + value any +} + +func (self Error) Tag() uint8 { + return self.tag +} + +func (self Error) ConnectionFailure() string { + if self.tag != ErrorConnectionFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) SendFailure() string { + if self.tag != ErrorSendFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) ReceiveFailure() string { + if self.tag != ErrorReceiveFailure { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) ProtocolError() string { + if self.tag != ErrorProtocolError { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) Closed() witTypes.Option[CloseInfo] { + if self.tag != ErrorClosed { + panic("tag mismatch") + } + return self.value.(witTypes.Option[CloseInfo]) +} +func (self Error) Other() string { + if self.tag != ErrorOther { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeErrorConnectionFailure(value string) Error { + return Error{ErrorConnectionFailure, value} +} +func MakeErrorSendFailure(value string) Error { + return Error{ErrorSendFailure, value} +} +func MakeErrorReceiveFailure(value string) Error { + return Error{ErrorReceiveFailure, value} +} +func MakeErrorProtocolError(value string) Error { + return Error{ErrorProtocolError, value} +} +func MakeErrorClosed(value witTypes.Option[CloseInfo]) Error { + return Error{ErrorClosed, value} +} +func MakeErrorOther(value string) Error { + return Error{ErrorOther, value} +} + +const ( + MessageText uint8 = 0 + MessageBinary uint8 = 1 +) + +// A WebSocket message — text or binary +type Message struct { + tag uint8 + value any +} + +func (self Message) Tag() uint8 { + return self.tag +} + +func (self Message) Text() string { + if self.tag != MessageText { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Message) Binary() []uint8 { + if self.tag != MessageBinary { + panic("tag mismatch") + } + return self.value.([]uint8) +} + +func MakeMessageText(value string) Message { + return Message{MessageText, value} +} +func MakeMessageBinary(value []uint8) Message { + return Message{MessageBinary, value} +} + +//go:wasmimport golem:websocket/client@1.5.0 [resource-drop]websocket-connection +func resourceDropWebsocketConnection(handle int32) + +// A WebSocket connection resource +type WebsocketConnection struct { + handle *witRuntime.Handle +} + +func (self *WebsocketConnection) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *WebsocketConnection) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *WebsocketConnection) Handle() int32 { + return self.handle.Use() +} + +func (self *WebsocketConnection) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropWebsocketConnection(handle) + } +} + +func WebsocketConnectionFromOwnHandle(handleValue int32) *WebsocketConnection { + handle := witRuntime.MakeHandle(handleValue) + value := &WebsocketConnection{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropWebsocketConnection(handleValue) + } + }, 0) + return value +} + +func WebsocketConnectionFromBorrowHandle(handleValue int32) *WebsocketConnection { + handle := witRuntime.MakeHandle(handleValue) + return &WebsocketConnection{handle} +} + +//go:wasmimport golem:websocket/client@1.5.0 [static]websocket-connection.connect +func wasm_import_static_websocket_connection_connect(arg0 uintptr, arg1 uint32, arg2 int32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func WebsocketConnectionConnect(url string, headers witTypes.Option[[]witTypes.Tuple2[string, string]]) witTypes.Result[*WebsocketConnection, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (6 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(url)) + pinner.Pin(utf8) + var option int32 + var option2 uintptr + var option3 uint32 + switch headers.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option2 = 0 + option3 = 0 + case witTypes.OptionSome: + payload := headers.Some() + slice := payload + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(4*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(4*4)) + utf80 := unsafe.Pointer(unsafe.StringData((element).F0)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).F0))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf80))) + utf81 := unsafe.Pointer(unsafe.StringData((element).F1)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).F1))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf81))) + + } + + option = int32(1) + option2 = uintptr(result) + option3 = length + default: + panic("unreachable") + } + wasm_import_static_websocket_connection_connect(uintptr(utf8), uint32(len(url)), option, option2, option3, returnArea) + var result10 witTypes.Result[*WebsocketConnection, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result10 = witTypes.Ok[*WebsocketConnection, Error](WebsocketConnectionFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorSendFailure(value4) + + case 2: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorReceiveFailure(value5) + + case 3: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorProtocolError(value6) + + case 4: + var option8 witTypes.Option[CloseInfo] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option8 = witTypes.None[CloseInfo]() + case 1: + value7 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + + option8 = witTypes.Some[CloseInfo](CloseInfo{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), value7}) + default: + panic("unreachable") + } + + variant = MakeErrorClosed(option8) + + case 5: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value9) + + default: + panic("unreachable") + } + + result10 = witTypes.Err[*WebsocketConnection, Error](variant) + default: + panic("unreachable") + } + result11 := result10 + return result11 + +} + +//go:wasmimport golem:websocket/client@1.5.0 [method]websocket-connection.send +func wasm_import_method_websocket_connection_send(arg0 int32, arg1 int32, arg2 uintptr, arg3 uint32, arg4 uintptr) + +func (self *WebsocketConnection) Send(message Message) witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (6 * 4), 4)) + var variant int32 + var variant0 uintptr + var variant1 uint32 + switch message.Tag() { + case MessageText: + payload := message.Text() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + variant = int32(0) + variant0 = uintptr(utf8) + variant1 = uint32(len(payload)) + + case MessageBinary: + payload := message.Binary() + data := unsafe.Pointer(unsafe.SliceData(payload)) + pinner.Pin(data) + + variant = int32(1) + variant0 = uintptr(data) + variant1 = uint32(len(payload)) + + default: + panic("unreachable") + } + wasm_import_method_websocket_connection_send((self).Handle(), variant, variant0, variant1, returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant7 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorConnectionFailure(value) + + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorSendFailure(value2) + + case 2: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorReceiveFailure(value3) + + case 3: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorProtocolError(value4) + + case 4: + var option witTypes.Option[CloseInfo] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option = witTypes.None[CloseInfo]() + case 1: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + + option = witTypes.Some[CloseInfo](CloseInfo{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), value5}) + default: + panic("unreachable") + } + + variant7 = MakeErrorClosed(option) + + case 5: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorOther(value6) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant7) + default: + panic("unreachable") + } + result8 := result + return result8 + +} + +//go:wasmimport golem:websocket/client@1.5.0 [async-lower][method]websocket-connection.receive +func wasm_import_method_websocket_connection_receive(arg0 int32, arg1 uintptr) int32 + +func (self *WebsocketConnection) Receive() witTypes.Result[Message, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (6 * 4), 4)) + + witAsync.SubtaskWait(uint32(wasm_import_method_websocket_connection_receive((self).Handle(), returnArea))) + var result witTypes.Result[Message, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + var variant Message + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeMessageText(value) + + case 1: + value0 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeMessageBinary(value0) + + default: + panic("unreachable") + } + + result = witTypes.Ok[Message, Error](variant) + case 1: + var variant7 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorConnectionFailure(value1) + + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorSendFailure(value2) + + case 2: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorReceiveFailure(value3) + + case 3: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorProtocolError(value4) + + case 4: + var option witTypes.Option[CloseInfo] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option = witTypes.None[CloseInfo]() + case 1: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + + option = witTypes.Some[CloseInfo](CloseInfo{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), value5}) + default: + panic("unreachable") + } + + variant7 = MakeErrorClosed(option) + + case 5: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant7 = MakeErrorOther(value6) + + default: + panic("unreachable") + } + + result = witTypes.Err[Message, Error](variant7) + default: + panic("unreachable") + } + + return result + +} + +//go:wasmimport golem:websocket/client@1.5.0 [async-lower][method]websocket-connection.receive-with-timeout +func wasm_import_method_websocket_connection_receive_with_timeout(arg0 int32, arg1 int64, arg2 uintptr) int32 + +func (self *WebsocketConnection) ReceiveWithTimeout(timeoutMs uint64) witTypes.Result[witTypes.Option[Message], Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (6 * 4), 4)) + + witAsync.SubtaskWait(uint32(wasm_import_method_websocket_connection_receive_with_timeout((self).Handle(), int64(timeoutMs), returnArea))) + var result witTypes.Result[witTypes.Option[Message], Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + var option witTypes.Option[Message] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + option = witTypes.None[Message]() + case 1: + var variant Message + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant = MakeMessageText(value) + + case 1: + value0 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + variant = MakeMessageBinary(value0) + + default: + panic("unreachable") + } + + option = witTypes.Some[Message](variant) + default: + panic("unreachable") + } + + result = witTypes.Ok[witTypes.Option[Message], Error](option) + case 1: + var variant8 Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorConnectionFailure(value1) + + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorSendFailure(value2) + + case 2: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorReceiveFailure(value3) + + case 3: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorProtocolError(value4) + + case 4: + var option6 witTypes.Option[CloseInfo] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option6 = witTypes.None[CloseInfo]() + case 1: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + + option6 = witTypes.Some[CloseInfo](CloseInfo{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), value5}) + default: + panic("unreachable") + } + + variant8 = MakeErrorClosed(option6) + + case 5: + value7 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant8 = MakeErrorOther(value7) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Option[Message], Error](variant8) + default: + panic("unreachable") + } + + return result + +} + +//go:wasmimport golem:websocket/client@1.5.0 [method]websocket-connection.close +func wasm_import_method_websocket_connection_close(arg0 int32, arg1 int32, arg2 int32, arg3 int32, arg4 uintptr, arg5 uint32, arg6 uintptr) + +func (self *WebsocketConnection) Close(code witTypes.Option[uint16], reason witTypes.Option[string]) witTypes.Result[witTypes.Unit, Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (6 * 4), 4)) + var option int32 + var option0 int32 + switch code.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := code.Some() + + option = int32(1) + option0 = int32(payload) + default: + panic("unreachable") + } + var option1 int32 + var option2 uintptr + var option3 uint32 + switch reason.Tag() { + case witTypes.OptionNone: + + option1 = int32(0) + option2 = 0 + option3 = 0 + case witTypes.OptionSome: + payload := reason.Some() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + option1 = int32(1) + option2 = uintptr(utf8) + option3 = uint32(len(payload)) + default: + panic("unreachable") + } + wasm_import_method_websocket_connection_close((self).Handle(), option, option0, option1, option2, option3, returnArea) + var result witTypes.Result[witTypes.Unit, Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, Error](witTypes.Unit{}) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorConnectionFailure(value) + + case 1: + value4 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorSendFailure(value4) + + case 2: + value5 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorReceiveFailure(value5) + + case 3: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorProtocolError(value6) + + case 4: + var option8 witTypes.Option[CloseInfo] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option8 = witTypes.None[CloseInfo]() + case 1: + value7 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (5 * 4)))) + + option8 = witTypes.Some[CloseInfo](CloseInfo{uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4))))), value7}) + default: + panic("unreachable") + } + + variant = MakeErrorClosed(option8) + + case 5: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorOther(value9) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, Error](variant) + default: + panic("unreachable") + } + result10 := result + return result10 + +} diff --git a/sdks/go/internal/wit/wasi_blobstore_blobstore/empty.s b/sdks/go/internal/wit/wasi_blobstore_blobstore/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_blobstore_blobstore/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go b/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go new file mode 100644 index 0000000000..b87b145950 --- /dev/null +++ b/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go @@ -0,0 +1,226 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_blobstore_blobstore + +import ( + "github.com/golemcloud/golem-go/internal/wit/wasi_blobstore_container" + "github.com/golemcloud/golem-go/internal/wit/wasi_blobstore_types" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Container = wasi_blobstore_container.Container +type Error = string +type ContainerName = string +type ObjectId = wasi_blobstore_types.ObjectId + +//go:wasmimport wasi:blobstore/blobstore create-container +func wasm_import_create_container(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func CreateContainer(name string) witTypes.Result[*wasi_blobstore_container.Container, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_create_container(uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[*wasi_blobstore_container.Container, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*wasi_blobstore_container.Container, string](wasi_blobstore_container.ContainerFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[*wasi_blobstore_container.Container, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/blobstore get-container +func wasm_import_get_container(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func GetContainer(name string) witTypes.Result[*wasi_blobstore_container.Container, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_get_container(uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[*wasi_blobstore_container.Container, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*wasi_blobstore_container.Container, string](wasi_blobstore_container.ContainerFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[*wasi_blobstore_container.Container, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/blobstore delete-container +func wasm_import_delete_container(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func DeleteContainer(name string) witTypes.Result[witTypes.Unit, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_delete_container(uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[witTypes.Unit, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, string](witTypes.Unit{}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[witTypes.Unit, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/blobstore container-exists +func wasm_import_container_exists(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func ContainerExists(name string) witTypes.Result[bool, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_container_exists(uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[bool, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[bool, string]((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) != 0)) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[bool, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/blobstore copy-object +func wasm_import_copy_object(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 uintptr, arg5 uint32, arg6 uintptr, arg7 uint32, arg8 uintptr) + +func CopyObject(src wasi_blobstore_types.ObjectId, dest wasi_blobstore_types.ObjectId) witTypes.Result[witTypes.Unit, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData((src).Container)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData((src).Object)) + pinner.Pin(utf80) + utf81 := unsafe.Pointer(unsafe.StringData((dest).Container)) + pinner.Pin(utf81) + utf82 := unsafe.Pointer(unsafe.StringData((dest).Object)) + pinner.Pin(utf82) + wasm_import_copy_object(uintptr(utf8), uint32(len((src).Container)), uintptr(utf80), uint32(len((src).Object)), uintptr(utf81), uint32(len((dest).Container)), uintptr(utf82), uint32(len((dest).Object)), returnArea) + var result witTypes.Result[witTypes.Unit, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, string](witTypes.Unit{}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[witTypes.Unit, string](value) + default: + panic("unreachable") + } + result3 := result + return result3 + +} + +//go:wasmimport wasi:blobstore/blobstore move-object +func wasm_import_move_object(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32, arg4 uintptr, arg5 uint32, arg6 uintptr, arg7 uint32, arg8 uintptr) + +func MoveObject(src wasi_blobstore_types.ObjectId, dest wasi_blobstore_types.ObjectId) witTypes.Result[witTypes.Unit, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData((src).Container)) + pinner.Pin(utf8) + utf80 := unsafe.Pointer(unsafe.StringData((src).Object)) + pinner.Pin(utf80) + utf81 := unsafe.Pointer(unsafe.StringData((dest).Container)) + pinner.Pin(utf81) + utf82 := unsafe.Pointer(unsafe.StringData((dest).Object)) + pinner.Pin(utf82) + wasm_import_move_object(uintptr(utf8), uint32(len((src).Container)), uintptr(utf80), uint32(len((src).Object)), uintptr(utf81), uint32(len((dest).Container)), uintptr(utf82), uint32(len((dest).Object)), returnArea) + var result witTypes.Result[witTypes.Unit, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, string](witTypes.Unit{}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[witTypes.Unit, string](value) + default: + panic("unreachable") + } + result3 := result + return result3 + +} diff --git a/sdks/go/internal/wit/wasi_blobstore_container/empty.s b/sdks/go/internal/wit/wasi_blobstore_container/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_blobstore_container/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go b/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go new file mode 100644 index 0000000000..507b8880f3 --- /dev/null +++ b/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go @@ -0,0 +1,434 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_blobstore_container + +import ( + "github.com/golemcloud/golem-go/internal/wit/wasi_blobstore_types" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +//go:wasmimport wasi:blobstore/container [stream-new-0][method]container.list-objects +func wasm_stream_new_string() uint64 + +//go:wasmimport wasi:blobstore/container [async-lower][stream-read-0][method]container.list-objects +func wasm_stream_read_string(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:blobstore/container [async-lower][stream-write-0][method]container.list-objects +func wasm_stream_write_string(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:blobstore/container [stream-drop-readable-0][method]container.list-objects +func wasm_stream_drop_readable_string(handle int32) + +//go:wasmimport wasi:blobstore/container [stream-drop-writable-0][method]container.list-objects +func wasm_stream_drop_writable_string(handle int32) + +func wasm_stream_lift_string(src unsafe.Pointer) string { + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), 4))) + + return value +} + +func wasm_stream_lower_string( + pinner *runtime.Pinner, + value string, + dst unsafe.Pointer, +) func() { + utf8 := unsafe.Pointer(unsafe.StringData(value)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), 4)) = uint32(uint32(len(value))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), 0)) = uint32(uintptr(uintptr(utf8))) + + return func() {} +} + +var wasm_stream_vtable_string = witTypes.StreamVtable[string]{ + (2 * 4), + 4, + wasm_stream_read_string, + wasm_stream_write_string, + nil, + nil, + wasm_stream_drop_readable_string, + wasm_stream_drop_writable_string, + wasm_stream_lift_string, + wasm_stream_lower_string, +} + +func MakeStreamString() (*witTypes.StreamWriter[string], *witTypes.StreamReader[string]) { + pair := wasm_stream_new_string() + return witTypes.MakeStreamWriter[string](&wasm_stream_vtable_string, int32(pair>>32)), + witTypes.MakeStreamReader[string](&wasm_stream_vtable_string, int32(pair&0xFFFFFFFF)) +} + +func LiftStreamString(handle int32) *witTypes.StreamReader[string] { + return witTypes.MakeStreamReader[string](&wasm_stream_vtable_string, handle) +} + +type ContainerMetadata = wasi_blobstore_types.ContainerMetadata +type Error = string +type IncomingValue = wasi_blobstore_types.IncomingValue +type ObjectMetadata = wasi_blobstore_types.ObjectMetadata +type ObjectName = string +type OutgoingValue = wasi_blobstore_types.OutgoingValue + +//go:wasmimport wasi:blobstore/container [resource-drop]container +func resourceDropContainer(handle int32) + +// this defines the `container` resource +type Container struct { + handle *witRuntime.Handle +} + +func (self *Container) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Container) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Container) Handle() int32 { + return self.handle.Use() +} + +func (self *Container) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropContainer(handle) + } +} + +func ContainerFromOwnHandle(handleValue int32) *Container { + handle := witRuntime.MakeHandle(handleValue) + value := &Container{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropContainer(handleValue) + } + }, 0) + return value +} + +func ContainerFromBorrowHandle(handleValue int32) *Container { + handle := witRuntime.MakeHandle(handleValue) + return &Container{handle} +} + +//go:wasmimport wasi:blobstore/container [method]container.name +func wasm_import_method_container_name(arg0 int32, arg1 uintptr) + +func (self *Container) Name() witTypes.Result[string, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_container_name((self).Handle(), returnArea) + var result witTypes.Result[string, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Ok[string, string](value) + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[string, string](value0) + default: + panic("unreachable") + } + result1 := result + return result1 + +} + +//go:wasmimport wasi:blobstore/container [method]container.info +func wasm_import_method_container_info(arg0 int32, arg1 uintptr) + +func (self *Container) Info() witTypes.Result[wasi_blobstore_types.ContainerMetadata, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (16 + 2*4), 8)) + wasm_import_method_container_info((self).Handle(), returnArea) + var result witTypes.Result[wasi_blobstore_types.ContainerMetadata, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + result = witTypes.Ok[wasi_blobstore_types.ContainerMetadata, string](wasi_blobstore_types.ContainerMetadata{value, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4))))}) + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + result = witTypes.Err[wasi_blobstore_types.ContainerMetadata, string](value0) + default: + panic("unreachable") + } + result1 := result + return result1 + +} + +//go:wasmimport wasi:blobstore/container [method]container.get-data +func wasm_import_method_container_get_data(arg0 int32, arg1 uintptr, arg2 uint32, arg3 int64, arg4 int64, arg5 uintptr) + +func (self *Container) GetData(name string, start uint64, end uint64) witTypes.Result[*wasi_blobstore_types.IncomingValue, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_container_get_data((self).Handle(), uintptr(utf8), uint32(len(name)), int64(start), int64(end), returnArea) + var result witTypes.Result[*wasi_blobstore_types.IncomingValue, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*wasi_blobstore_types.IncomingValue, string](wasi_blobstore_types.IncomingValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[*wasi_blobstore_types.IncomingValue, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/container [method]container.write-data +func wasm_import_method_container_write_data(arg0 int32, arg1 uintptr, arg2 uint32, arg3 int32, arg4 uintptr) + +func (self *Container) WriteData(name string, data *wasi_blobstore_types.OutgoingValue) witTypes.Result[witTypes.Unit, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_container_write_data((self).Handle(), uintptr(utf8), uint32(len(name)), (data).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, string](witTypes.Unit{}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[witTypes.Unit, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/container [method]container.list-objects +func wasm_import_method_container_list_objects(arg0 int32, arg1 uintptr) + +func (self *Container) ListObjects() witTypes.Result[*witTypes.StreamReader[string], string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_container_list_objects((self).Handle(), returnArea) + var result witTypes.Result[*witTypes.StreamReader[string], string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*witTypes.StreamReader[string], string](LiftStreamString(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[*witTypes.StreamReader[string], string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/container [method]container.delete-object +func wasm_import_method_container_delete_object(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *Container) DeleteObject(name string) witTypes.Result[witTypes.Unit, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_container_delete_object((self).Handle(), uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[witTypes.Unit, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, string](witTypes.Unit{}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[witTypes.Unit, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/container [method]container.delete-objects +func wasm_import_method_container_delete_objects(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *Container) DeleteObjects(names []string) witTypes.Result[witTypes.Unit, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + slice := names + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(2*4)) + utf8 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + + } + + wasm_import_method_container_delete_objects((self).Handle(), uintptr(result), length, returnArea) + var result0 witTypes.Result[witTypes.Unit, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result0 = witTypes.Ok[witTypes.Unit, string](witTypes.Unit{}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result0 = witTypes.Err[witTypes.Unit, string](value) + default: + panic("unreachable") + } + result1 := result0 + return result1 + +} + +//go:wasmimport wasi:blobstore/container [method]container.has-object +func wasm_import_method_container_has_object(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *Container) HasObject(name string) witTypes.Result[bool, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_container_has_object((self).Handle(), uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[bool, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[bool, string]((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) != 0)) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[bool, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/container [method]container.object-info +func wasm_import_method_container_object_info(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *Container) ObjectInfo(name string) witTypes.Result[wasi_blobstore_types.ObjectMetadata, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (24 + 4*4), 8)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_container_object_info((self).Handle(), uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[wasi_blobstore_types.ObjectMetadata, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 3*4)))) + + result = witTypes.Ok[wasi_blobstore_types.ObjectMetadata, string](wasi_blobstore_types.ObjectMetadata{value, value0, uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 4*4))))}) + case 1: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (8 + 1*4)))) + + result = witTypes.Err[wasi_blobstore_types.ObjectMetadata, string](value1) + default: + panic("unreachable") + } + result2 := result + return result2 + +} + +//go:wasmimport wasi:blobstore/container [method]container.clear +func wasm_import_method_container_clear(arg0 int32, arg1 uintptr) + +func (self *Container) Clear() witTypes.Result[witTypes.Unit, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_container_clear((self).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, string](witTypes.Unit{}) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[witTypes.Unit, string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} diff --git a/sdks/go/internal/wit/wasi_blobstore_types/empty.s b/sdks/go/internal/wit/wasi_blobstore_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_blobstore_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_blobstore_types/wit_bindings.go b/sdks/go/internal/wit/wasi_blobstore_types/wit_bindings.go new file mode 100644 index 0000000000..78ff311bc6 --- /dev/null +++ b/sdks/go/internal/wit/wasi_blobstore_types/wit_bindings.go @@ -0,0 +1,312 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_blobstore_types + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +//go:wasmimport wasi:blobstore/types [stream-new-0][method]outgoing-value.outgoing-value-write-body +func wasm_stream_new_u8() uint64 + +//go:wasmimport wasi:blobstore/types [async-lower][stream-read-0][method]outgoing-value.outgoing-value-write-body +func wasm_stream_read_u8(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:blobstore/types [async-lower][stream-write-0][method]outgoing-value.outgoing-value-write-body +func wasm_stream_write_u8(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:blobstore/types [stream-drop-readable-0][method]outgoing-value.outgoing-value-write-body +func wasm_stream_drop_readable_u8(handle int32) + +//go:wasmimport wasi:blobstore/types [stream-drop-writable-0][method]outgoing-value.outgoing-value-write-body +func wasm_stream_drop_writable_u8(handle int32) + +var wasm_stream_vtable_u8 = witTypes.StreamVtable[uint8]{ + 1, + 1, + wasm_stream_read_u8, + wasm_stream_write_u8, + nil, + nil, + wasm_stream_drop_readable_u8, + wasm_stream_drop_writable_u8, + nil, + nil, +} + +func MakeStreamU8() (*witTypes.StreamWriter[uint8], *witTypes.StreamReader[uint8]) { + pair := wasm_stream_new_u8() + return witTypes.MakeStreamWriter[uint8](&wasm_stream_vtable_u8, int32(pair>>32)), + witTypes.MakeStreamReader[uint8](&wasm_stream_vtable_u8, int32(pair&0xFFFFFFFF)) +} + +func LiftStreamU8(handle int32) *witTypes.StreamReader[uint8] { + return witTypes.MakeStreamReader[uint8](&wasm_stream_vtable_u8, handle) +} + +// name of a container, a collection of objects. +// The container name may be any valid UTF-8 string. +type ContainerName = string + +// name of an object within a container +// The object name may be any valid UTF-8 string. +type ObjectName = string + +// TODO: define timestamp to include seconds since +// Unix epoch and nanoseconds +// https://github.com/WebAssembly/wasi-blob-store/issues/7 +type Timestamp = uint64 + +// size of an object, in bytes +type ObjectSize = uint64 +type Error = string + +// information about a container +type ContainerMetadata struct { + // the container's name + Name string + // date and time container was created + CreatedAt uint64 +} + +// information about an object +type ObjectMetadata struct { + // the object's name + Name string + // the object's parent container + Container string + // date and time the object was created + CreatedAt uint64 + // size of the object, in bytes + Size uint64 +} + +// identifier for an object that includes its container name +type ObjectId struct { + Container string + Object string +} + +//go:wasmimport wasi:blobstore/types [resource-drop]outgoing-value +func resourceDropOutgoingValue(handle int32) + +// A data blob value. The value can be of any type that can be represented +// in a byte array. +// Soon: switch to `resource value { ... }` +type OutgoingValue struct { + handle *witRuntime.Handle +} + +func (self *OutgoingValue) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *OutgoingValue) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *OutgoingValue) Handle() int32 { + return self.handle.Use() +} + +func (self *OutgoingValue) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropOutgoingValue(handle) + } +} + +func OutgoingValueFromOwnHandle(handleValue int32) *OutgoingValue { + handle := witRuntime.MakeHandle(handleValue) + value := &OutgoingValue{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropOutgoingValue(handleValue) + } + }, 0) + return value +} + +func OutgoingValueFromBorrowHandle(handleValue int32) *OutgoingValue { + handle := witRuntime.MakeHandle(handleValue) + return &OutgoingValue{handle} +} + +//go:wasmimport wasi:blobstore/types [resource-drop]incoming-value +func resourceDropIncomingValue(handle int32) + +// A incoming-value is a wrapper around a value. +// +// The incoming-value provides two ways to consume the value: +// 1. `incoming-value-consume-sync` consumes the value synchronously and returns the +// value as a list of bytes. +// 2. `incoming-value-consume-async` consumes the value asynchronously and returns the +// value as a `stream`. +// +// Soon: switch to `resource incoming-value { ... }` +type IncomingValue struct { + handle *witRuntime.Handle +} + +func (self *IncomingValue) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *IncomingValue) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *IncomingValue) Handle() int32 { + return self.handle.Use() +} + +func (self *IncomingValue) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropIncomingValue(handle) + } +} + +func IncomingValueFromOwnHandle(handleValue int32) *IncomingValue { + handle := witRuntime.MakeHandle(handleValue) + value := &IncomingValue{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropIncomingValue(handleValue) + } + }, 0) + return value +} + +func IncomingValueFromBorrowHandle(handleValue int32) *IncomingValue { + handle := witRuntime.MakeHandle(handleValue) + return &IncomingValue{handle} +} + +//go:wasmimport wasi:blobstore/types [static]outgoing-value.new-outgoing-value +func wasm_import_static_outgoing_value_new_outgoing_value() int32 + +func OutgoingValueNewOutgoingValue() *OutgoingValue { + + result := wasm_import_static_outgoing_value_new_outgoing_value() + return OutgoingValueFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:blobstore/types [method]outgoing-value.outgoing-value-write-body +func wasm_import_method_outgoing_value_outgoing_value_write_body(arg0 int32, arg1 int32) int32 + +func (self *OutgoingValue) OutgoingValueWriteBody(data *witTypes.StreamReader[uint8]) witTypes.Result[witTypes.Unit, witTypes.Unit] { + + result := wasm_import_method_outgoing_value_outgoing_value_write_body((self).Handle(), (data).TakeHandle()) + var result0 witTypes.Result[witTypes.Unit, witTypes.Unit] + switch result { + case 0: + + result0 = witTypes.Ok[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + case 1: + + result0 = witTypes.Err[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + default: + panic("unreachable") + } + return result0 + +} + +//go:wasmimport wasi:blobstore/types [method]incoming-value.incoming-value-consume-sync +func wasm_import_method_incoming_value_incoming_value_consume_sync(arg0 int32, arg1 uintptr) + +func (self *IncomingValue) IncomingValueConsumeSync() witTypes.Result[[]uint8, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_incoming_value_incoming_value_consume_sync((self).Handle(), returnArea) + var result witTypes.Result[[]uint8, string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Ok[[]uint8, string](value) + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[[]uint8, string](value0) + default: + panic("unreachable") + } + result1 := result + return result1 + +} + +//go:wasmimport wasi:blobstore/types [method]incoming-value.incoming-value-consume-async +func wasm_import_method_incoming_value_incoming_value_consume_async(arg0 int32, arg1 uintptr) + +func (self *IncomingValue) IncomingValueConsumeAsync() witTypes.Result[*witTypes.StreamReader[uint8], string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_incoming_value_incoming_value_consume_async((self).Handle(), returnArea) + var result witTypes.Result[*witTypes.StreamReader[uint8], string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*witTypes.StreamReader[uint8], string](LiftStreamU8(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))) + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Err[*witTypes.StreamReader[uint8], string](value) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:blobstore/types [method]incoming-value.size +func wasm_import_method_incoming_value_size(arg0 int32) int64 + +func (self *IncomingValue) Size() uint64 { + + result := wasm_import_method_incoming_value_size((self).Handle()) + return uint64(result) + +} diff --git a/sdks/go/internal/wit/wasi_cli_0_3_0_environment/empty.s b/sdks/go/internal/wit/wasi_cli_0_3_0_environment/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_cli_0_3_0_environment/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go b/sdks/go/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go new file mode 100644 index 0000000000..7ce3a23b48 --- /dev/null +++ b/sdks/go/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go @@ -0,0 +1,110 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_cli_0_3_0_environment + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +//go:wasmimport wasi:cli/environment@0.3.0 get-environment +func wasm_import_get_environment(arg0 uintptr) + +func GetEnvironment() []witTypes.Tuple2[string, string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_get_environment(returnArea) + result := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result = append(result, witTypes.Tuple2[string, string]{value, value0}) + } + + result1 := result + return result1 + +} + +//go:wasmimport wasi:cli/environment@0.3.0 get-arguments +func wasm_import_get_arguments(arg0 uintptr) + +func GetArguments() []string { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_get_arguments(returnArea) + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(2*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value) + } + + result0 := result + return result0 + +} + +//go:wasmimport wasi:cli/environment@0.3.0 get-initial-cwd +func wasm_import_get_initial_cwd(arg0 uintptr) + +func GetInitialCwd() witTypes.Option[string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_get_initial_cwd(returnArea) + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + result := option + return result + +} diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s b/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go b/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go new file mode 100644 index 0000000000..b0c7802905 --- /dev/null +++ b/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go @@ -0,0 +1,85 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_clocks_0_3_0_system_clock + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + "runtime" + "unsafe" +) + +type Duration = uint64 + +// An "instant", or "exact time", is a point in time without regard to any +// time zone: just the time since a particular external reference point, +// often called an "epoch". +// +// Here, the epoch is 1970-01-01T00:00:00Z, also known as +// [POSIX's Seconds Since the Epoch], also known as [Unix Time]. +// +// Note that even if the seconds field is negative, incrementing +// nanoseconds always represents moving forwards in time. +// For example, `{ -1 seconds, 999999999 nanoseconds }` represents the +// instant one nanosecond before the epoch. +// For more on various different ways to represent time, see +// https://tc39.es/proposal-temporal/docs/timezone.html +// +// [POSIX's Seconds Since the Epoch]: https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap04.html#tag_21_04_16 +// [Unix Time]: https://en.wikipedia.org/wiki/Unix_time +type Instant struct { + Seconds int64 + Nanoseconds uint32 +} + +//go:wasmimport wasi:clocks/system-clock@0.3.0 now +func wasm_import_now(arg0 uintptr) + +func Now() Instant { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 16, 8)) + wasm_import_now(returnArea) + result := Instant{*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 0)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))} + return result + +} + +//go:wasmimport wasi:clocks/system-clock@0.3.0 get-resolution +func wasm_import_get_resolution() int64 + +func GetResolution() uint64 { + + result := wasm_import_get_resolution() + return uint64(result) + +} diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_types/empty.s b/sdks/go/internal/wit/wasi_clocks_0_3_0_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_clocks_0_3_0_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go b/sdks/go/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go new file mode 100644 index 0000000000..948f527b28 --- /dev/null +++ b/sdks/go/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go @@ -0,0 +1,37 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_clocks_0_3_0_types + +import () + +// A duration of time, in nanoseconds. +type Duration = uint64 diff --git a/sdks/go/internal/wit/wasi_config_store/empty.s b/sdks/go/internal/wit/wasi_config_store/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_config_store/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_config_store/wit_bindings.go b/sdks/go/internal/wit/wasi_config_store/wit_bindings.go new file mode 100644 index 0000000000..9beb0c4e61 --- /dev/null +++ b/sdks/go/internal/wit/wasi_config_store/wit_bindings.go @@ -0,0 +1,185 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_config_store + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +const ( + // This indicates an error from an "upstream" config source. + // As this could be almost _anything_ (such as Vault, Kubernetes ConfigMaps, KeyValue buckets, etc), + // the error message is a string. + ErrorUpstream uint8 = 0 + // This indicates an error from an I/O operation. + // As this could be almost _anything_ (such as a file read, network connection, etc), + // the error message is a string. + // Depending on how this ends up being consumed, + // we may consider moving this to use the `wasi:io/error` type instead. + // For simplicity right now in supporting multiple implementations, it is being left as a string. + ErrorIo uint8 = 1 +) + +// An error type that encapsulates the different errors that can occur fetching configuration values. +type Error struct { + tag uint8 + value any +} + +func (self Error) Tag() uint8 { + return self.tag +} + +func (self Error) Upstream() string { + if self.tag != ErrorUpstream { + panic("tag mismatch") + } + return self.value.(string) +} +func (self Error) Io() string { + if self.tag != ErrorIo { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeErrorUpstream(value string) Error { + return Error{ErrorUpstream, value} +} +func MakeErrorIo(value string) Error { + return Error{ErrorIo, value} +} + +//go:wasmimport wasi:config/store@0.2.0-draft get +func wasm_import_get(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func Get(key string) witTypes.Result[witTypes.Option[string], Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(key)) + pinner.Pin(utf8) + wasm_import_get(uintptr(utf8), uint32(len(key)), returnArea) + var result witTypes.Result[witTypes.Option[string], Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + + result = witTypes.Ok[witTypes.Option[string], Error](option) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorUpstream(value0) + + case 1: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorIo(value1) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Option[string], Error](variant) + default: + panic("unreachable") + } + result2 := result + return result2 + +} + +//go:wasmimport wasi:config/store@0.2.0-draft get-all +func wasm_import_get_all(arg0 uintptr) + +func GetAll() witTypes.Result[[]witTypes.Tuple2[string, string], Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_get_all(returnArea) + var result3 witTypes.Result[[]witTypes.Tuple2[string, string], Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result := make([]witTypes.Tuple2[string, string], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result = append(result, witTypes.Tuple2[string, string]{value, value0}) + } + + result3 = witTypes.Ok[[]witTypes.Tuple2[string, string], Error](result) + case 1: + var variant Error + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + value1 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorUpstream(value1) + + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeErrorIo(value2) + + default: + panic("unreachable") + } + + result3 = witTypes.Err[[]witTypes.Tuple2[string, string], Error](variant) + default: + panic("unreachable") + } + result4 := result3 + return result4 + +} diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_client/empty.s b/sdks/go/internal/wit/wasi_http_0_3_0_client/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_http_0_3_0_client/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go b/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go new file mode 100644 index 0000000000..8ea55e9a5a --- /dev/null +++ b/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go @@ -0,0 +1,483 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_http_0_3_0_client + +import ( + "github.com/golemcloud/golem-go/internal/wit/wasi_http_0_3_0_types" + witAsync "go.bytecodealliance.org/pkg/wit/async" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Request = wasi_http_0_3_0_types.Request +type Response = wasi_http_0_3_0_types.Response +type ErrorCode = wasi_http_0_3_0_types.ErrorCode + +//go:wasmimport wasi:http/client@0.3.0 [async-lower]send +func wasm_import_send(arg0 int32, arg1 uintptr) int32 + +func Send(request *wasi_http_0_3_0_types.Request) witTypes.Result[*wasi_http_0_3_0_types.Response, wasi_http_0_3_0_types.ErrorCode] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (24 + 4*4), 8)) + + witAsync.SubtaskWait(uint32(wasm_import_send((request).TakeHandle(), returnArea))) + var result witTypes.Result[*wasi_http_0_3_0_types.Response, wasi_http_0_3_0_types.ErrorCode] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*wasi_http_0_3_0_types.Response, wasi_http_0_3_0_types.ErrorCode](wasi_http_0_3_0_types.ResponseFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))))) + case 1: + var variant wasi_http_0_3_0_types.ErrorCode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 8))) { + case 0: + + variant = wasi_http_0_3_0_types.MakeErrorCodeDnsTimeout() + + case 1: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + var option0 witTypes.Option[uint16] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) { + case 0: + + option0 = witTypes.None[uint16]() + case 1: + + option0 = witTypes.Some[uint16](uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (18 + 3*4)))))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeDnsError(wasi_http_0_3_0_types.DnsErrorPayload{option, option0}) + + case 2: + + variant = wasi_http_0_3_0_types.MakeErrorCodeDestinationNotFound() + + case 3: + + variant = wasi_http_0_3_0_types.MakeErrorCodeDestinationUnavailable() + + case 4: + + variant = wasi_http_0_3_0_types.MakeErrorCodeDestinationIpProhibited() + + case 5: + + variant = wasi_http_0_3_0_types.MakeErrorCodeDestinationIpUnroutable() + + case 6: + + variant = wasi_http_0_3_0_types.MakeErrorCodeConnectionRefused() + + case 7: + + variant = wasi_http_0_3_0_types.MakeErrorCodeConnectionTerminated() + + case 8: + + variant = wasi_http_0_3_0_types.MakeErrorCodeConnectionTimeout() + + case 9: + + variant = wasi_http_0_3_0_types.MakeErrorCodeConnectionReadTimeout() + + case 10: + + variant = wasi_http_0_3_0_types.MakeErrorCodeConnectionWriteTimeout() + + case 11: + + variant = wasi_http_0_3_0_types.MakeErrorCodeConnectionLimitReached() + + case 12: + + variant = wasi_http_0_3_0_types.MakeErrorCodeTlsProtocolError() + + case 13: + + variant = wasi_http_0_3_0_types.MakeErrorCodeTlsCertificateError() + + case 14: + var option1 witTypes.Option[uint8] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option1 = witTypes.None[uint8]() + case 1: + + option1 = witTypes.Some[uint8](uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 17))))) + default: + panic("unreachable") + } + var option3 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))) { + case 0: + + option3 = witTypes.None[string]() + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) + + option3 = witTypes.Some[string](value2) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeTlsAlertReceived(wasi_http_0_3_0_types.TlsAlertReceivedPayload{option1, option3}) + + case 15: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestDenied() + + case 16: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestLengthRequired() + + case 17: + var option4 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option4 = witTypes.None[uint64]() + case 1: + + option4 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 24)))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestBodySize(option4) + + case 18: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestMethodInvalid() + + case 19: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestUriInvalid() + + case 20: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestUriTooLong() + + case 21: + var option5 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option5 = witTypes.None[uint32]() + case 1: + + option5 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestHeaderSectionSize(option5) + + case 22: + var option9 witTypes.Option[wasi_http_0_3_0_types.FieldSizePayload] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option9 = witTypes.None[wasi_http_0_3_0_types.FieldSizePayload]() + case 1: + var option7 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))) { + case 0: + + option7 = witTypes.None[string]() + case 1: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) + + option7 = witTypes.Some[string](value6) + default: + panic("unreachable") + } + var option8 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 4*4)))) { + case 0: + + option8 = witTypes.None[uint32]() + case 1: + + option8 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 4*4))))) + default: + panic("unreachable") + } + + option9 = witTypes.Some[wasi_http_0_3_0_types.FieldSizePayload](wasi_http_0_3_0_types.FieldSizePayload{option7, option8}) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestHeaderSize(option9) + + case 23: + var option10 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option10 = witTypes.None[uint32]() + case 1: + + option10 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestTrailerSectionSize(option10) + + case 24: + var option12 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option12 = witTypes.None[string]() + case 1: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) + + option12 = witTypes.Some[string](value11) + default: + panic("unreachable") + } + var option13 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) { + case 0: + + option13 = witTypes.None[uint32]() + case 1: + + option13 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpRequestTrailerSize(wasi_http_0_3_0_types.FieldSizePayload{option12, option13}) + + case 25: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseIncomplete() + + case 26: + var option14 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option14 = witTypes.None[uint32]() + case 1: + + option14 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseHeaderSectionSize(option14) + + case 27: + var option16 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option16 = witTypes.None[string]() + case 1: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) + + option16 = witTypes.Some[string](value15) + default: + panic("unreachable") + } + var option17 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) { + case 0: + + option17 = witTypes.None[uint32]() + case 1: + + option17 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseHeaderSize(wasi_http_0_3_0_types.FieldSizePayload{option16, option17}) + + case 28: + var option18 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option18 = witTypes.None[uint64]() + case 1: + + option18 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 24)))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseBodySize(option18) + + case 29: + var option19 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option19 = witTypes.None[uint32]() + case 1: + + option19 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 20)))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseTrailerSectionSize(option19) + + case 30: + var option21 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option21 = witTypes.None[string]() + case 1: + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) + + option21 = witTypes.Some[string](value20) + default: + panic("unreachable") + } + var option22 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 3*4)))) { + case 0: + + option22 = witTypes.None[uint32]() + case 1: + + option22 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseTrailerSize(wasi_http_0_3_0_types.FieldSizePayload{option21, option22}) + + case 31: + var option24 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option24 = witTypes.None[string]() + case 1: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) + + option24 = witTypes.Some[string](value23) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseTransferCoding(option24) + + case 32: + var option26 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option26 = witTypes.None[string]() + case 1: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) + + option26 = witTypes.Some[string](value25) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseContentCoding(option26) + + case 33: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpResponseTimeout() + + case 34: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpUpgradeFailed() + + case 35: + + variant = wasi_http_0_3_0_types.MakeErrorCodeHttpProtocolError() + + case 36: + + variant = wasi_http_0_3_0_types.MakeErrorCodeLoopDetected() + + case 37: + + variant = wasi_http_0_3_0_types.MakeErrorCodeConfigurationError() + + case 38: + var option28 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 16))) { + case 0: + + option28 = witTypes.None[string]() + case 1: + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (16 + 2*4)))) + + option28 = witTypes.Some[string](value27) + default: + panic("unreachable") + } + + variant = wasi_http_0_3_0_types.MakeErrorCodeInternalError(option28) + + default: + panic("unreachable") + } + + result = witTypes.Err[*wasi_http_0_3_0_types.Response, wasi_http_0_3_0_types.ErrorCode](variant) + default: + panic("unreachable") + } + + return result + +} diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_types/empty.s b/sdks/go/internal/wit/wasi_http_0_3_0_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_http_0_3_0_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_types/wit_bindings.go b/sdks/go/internal/wit/wasi_http_0_3_0_types/wit_bindings.go new file mode 100644 index 0000000000..94b49bb78d --- /dev/null +++ b/sdks/go/internal/wit/wasi_http_0_3_0_types/wit_bindings.go @@ -0,0 +1,4061 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_http_0_3_0_types + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +//go:wasmimport wasi:http/types@0.3.0 [stream-new-0][static]request.new +func wasm_stream_new_u8() uint64 + +//go:wasmimport wasi:http/types@0.3.0 [async-lower][stream-read-0][static]request.new +func wasm_stream_read_u8(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:http/types@0.3.0 [async-lower][stream-write-0][static]request.new +func wasm_stream_write_u8(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:http/types@0.3.0 [stream-drop-readable-0][static]request.new +func wasm_stream_drop_readable_u8(handle int32) + +//go:wasmimport wasi:http/types@0.3.0 [stream-drop-writable-0][static]request.new +func wasm_stream_drop_writable_u8(handle int32) + +var wasm_stream_vtable_u8 = witTypes.StreamVtable[uint8]{ + 1, + 1, + wasm_stream_read_u8, + wasm_stream_write_u8, + nil, + nil, + wasm_stream_drop_readable_u8, + wasm_stream_drop_writable_u8, + nil, + nil, +} + +func MakeStreamU8() (*witTypes.StreamWriter[uint8], *witTypes.StreamReader[uint8]) { + pair := wasm_stream_new_u8() + return witTypes.MakeStreamWriter[uint8](&wasm_stream_vtable_u8, int32(pair>>32)), + witTypes.MakeStreamReader[uint8](&wasm_stream_vtable_u8, int32(pair&0xFFFFFFFF)) +} + +func LiftStreamU8(handle int32) *witTypes.StreamReader[uint8] { + return witTypes.MakeStreamReader[uint8](&wasm_stream_vtable_u8, handle) +} + +//go:wasmimport wasi:http/types@0.3.0 [future-new-1][static]request.new +func wasm_future_new_result_option_fields_error_code() uint64 + +//go:wasmimport wasi:http/types@0.3.0 [async-lower][future-read-1][static]request.new +func wasm_future_read_result_option_fields_error_code(handle int32, item unsafe.Pointer) uint32 + +//go:wasmimport wasi:http/types@0.3.0 [async-lower][future-write-1][static]request.new +func wasm_future_write_result_option_fields_error_code(handle int32, item unsafe.Pointer) uint32 + +//go:wasmimport wasi:http/types@0.3.0 [future-drop-readable-1][static]request.new +func wasm_future_drop_readable_result_option_fields_error_code(handle int32) + +//go:wasmimport wasi:http/types@0.3.0 [future-drop-writable-1][static]request.new +func wasm_future_drop_writable_result_option_fields_error_code(handle int32) + +func wasm_future_lift_result_option_fields_error_code(src unsafe.Pointer) witTypes.Result[witTypes.Option[*Fields], ErrorCode] { + var result witTypes.Result[witTypes.Option[*Fields], ErrorCode] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 0))) { + case 0: + var option witTypes.Option[*Fields] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 8))) { + case 0: + + option = witTypes.None[*Fields]() + case 1: + + option = witTypes.Some[*Fields](FieldsFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(src), 12)))))) + default: + panic("unreachable") + } + + result = witTypes.Ok[witTypes.Option[*Fields], ErrorCode](option) + case 1: + var variant ErrorCode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 8))) { + case 0: + + variant = MakeErrorCodeDnsTimeout() + + case 1: + var option0 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option0 = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option0 = witTypes.Some[string](value) + default: + panic("unreachable") + } + var option1 witTypes.Option[uint16] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option1 = witTypes.None[uint16]() + case 1: + + option1 = witTypes.Some[uint16](uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (18 + 3*4)))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeDnsError(DnsErrorPayload{option0, option1}) + + case 2: + + variant = MakeErrorCodeDestinationNotFound() + + case 3: + + variant = MakeErrorCodeDestinationUnavailable() + + case 4: + + variant = MakeErrorCodeDestinationIpProhibited() + + case 5: + + variant = MakeErrorCodeDestinationIpUnroutable() + + case 6: + + variant = MakeErrorCodeConnectionRefused() + + case 7: + + variant = MakeErrorCodeConnectionTerminated() + + case 8: + + variant = MakeErrorCodeConnectionTimeout() + + case 9: + + variant = MakeErrorCodeConnectionReadTimeout() + + case 10: + + variant = MakeErrorCodeConnectionWriteTimeout() + + case 11: + + variant = MakeErrorCodeConnectionLimitReached() + + case 12: + + variant = MakeErrorCodeTlsProtocolError() + + case 13: + + variant = MakeErrorCodeTlsCertificateError() + + case 14: + var option2 witTypes.Option[uint8] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option2 = witTypes.None[uint8]() + case 1: + + option2 = witTypes.Some[uint8](uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 17))))) + default: + panic("unreachable") + } + var option4 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))) { + case 0: + + option4 = witTypes.None[string]() + case 1: + value3 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) + + option4 = witTypes.Some[string](value3) + default: + panic("unreachable") + } + + variant = MakeErrorCodeTlsAlertReceived(TlsAlertReceivedPayload{option2, option4}) + + case 15: + + variant = MakeErrorCodeHttpRequestDenied() + + case 16: + + variant = MakeErrorCodeHttpRequestLengthRequired() + + case 17: + var option5 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option5 = witTypes.None[uint64]() + case 1: + + option5 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(src), 24)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestBodySize(option5) + + case 18: + + variant = MakeErrorCodeHttpRequestMethodInvalid() + + case 19: + + variant = MakeErrorCodeHttpRequestUriInvalid() + + case 20: + + variant = MakeErrorCodeHttpRequestUriTooLong() + + case 21: + var option6 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option6 = witTypes.None[uint32]() + case 1: + + option6 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestHeaderSectionSize(option6) + + case 22: + var option10 witTypes.Option[FieldSizePayload] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option10 = witTypes.None[FieldSizePayload]() + case 1: + var option8 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))) { + case 0: + + option8 = witTypes.None[string]() + case 1: + value7 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) + + option8 = witTypes.Some[string](value7) + default: + panic("unreachable") + } + var option9 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 4*4)))) { + case 0: + + option9 = witTypes.None[uint32]() + case 1: + + option9 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 4*4))))) + default: + panic("unreachable") + } + + option10 = witTypes.Some[FieldSizePayload](FieldSizePayload{option8, option9}) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestHeaderSize(option10) + + case 23: + var option11 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option11 = witTypes.None[uint32]() + case 1: + + option11 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestTrailerSectionSize(option11) + + case 24: + var option13 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option13 = witTypes.None[string]() + case 1: + value12 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option13 = witTypes.Some[string](value12) + default: + panic("unreachable") + } + var option14 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option14 = witTypes.None[uint32]() + case 1: + + option14 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestTrailerSize(FieldSizePayload{option13, option14}) + + case 25: + + variant = MakeErrorCodeHttpResponseIncomplete() + + case 26: + var option15 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option15 = witTypes.None[uint32]() + case 1: + + option15 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseHeaderSectionSize(option15) + + case 27: + var option17 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option17 = witTypes.None[string]() + case 1: + value16 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option17 = witTypes.Some[string](value16) + default: + panic("unreachable") + } + var option18 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option18 = witTypes.None[uint32]() + case 1: + + option18 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseHeaderSize(FieldSizePayload{option17, option18}) + + case 28: + var option19 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option19 = witTypes.None[uint64]() + case 1: + + option19 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(src), 24)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseBodySize(option19) + + case 29: + var option20 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option20 = witTypes.None[uint32]() + case 1: + + option20 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseTrailerSectionSize(option20) + + case 30: + var option22 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option22 = witTypes.None[string]() + case 1: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option22 = witTypes.Some[string](value21) + default: + panic("unreachable") + } + var option23 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option23 = witTypes.None[uint32]() + case 1: + + option23 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseTrailerSize(FieldSizePayload{option22, option23}) + + case 31: + var option25 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option25 = witTypes.None[string]() + case 1: + value24 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option25 = witTypes.Some[string](value24) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseTransferCoding(option25) + + case 32: + var option27 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option27 = witTypes.None[string]() + case 1: + value26 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option27 = witTypes.Some[string](value26) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseContentCoding(option27) + + case 33: + + variant = MakeErrorCodeHttpResponseTimeout() + + case 34: + + variant = MakeErrorCodeHttpUpgradeFailed() + + case 35: + + variant = MakeErrorCodeHttpProtocolError() + + case 36: + + variant = MakeErrorCodeLoopDetected() + + case 37: + + variant = MakeErrorCodeConfigurationError() + + case 38: + var option29 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option29 = witTypes.None[string]() + case 1: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option29 = witTypes.Some[string](value28) + default: + panic("unreachable") + } + + variant = MakeErrorCodeInternalError(option29) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Option[*Fields], ErrorCode](variant) + default: + panic("unreachable") + } + + return result +} + +func wasm_future_lower_result_option_fields_error_code( + pinner *runtime.Pinner, + value witTypes.Result[witTypes.Option[*Fields], ErrorCode], + dst unsafe.Pointer, +) func() { + lifters := make([]func(), 0, 1) + + switch value.Tag() { + case witTypes.ResultOk: + payload := value.Ok() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 0)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(1)) + resource := payload + handle := resource.TakeHandle() + lifters = append(lifters, func() { + resource.SetHandle(handle) + }) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 12)) = handle + + default: + panic("unreachable") + } + + case witTypes.ResultErr: + payload := value.Err() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 0)) = int8(int32(1)) + + switch payload.Tag() { + case ErrorCodeDnsTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(0)) + + case ErrorCodeDnsError: + payload := payload.DnsError() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(1)) + + switch (payload).Rcode.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Rcode.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf8))) + + default: + panic("unreachable") + } + + switch (payload).InfoCode.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).InfoCode.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(dst), (18 + 3*4))) = int16(int32(payload)) + + default: + panic("unreachable") + } + + case ErrorCodeDestinationNotFound: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(2)) + + case ErrorCodeDestinationUnavailable: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(3)) + + case ErrorCodeDestinationIpProhibited: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(4)) + + case ErrorCodeDestinationIpUnroutable: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(5)) + + case ErrorCodeConnectionRefused: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(6)) + + case ErrorCodeConnectionTerminated: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(7)) + + case ErrorCodeConnectionTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(8)) + + case ErrorCodeConnectionReadTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(9)) + + case ErrorCodeConnectionWriteTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(10)) + + case ErrorCodeConnectionLimitReached: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(11)) + + case ErrorCodeTlsProtocolError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(12)) + + case ErrorCodeTlsCertificateError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(13)) + + case ErrorCodeTlsAlertReceived: + payload := payload.TlsAlertReceived() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(14)) + + switch (payload).AlertId.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AlertId.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 17)) = int8(int32(payload)) + + default: + panic("unreachable") + } + + switch (payload).AlertMessage.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AlertMessage.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(1)) + utf830 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf830) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uintptr(uintptr(utf830))) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestDenied: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(15)) + + case ErrorCodeHttpRequestLengthRequired: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(16)) + + case ErrorCodeHttpRequestBodySize: + payload := payload.HttpRequestBodySize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(17)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(dst), 24)) = int64(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestMethodInvalid: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(18)) + + case ErrorCodeHttpRequestUriInvalid: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(19)) + + case ErrorCodeHttpRequestUriTooLong: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(20)) + + case ErrorCodeHttpRequestHeaderSectionSize: + payload := payload.HttpRequestHeaderSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestHeaderSize: + payload := payload.HttpRequestHeaderSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(22)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(1)) + utf831 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf831) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uintptr(uintptr(utf831))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 4*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 4*4))) = int32(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestTrailerSectionSize: + payload := payload.HttpRequestTrailerSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(23)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestTrailerSize: + payload := payload.HttpRequestTrailerSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(24)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf832 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf832) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf832))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseIncomplete: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(25)) + + case ErrorCodeHttpResponseHeaderSectionSize: + payload := payload.HttpResponseHeaderSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(26)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseHeaderSize: + payload := payload.HttpResponseHeaderSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(27)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf833 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf833) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf833))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseBodySize: + payload := payload.HttpResponseBodySize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(28)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(dst), 24)) = int64(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTrailerSectionSize: + payload := payload.HttpResponseTrailerSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(29)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTrailerSize: + payload := payload.HttpResponseTrailerSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(30)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf834 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf834) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf834))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTransferCoding: + payload := payload.HttpResponseTransferCoding() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(31)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf835))) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseContentCoding: + payload := payload.HttpResponseContentCoding() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(32)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf836 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf836))) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(33)) + + case ErrorCodeHttpUpgradeFailed: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(34)) + + case ErrorCodeHttpProtocolError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(35)) + + case ErrorCodeLoopDetected: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(36)) + + case ErrorCodeConfigurationError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(37)) + + case ErrorCodeInternalError: + payload := payload.InternalError() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(38)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf837 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf837) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf837))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + return func() { + for _, lifter := range lifters { + lifter() + } + } +} + +var wasm_future_vtable_result_option_fields_error_code = witTypes.FutureVtable[witTypes.Result[witTypes.Option[*Fields], ErrorCode]]{ + (24 + 4*4), + 8, + wasm_future_read_result_option_fields_error_code, + wasm_future_write_result_option_fields_error_code, + nil, + nil, + wasm_future_drop_readable_result_option_fields_error_code, + wasm_future_drop_writable_result_option_fields_error_code, + wasm_future_lift_result_option_fields_error_code, + wasm_future_lower_result_option_fields_error_code, +} + +func MakeFutureResultOptionFieldsErrorCode() (*witTypes.FutureWriter[witTypes.Result[witTypes.Option[*Fields], ErrorCode]], *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]]) { + pair := wasm_future_new_result_option_fields_error_code() + return witTypes.MakeFutureWriter[witTypes.Result[witTypes.Option[*Fields], ErrorCode]](&wasm_future_vtable_result_option_fields_error_code, int32(pair>>32)), + witTypes.MakeFutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]](&wasm_future_vtable_result_option_fields_error_code, int32(pair&0xFFFFFFFF)) +} + +func LiftFutureResultOptionFieldsErrorCode(handle int32) *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]] { + return witTypes.MakeFutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]](&wasm_future_vtable_result_option_fields_error_code, handle) +} + +//go:wasmimport wasi:http/types@0.3.0 [future-new-2][static]request.new +func wasm_future_new_result_unit_error_code() uint64 + +//go:wasmimport wasi:http/types@0.3.0 [async-lower][future-read-2][static]request.new +func wasm_future_read_result_unit_error_code(handle int32, item unsafe.Pointer) uint32 + +//go:wasmimport wasi:http/types@0.3.0 [async-lower][future-write-2][static]request.new +func wasm_future_write_result_unit_error_code(handle int32, item unsafe.Pointer) uint32 + +//go:wasmimport wasi:http/types@0.3.0 [future-drop-readable-2][static]request.new +func wasm_future_drop_readable_result_unit_error_code(handle int32) + +//go:wasmimport wasi:http/types@0.3.0 [future-drop-writable-2][static]request.new +func wasm_future_drop_writable_result_unit_error_code(handle int32) + +func wasm_future_lift_result_unit_error_code(src unsafe.Pointer) witTypes.Result[witTypes.Unit, ErrorCode] { + var result witTypes.Result[witTypes.Unit, ErrorCode] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, ErrorCode](witTypes.Unit{}) + case 1: + var variant ErrorCode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 8))) { + case 0: + + variant = MakeErrorCodeDnsTimeout() + + case 1: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + var option0 witTypes.Option[uint16] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option0 = witTypes.None[uint16]() + case 1: + + option0 = witTypes.Some[uint16](uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (18 + 3*4)))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeDnsError(DnsErrorPayload{option, option0}) + + case 2: + + variant = MakeErrorCodeDestinationNotFound() + + case 3: + + variant = MakeErrorCodeDestinationUnavailable() + + case 4: + + variant = MakeErrorCodeDestinationIpProhibited() + + case 5: + + variant = MakeErrorCodeDestinationIpUnroutable() + + case 6: + + variant = MakeErrorCodeConnectionRefused() + + case 7: + + variant = MakeErrorCodeConnectionTerminated() + + case 8: + + variant = MakeErrorCodeConnectionTimeout() + + case 9: + + variant = MakeErrorCodeConnectionReadTimeout() + + case 10: + + variant = MakeErrorCodeConnectionWriteTimeout() + + case 11: + + variant = MakeErrorCodeConnectionLimitReached() + + case 12: + + variant = MakeErrorCodeTlsProtocolError() + + case 13: + + variant = MakeErrorCodeTlsCertificateError() + + case 14: + var option1 witTypes.Option[uint8] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option1 = witTypes.None[uint8]() + case 1: + + option1 = witTypes.Some[uint8](uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 17))))) + default: + panic("unreachable") + } + var option3 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))) { + case 0: + + option3 = witTypes.None[string]() + case 1: + value2 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) + + option3 = witTypes.Some[string](value2) + default: + panic("unreachable") + } + + variant = MakeErrorCodeTlsAlertReceived(TlsAlertReceivedPayload{option1, option3}) + + case 15: + + variant = MakeErrorCodeHttpRequestDenied() + + case 16: + + variant = MakeErrorCodeHttpRequestLengthRequired() + + case 17: + var option4 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option4 = witTypes.None[uint64]() + case 1: + + option4 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(src), 24)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestBodySize(option4) + + case 18: + + variant = MakeErrorCodeHttpRequestMethodInvalid() + + case 19: + + variant = MakeErrorCodeHttpRequestUriInvalid() + + case 20: + + variant = MakeErrorCodeHttpRequestUriTooLong() + + case 21: + var option5 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option5 = witTypes.None[uint32]() + case 1: + + option5 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestHeaderSectionSize(option5) + + case 22: + var option9 witTypes.Option[FieldSizePayload] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option9 = witTypes.None[FieldSizePayload]() + case 1: + var option7 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))) { + case 0: + + option7 = witTypes.None[string]() + case 1: + value6 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) + + option7 = witTypes.Some[string](value6) + default: + panic("unreachable") + } + var option8 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 4*4)))) { + case 0: + + option8 = witTypes.None[uint32]() + case 1: + + option8 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 4*4))))) + default: + panic("unreachable") + } + + option9 = witTypes.Some[FieldSizePayload](FieldSizePayload{option7, option8}) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestHeaderSize(option9) + + case 23: + var option10 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option10 = witTypes.None[uint32]() + case 1: + + option10 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestTrailerSectionSize(option10) + + case 24: + var option12 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option12 = witTypes.None[string]() + case 1: + value11 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option12 = witTypes.Some[string](value11) + default: + panic("unreachable") + } + var option13 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option13 = witTypes.None[uint32]() + case 1: + + option13 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpRequestTrailerSize(FieldSizePayload{option12, option13}) + + case 25: + + variant = MakeErrorCodeHttpResponseIncomplete() + + case 26: + var option14 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option14 = witTypes.None[uint32]() + case 1: + + option14 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseHeaderSectionSize(option14) + + case 27: + var option16 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option16 = witTypes.None[string]() + case 1: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option16 = witTypes.Some[string](value15) + default: + panic("unreachable") + } + var option17 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option17 = witTypes.None[uint32]() + case 1: + + option17 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseHeaderSize(FieldSizePayload{option16, option17}) + + case 28: + var option18 witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option18 = witTypes.None[uint64]() + case 1: + + option18 = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(src), 24)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseBodySize(option18) + + case 29: + var option19 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option19 = witTypes.None[uint32]() + case 1: + + option19 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), 20)))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseTrailerSectionSize(option19) + + case 30: + var option21 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option21 = witTypes.None[string]() + case 1: + value20 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option21 = witTypes.Some[string](value20) + default: + panic("unreachable") + } + var option22 witTypes.Option[uint32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 3*4)))) { + case 0: + + option22 = witTypes.None[uint32]() + case 1: + + option22 = witTypes.Some[uint32](uint32(*(*int32)(unsafe.Add(unsafe.Pointer(src), (20 + 3*4))))) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseTrailerSize(FieldSizePayload{option21, option22}) + + case 31: + var option24 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option24 = witTypes.None[string]() + case 1: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option24 = witTypes.Some[string](value23) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseTransferCoding(option24) + + case 32: + var option26 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option26 = witTypes.None[string]() + case 1: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option26 = witTypes.Some[string](value25) + default: + panic("unreachable") + } + + variant = MakeErrorCodeHttpResponseContentCoding(option26) + + case 33: + + variant = MakeErrorCodeHttpResponseTimeout() + + case 34: + + variant = MakeErrorCodeHttpUpgradeFailed() + + case 35: + + variant = MakeErrorCodeHttpProtocolError() + + case 36: + + variant = MakeErrorCodeLoopDetected() + + case 37: + + variant = MakeErrorCodeConfigurationError() + + case 38: + var option28 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(src), 16))) { + case 0: + + option28 = witTypes.None[string]() + case 1: + value27 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(src), (16 + 2*4)))) + + option28 = witTypes.Some[string](value27) + default: + panic("unreachable") + } + + variant = MakeErrorCodeInternalError(option28) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, ErrorCode](variant) + default: + panic("unreachable") + } + + return result +} + +func wasm_future_lower_result_unit_error_code( + pinner *runtime.Pinner, + value witTypes.Result[witTypes.Unit, ErrorCode], + dst unsafe.Pointer, +) func() { + + switch value.Tag() { + case witTypes.ResultOk: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 0)) = int8(int32(0)) + + case witTypes.ResultErr: + payload := value.Err() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 0)) = int8(int32(1)) + + switch payload.Tag() { + case ErrorCodeDnsTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(0)) + + case ErrorCodeDnsError: + payload := payload.DnsError() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(1)) + + switch (payload).Rcode.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Rcode.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf8))) + + default: + panic("unreachable") + } + + switch (payload).InfoCode.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).InfoCode.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int16)(unsafe.Add(unsafe.Pointer(dst), (18 + 3*4))) = int16(int32(payload)) + + default: + panic("unreachable") + } + + case ErrorCodeDestinationNotFound: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(2)) + + case ErrorCodeDestinationUnavailable: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(3)) + + case ErrorCodeDestinationIpProhibited: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(4)) + + case ErrorCodeDestinationIpUnroutable: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(5)) + + case ErrorCodeConnectionRefused: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(6)) + + case ErrorCodeConnectionTerminated: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(7)) + + case ErrorCodeConnectionTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(8)) + + case ErrorCodeConnectionReadTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(9)) + + case ErrorCodeConnectionWriteTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(10)) + + case ErrorCodeConnectionLimitReached: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(11)) + + case ErrorCodeTlsProtocolError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(12)) + + case ErrorCodeTlsCertificateError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(13)) + + case ErrorCodeTlsAlertReceived: + payload := payload.TlsAlertReceived() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(14)) + + switch (payload).AlertId.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AlertId.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 17)) = int8(int32(payload)) + + default: + panic("unreachable") + } + + switch (payload).AlertMessage.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AlertMessage.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(1)) + utf829 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf829) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uintptr(uintptr(utf829))) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestDenied: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(15)) + + case ErrorCodeHttpRequestLengthRequired: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(16)) + + case ErrorCodeHttpRequestBodySize: + payload := payload.HttpRequestBodySize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(17)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(dst), 24)) = int64(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestMethodInvalid: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(18)) + + case ErrorCodeHttpRequestUriInvalid: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(19)) + + case ErrorCodeHttpRequestUriTooLong: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(20)) + + case ErrorCodeHttpRequestHeaderSectionSize: + payload := payload.HttpRequestHeaderSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestHeaderSize: + payload := payload.HttpRequestHeaderSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(22)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = int8(int32(1)) + utf830 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf830) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uintptr(uintptr(utf830))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 4*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 4*4))) = int32(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestTrailerSectionSize: + payload := payload.HttpRequestTrailerSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(23)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpRequestTrailerSize: + payload := payload.HttpRequestTrailerSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(24)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf831 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf831) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf831))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseIncomplete: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(25)) + + case ErrorCodeHttpResponseHeaderSectionSize: + payload := payload.HttpResponseHeaderSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(26)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseHeaderSize: + payload := payload.HttpResponseHeaderSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(27)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf832 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf832) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf832))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseBodySize: + payload := payload.HttpResponseBodySize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(28)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(dst), 24)) = int64(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTrailerSectionSize: + payload := payload.HttpResponseTrailerSectionSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(29)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), 20)) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTrailerSize: + payload := payload.HttpResponseTrailerSize() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(30)) + + switch (payload).FieldName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf833 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf833) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf833))) + + default: + panic("unreachable") + } + + switch (payload).FieldSize.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).FieldSize.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(dst), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTransferCoding: + payload := payload.HttpResponseTransferCoding() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(31)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf834 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf834) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf834))) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseContentCoding: + payload := payload.HttpResponseContentCoding() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(32)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf835))) + + default: + panic("unreachable") + } + + case ErrorCodeHttpResponseTimeout: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(33)) + + case ErrorCodeHttpUpgradeFailed: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(34)) + + case ErrorCodeHttpProtocolError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(35)) + + case ErrorCodeLoopDetected: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(36)) + + case ErrorCodeConfigurationError: + + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(37)) + + case ErrorCodeInternalError: + payload := payload.InternalError() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 8)) = int8(int32(38)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(dst), 16)) = int8(int32(1)) + utf836 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(dst), (16 + 1*4))) = uint32(uintptr(uintptr(utf836))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + return func() {} +} + +var wasm_future_vtable_result_unit_error_code = witTypes.FutureVtable[witTypes.Result[witTypes.Unit, ErrorCode]]{ + (24 + 4*4), + 8, + wasm_future_read_result_unit_error_code, + wasm_future_write_result_unit_error_code, + nil, + nil, + wasm_future_drop_readable_result_unit_error_code, + wasm_future_drop_writable_result_unit_error_code, + wasm_future_lift_result_unit_error_code, + wasm_future_lower_result_unit_error_code, +} + +func MakeFutureResultUnitErrorCode() (*witTypes.FutureWriter[witTypes.Result[witTypes.Unit, ErrorCode]], *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]]) { + pair := wasm_future_new_result_unit_error_code() + return witTypes.MakeFutureWriter[witTypes.Result[witTypes.Unit, ErrorCode]](&wasm_future_vtable_result_unit_error_code, int32(pair>>32)), + witTypes.MakeFutureReader[witTypes.Result[witTypes.Unit, ErrorCode]](&wasm_future_vtable_result_unit_error_code, int32(pair&0xFFFFFFFF)) +} + +func LiftFutureResultUnitErrorCode(handle int32) *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]] { + return witTypes.MakeFutureReader[witTypes.Result[witTypes.Unit, ErrorCode]](&wasm_future_vtable_result_unit_error_code, handle) +} + +type Duration = uint64 + +const ( + MethodGet uint8 = 0 + MethodHead uint8 = 1 + MethodPost uint8 = 2 + MethodPut uint8 = 3 + MethodDelete uint8 = 4 + MethodConnect uint8 = 5 + MethodOptions uint8 = 6 + MethodTrace uint8 = 7 + MethodPatch uint8 = 8 + MethodOther uint8 = 9 +) + +// This type corresponds to HTTP standard Methods. +type Method struct { + tag uint8 + value any +} + +func (self Method) Tag() uint8 { + return self.tag +} + +func (self Method) Other() string { + if self.tag != MethodOther { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeMethodGet() Method { + return Method{MethodGet, nil} +} +func MakeMethodHead() Method { + return Method{MethodHead, nil} +} +func MakeMethodPost() Method { + return Method{MethodPost, nil} +} +func MakeMethodPut() Method { + return Method{MethodPut, nil} +} +func MakeMethodDelete() Method { + return Method{MethodDelete, nil} +} +func MakeMethodConnect() Method { + return Method{MethodConnect, nil} +} +func MakeMethodOptions() Method { + return Method{MethodOptions, nil} +} +func MakeMethodTrace() Method { + return Method{MethodTrace, nil} +} +func MakeMethodPatch() Method { + return Method{MethodPatch, nil} +} +func MakeMethodOther(value string) Method { + return Method{MethodOther, value} +} + +const ( + SchemeHttp uint8 = 0 + SchemeHttps uint8 = 1 + SchemeOther uint8 = 2 +) + +// This type corresponds to HTTP standard Related Schemes. +type Scheme struct { + tag uint8 + value any +} + +func (self Scheme) Tag() uint8 { + return self.tag +} + +func (self Scheme) Other() string { + if self.tag != SchemeOther { + panic("tag mismatch") + } + return self.value.(string) +} + +func MakeSchemeHttp() Scheme { + return Scheme{SchemeHttp, nil} +} +func MakeSchemeHttps() Scheme { + return Scheme{SchemeHttps, nil} +} +func MakeSchemeOther(value string) Scheme { + return Scheme{SchemeOther, value} +} + +// Defines the case payload type for `DNS-error` above: +type DnsErrorPayload struct { + Rcode witTypes.Option[string] + InfoCode witTypes.Option[uint16] +} + +// Defines the case payload type for `TLS-alert-received` above: +type TlsAlertReceivedPayload struct { + AlertId witTypes.Option[uint8] + AlertMessage witTypes.Option[string] +} + +// Defines the case payload type for `HTTP-response-{header,trailer}-size` above: +type FieldSizePayload struct { + FieldName witTypes.Option[string] + FieldSize witTypes.Option[uint32] +} + +const ( + ErrorCodeDnsTimeout uint8 = 0 + ErrorCodeDnsError uint8 = 1 + ErrorCodeDestinationNotFound uint8 = 2 + ErrorCodeDestinationUnavailable uint8 = 3 + ErrorCodeDestinationIpProhibited uint8 = 4 + ErrorCodeDestinationIpUnroutable uint8 = 5 + ErrorCodeConnectionRefused uint8 = 6 + ErrorCodeConnectionTerminated uint8 = 7 + ErrorCodeConnectionTimeout uint8 = 8 + ErrorCodeConnectionReadTimeout uint8 = 9 + ErrorCodeConnectionWriteTimeout uint8 = 10 + ErrorCodeConnectionLimitReached uint8 = 11 + ErrorCodeTlsProtocolError uint8 = 12 + ErrorCodeTlsCertificateError uint8 = 13 + ErrorCodeTlsAlertReceived uint8 = 14 + ErrorCodeHttpRequestDenied uint8 = 15 + ErrorCodeHttpRequestLengthRequired uint8 = 16 + ErrorCodeHttpRequestBodySize uint8 = 17 + ErrorCodeHttpRequestMethodInvalid uint8 = 18 + ErrorCodeHttpRequestUriInvalid uint8 = 19 + ErrorCodeHttpRequestUriTooLong uint8 = 20 + ErrorCodeHttpRequestHeaderSectionSize uint8 = 21 + ErrorCodeHttpRequestHeaderSize uint8 = 22 + ErrorCodeHttpRequestTrailerSectionSize uint8 = 23 + ErrorCodeHttpRequestTrailerSize uint8 = 24 + ErrorCodeHttpResponseIncomplete uint8 = 25 + ErrorCodeHttpResponseHeaderSectionSize uint8 = 26 + ErrorCodeHttpResponseHeaderSize uint8 = 27 + ErrorCodeHttpResponseBodySize uint8 = 28 + ErrorCodeHttpResponseTrailerSectionSize uint8 = 29 + ErrorCodeHttpResponseTrailerSize uint8 = 30 + ErrorCodeHttpResponseTransferCoding uint8 = 31 + ErrorCodeHttpResponseContentCoding uint8 = 32 + ErrorCodeHttpResponseTimeout uint8 = 33 + ErrorCodeHttpUpgradeFailed uint8 = 34 + ErrorCodeHttpProtocolError uint8 = 35 + ErrorCodeLoopDetected uint8 = 36 + ErrorCodeConfigurationError uint8 = 37 + // This is a catch-all error for anything that doesn't fit cleanly into a + // more specific case. It also includes an optional string for an + // unstructured description of the error. Users should not depend on the + // string for diagnosing errors, as it's not required to be consistent + // between implementations. + ErrorCodeInternalError uint8 = 38 +) + +// These cases are inspired by the IANA HTTP Proxy Error Types: +// +// +type ErrorCode struct { + tag uint8 + value any +} + +func (self ErrorCode) Tag() uint8 { + return self.tag +} + +func (self ErrorCode) DnsError() DnsErrorPayload { + if self.tag != ErrorCodeDnsError { + panic("tag mismatch") + } + return self.value.(DnsErrorPayload) +} +func (self ErrorCode) TlsAlertReceived() TlsAlertReceivedPayload { + if self.tag != ErrorCodeTlsAlertReceived { + panic("tag mismatch") + } + return self.value.(TlsAlertReceivedPayload) +} +func (self ErrorCode) HttpRequestBodySize() witTypes.Option[uint64] { + if self.tag != ErrorCodeHttpRequestBodySize { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint64]) +} +func (self ErrorCode) HttpRequestHeaderSectionSize() witTypes.Option[uint32] { + if self.tag != ErrorCodeHttpRequestHeaderSectionSize { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint32]) +} +func (self ErrorCode) HttpRequestHeaderSize() witTypes.Option[FieldSizePayload] { + if self.tag != ErrorCodeHttpRequestHeaderSize { + panic("tag mismatch") + } + return self.value.(witTypes.Option[FieldSizePayload]) +} +func (self ErrorCode) HttpRequestTrailerSectionSize() witTypes.Option[uint32] { + if self.tag != ErrorCodeHttpRequestTrailerSectionSize { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint32]) +} +func (self ErrorCode) HttpRequestTrailerSize() FieldSizePayload { + if self.tag != ErrorCodeHttpRequestTrailerSize { + panic("tag mismatch") + } + return self.value.(FieldSizePayload) +} +func (self ErrorCode) HttpResponseHeaderSectionSize() witTypes.Option[uint32] { + if self.tag != ErrorCodeHttpResponseHeaderSectionSize { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint32]) +} +func (self ErrorCode) HttpResponseHeaderSize() FieldSizePayload { + if self.tag != ErrorCodeHttpResponseHeaderSize { + panic("tag mismatch") + } + return self.value.(FieldSizePayload) +} +func (self ErrorCode) HttpResponseBodySize() witTypes.Option[uint64] { + if self.tag != ErrorCodeHttpResponseBodySize { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint64]) +} +func (self ErrorCode) HttpResponseTrailerSectionSize() witTypes.Option[uint32] { + if self.tag != ErrorCodeHttpResponseTrailerSectionSize { + panic("tag mismatch") + } + return self.value.(witTypes.Option[uint32]) +} +func (self ErrorCode) HttpResponseTrailerSize() FieldSizePayload { + if self.tag != ErrorCodeHttpResponseTrailerSize { + panic("tag mismatch") + } + return self.value.(FieldSizePayload) +} +func (self ErrorCode) HttpResponseTransferCoding() witTypes.Option[string] { + if self.tag != ErrorCodeHttpResponseTransferCoding { + panic("tag mismatch") + } + return self.value.(witTypes.Option[string]) +} +func (self ErrorCode) HttpResponseContentCoding() witTypes.Option[string] { + if self.tag != ErrorCodeHttpResponseContentCoding { + panic("tag mismatch") + } + return self.value.(witTypes.Option[string]) +} +func (self ErrorCode) InternalError() witTypes.Option[string] { + if self.tag != ErrorCodeInternalError { + panic("tag mismatch") + } + return self.value.(witTypes.Option[string]) +} + +func MakeErrorCodeDnsTimeout() ErrorCode { + return ErrorCode{ErrorCodeDnsTimeout, nil} +} +func MakeErrorCodeDnsError(value DnsErrorPayload) ErrorCode { + return ErrorCode{ErrorCodeDnsError, value} +} +func MakeErrorCodeDestinationNotFound() ErrorCode { + return ErrorCode{ErrorCodeDestinationNotFound, nil} +} +func MakeErrorCodeDestinationUnavailable() ErrorCode { + return ErrorCode{ErrorCodeDestinationUnavailable, nil} +} +func MakeErrorCodeDestinationIpProhibited() ErrorCode { + return ErrorCode{ErrorCodeDestinationIpProhibited, nil} +} +func MakeErrorCodeDestinationIpUnroutable() ErrorCode { + return ErrorCode{ErrorCodeDestinationIpUnroutable, nil} +} +func MakeErrorCodeConnectionRefused() ErrorCode { + return ErrorCode{ErrorCodeConnectionRefused, nil} +} +func MakeErrorCodeConnectionTerminated() ErrorCode { + return ErrorCode{ErrorCodeConnectionTerminated, nil} +} +func MakeErrorCodeConnectionTimeout() ErrorCode { + return ErrorCode{ErrorCodeConnectionTimeout, nil} +} +func MakeErrorCodeConnectionReadTimeout() ErrorCode { + return ErrorCode{ErrorCodeConnectionReadTimeout, nil} +} +func MakeErrorCodeConnectionWriteTimeout() ErrorCode { + return ErrorCode{ErrorCodeConnectionWriteTimeout, nil} +} +func MakeErrorCodeConnectionLimitReached() ErrorCode { + return ErrorCode{ErrorCodeConnectionLimitReached, nil} +} +func MakeErrorCodeTlsProtocolError() ErrorCode { + return ErrorCode{ErrorCodeTlsProtocolError, nil} +} +func MakeErrorCodeTlsCertificateError() ErrorCode { + return ErrorCode{ErrorCodeTlsCertificateError, nil} +} +func MakeErrorCodeTlsAlertReceived(value TlsAlertReceivedPayload) ErrorCode { + return ErrorCode{ErrorCodeTlsAlertReceived, value} +} +func MakeErrorCodeHttpRequestDenied() ErrorCode { + return ErrorCode{ErrorCodeHttpRequestDenied, nil} +} +func MakeErrorCodeHttpRequestLengthRequired() ErrorCode { + return ErrorCode{ErrorCodeHttpRequestLengthRequired, nil} +} +func MakeErrorCodeHttpRequestBodySize(value witTypes.Option[uint64]) ErrorCode { + return ErrorCode{ErrorCodeHttpRequestBodySize, value} +} +func MakeErrorCodeHttpRequestMethodInvalid() ErrorCode { + return ErrorCode{ErrorCodeHttpRequestMethodInvalid, nil} +} +func MakeErrorCodeHttpRequestUriInvalid() ErrorCode { + return ErrorCode{ErrorCodeHttpRequestUriInvalid, nil} +} +func MakeErrorCodeHttpRequestUriTooLong() ErrorCode { + return ErrorCode{ErrorCodeHttpRequestUriTooLong, nil} +} +func MakeErrorCodeHttpRequestHeaderSectionSize(value witTypes.Option[uint32]) ErrorCode { + return ErrorCode{ErrorCodeHttpRequestHeaderSectionSize, value} +} +func MakeErrorCodeHttpRequestHeaderSize(value witTypes.Option[FieldSizePayload]) ErrorCode { + return ErrorCode{ErrorCodeHttpRequestHeaderSize, value} +} +func MakeErrorCodeHttpRequestTrailerSectionSize(value witTypes.Option[uint32]) ErrorCode { + return ErrorCode{ErrorCodeHttpRequestTrailerSectionSize, value} +} +func MakeErrorCodeHttpRequestTrailerSize(value FieldSizePayload) ErrorCode { + return ErrorCode{ErrorCodeHttpRequestTrailerSize, value} +} +func MakeErrorCodeHttpResponseIncomplete() ErrorCode { + return ErrorCode{ErrorCodeHttpResponseIncomplete, nil} +} +func MakeErrorCodeHttpResponseHeaderSectionSize(value witTypes.Option[uint32]) ErrorCode { + return ErrorCode{ErrorCodeHttpResponseHeaderSectionSize, value} +} +func MakeErrorCodeHttpResponseHeaderSize(value FieldSizePayload) ErrorCode { + return ErrorCode{ErrorCodeHttpResponseHeaderSize, value} +} +func MakeErrorCodeHttpResponseBodySize(value witTypes.Option[uint64]) ErrorCode { + return ErrorCode{ErrorCodeHttpResponseBodySize, value} +} +func MakeErrorCodeHttpResponseTrailerSectionSize(value witTypes.Option[uint32]) ErrorCode { + return ErrorCode{ErrorCodeHttpResponseTrailerSectionSize, value} +} +func MakeErrorCodeHttpResponseTrailerSize(value FieldSizePayload) ErrorCode { + return ErrorCode{ErrorCodeHttpResponseTrailerSize, value} +} +func MakeErrorCodeHttpResponseTransferCoding(value witTypes.Option[string]) ErrorCode { + return ErrorCode{ErrorCodeHttpResponseTransferCoding, value} +} +func MakeErrorCodeHttpResponseContentCoding(value witTypes.Option[string]) ErrorCode { + return ErrorCode{ErrorCodeHttpResponseContentCoding, value} +} +func MakeErrorCodeHttpResponseTimeout() ErrorCode { + return ErrorCode{ErrorCodeHttpResponseTimeout, nil} +} +func MakeErrorCodeHttpUpgradeFailed() ErrorCode { + return ErrorCode{ErrorCodeHttpUpgradeFailed, nil} +} +func MakeErrorCodeHttpProtocolError() ErrorCode { + return ErrorCode{ErrorCodeHttpProtocolError, nil} +} +func MakeErrorCodeLoopDetected() ErrorCode { + return ErrorCode{ErrorCodeLoopDetected, nil} +} +func MakeErrorCodeConfigurationError() ErrorCode { + return ErrorCode{ErrorCodeConfigurationError, nil} +} +func MakeErrorCodeInternalError(value witTypes.Option[string]) ErrorCode { + return ErrorCode{ErrorCodeInternalError, value} +} + +const ( + // This error indicates that a `field-name` or `field-value` was + // syntactically invalid when used with an operation that sets headers in a + // `fields`. + HeaderErrorInvalidSyntax uint8 = 0 + // This error indicates that a forbidden `field-name` was used when trying + // to set a header in a `fields`. + HeaderErrorForbidden uint8 = 1 + // This error indicates that the operation on the `fields` was not + // permitted because the fields are immutable. + HeaderErrorImmutable uint8 = 2 + // This error indicates that the operation would exceed an + // implementation-defined limit on field sizes. This may apply to + // an individual `field-value`, a single `field-name` plus all its + // values, or the total aggregate size of all fields. + HeaderErrorSizeExceeded uint8 = 3 + // This is a catch-all error for anything that doesn't fit cleanly into a + // more specific case. Implementations can use this to extend the error + // type without breaking existing code. It also includes an optional + // string for an unstructured description of the error. Users should not + // depend on the string for diagnosing errors, as it's not required to be + // consistent between implementations. + HeaderErrorOther uint8 = 4 +) + +// This type enumerates the different kinds of errors that may occur when +// setting or appending to a `fields` resource. +type HeaderError struct { + tag uint8 + value any +} + +func (self HeaderError) Tag() uint8 { + return self.tag +} + +func (self HeaderError) Other() witTypes.Option[string] { + if self.tag != HeaderErrorOther { + panic("tag mismatch") + } + return self.value.(witTypes.Option[string]) +} + +func MakeHeaderErrorInvalidSyntax() HeaderError { + return HeaderError{HeaderErrorInvalidSyntax, nil} +} +func MakeHeaderErrorForbidden() HeaderError { + return HeaderError{HeaderErrorForbidden, nil} +} +func MakeHeaderErrorImmutable() HeaderError { + return HeaderError{HeaderErrorImmutable, nil} +} +func MakeHeaderErrorSizeExceeded() HeaderError { + return HeaderError{HeaderErrorSizeExceeded, nil} +} +func MakeHeaderErrorOther(value witTypes.Option[string]) HeaderError { + return HeaderError{HeaderErrorOther, value} +} + +const ( + // Indicates the specified field is not supported by this implementation. + RequestOptionsErrorNotSupported uint8 = 0 + // Indicates that the operation on the `request-options` was not permitted + // because it is immutable. + RequestOptionsErrorImmutable uint8 = 1 + // This is a catch-all error for anything that doesn't fit cleanly into a + // more specific case. Implementations can use this to extend the error + // type without breaking existing code. It also includes an optional + // string for an unstructured description of the error. Users should not + // depend on the string for diagnosing errors, as it's not required to be + // consistent between implementations. + RequestOptionsErrorOther uint8 = 2 +) + +// This type enumerates the different kinds of errors that may occur when +// setting fields of a `request-options` resource. +type RequestOptionsError struct { + tag uint8 + value any +} + +func (self RequestOptionsError) Tag() uint8 { + return self.tag +} + +func (self RequestOptionsError) Other() witTypes.Option[string] { + if self.tag != RequestOptionsErrorOther { + panic("tag mismatch") + } + return self.value.(witTypes.Option[string]) +} + +func MakeRequestOptionsErrorNotSupported() RequestOptionsError { + return RequestOptionsError{RequestOptionsErrorNotSupported, nil} +} +func MakeRequestOptionsErrorImmutable() RequestOptionsError { + return RequestOptionsError{RequestOptionsErrorImmutable, nil} +} +func MakeRequestOptionsErrorOther(value witTypes.Option[string]) RequestOptionsError { + return RequestOptionsError{RequestOptionsErrorOther, value} +} + +// Field names are always strings. +// +// Field names should always be treated as case insensitive by the `fields` +// resource for the purposes of equality checking. +type FieldName = string + +// Field values should always be ASCII strings. However, in +// reality, HTTP implementations often have to interpret malformed values, +// so they are provided as a list of bytes. +type FieldValue = []uint8 + +//go:wasmimport wasi:http/types@0.3.0 [resource-drop]fields +func resourceDropFields(handle int32) + +// This following block defines the `fields` resource which corresponds to +// HTTP standard Fields. Fields are a common representation used for both +// Headers and Trailers. +// +// A `fields` may be mutable or immutable. A `fields` created using the +// constructor, `from-list`, or `clone` will be mutable, but a `fields` +// resource given by other means (including, but not limited to, +// `request.headers`) might be be immutable. In an immutable fields, the +// `set`, `append`, and `delete` operations will fail with +// `header-error.immutable`. +// +// A `fields` resource should store `field-name`s and `field-value`s in their +// original casing used to construct or mutate the `fields` resource. The `fields` +// resource should use that original casing when serializing the fields for +// transport or when returning them from a method. +// +// Implementations may impose limits on individual field values and on total +// aggregate field section size. Operations that would exceed these limits +// fail with `header-error.size-exceeded` +type Fields struct { + handle *witRuntime.Handle +} + +func (self *Fields) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Fields) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Fields) Handle() int32 { + return self.handle.Use() +} + +func (self *Fields) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropFields(handle) + } +} + +func FieldsFromOwnHandle(handleValue int32) *Fields { + handle := witRuntime.MakeHandle(handleValue) + value := &Fields{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropFields(handleValue) + } + }, 0) + return value +} + +func FieldsFromBorrowHandle(handleValue int32) *Fields { + handle := witRuntime.MakeHandle(handleValue) + return &Fields{handle} +} + +// Headers is an alias for Fields. +type Headers = Fields + +// Trailers is an alias for Fields. +type Trailers = Fields + +//go:wasmimport wasi:http/types@0.3.0 [resource-drop]request +func resourceDropRequest(handle int32) + +// Represents an HTTP Request. +type Request struct { + handle *witRuntime.Handle +} + +func (self *Request) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Request) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Request) Handle() int32 { + return self.handle.Use() +} + +func (self *Request) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropRequest(handle) + } +} + +func RequestFromOwnHandle(handleValue int32) *Request { + handle := witRuntime.MakeHandle(handleValue) + value := &Request{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropRequest(handleValue) + } + }, 0) + return value +} + +func RequestFromBorrowHandle(handleValue int32) *Request { + handle := witRuntime.MakeHandle(handleValue) + return &Request{handle} +} + +//go:wasmimport wasi:http/types@0.3.0 [resource-drop]request-options +func resourceDropRequestOptions(handle int32) + +// Parameters for making an HTTP Request. Each of these parameters is +// currently an optional timeout applicable to the transport layer of the +// HTTP protocol. +// +// These timeouts are separate from any the user may use to bound an +// asynchronous call. +type RequestOptions struct { + handle *witRuntime.Handle +} + +func (self *RequestOptions) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *RequestOptions) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *RequestOptions) Handle() int32 { + return self.handle.Use() +} + +func (self *RequestOptions) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropRequestOptions(handle) + } +} + +func RequestOptionsFromOwnHandle(handleValue int32) *RequestOptions { + handle := witRuntime.MakeHandle(handleValue) + value := &RequestOptions{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropRequestOptions(handleValue) + } + }, 0) + return value +} + +func RequestOptionsFromBorrowHandle(handleValue int32) *RequestOptions { + handle := witRuntime.MakeHandle(handleValue) + return &RequestOptions{handle} +} + +// This type corresponds to the HTTP standard Status Code. +type StatusCode = uint16 + +//go:wasmimport wasi:http/types@0.3.0 [resource-drop]response +func resourceDropResponse(handle int32) + +// Represents an HTTP Response. +type Response struct { + handle *witRuntime.Handle +} + +func (self *Response) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Response) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Response) Handle() int32 { + return self.handle.Use() +} + +func (self *Response) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropResponse(handle) + } +} + +func ResponseFromOwnHandle(handleValue int32) *Response { + handle := witRuntime.MakeHandle(handleValue) + value := &Response{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropResponse(handleValue) + } + }, 0) + return value +} + +func ResponseFromBorrowHandle(handleValue int32) *Response { + handle := witRuntime.MakeHandle(handleValue) + return &Response{handle} +} + +//go:wasmimport wasi:http/types@0.3.0 [constructor]fields +func wasm_import_constructor_fields() int32 + +func MakeFields() *Fields { + + result := wasm_import_constructor_fields() + return FieldsFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:http/types@0.3.0 [static]fields.from-list +func wasm_import_static_fields_from_list(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func FieldsFromList(entries []witTypes.Tuple2[string, []uint8]) witTypes.Result[*Fields, HeaderError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + slice := entries + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(4*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(4*4)) + utf8 := unsafe.Pointer(unsafe.StringData((element).F0)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).F0))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + data := unsafe.Pointer(unsafe.SliceData((element).F1)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).F1))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(data))) + + } + + wasm_import_static_fields_from_list(uintptr(result), length, returnArea) + var result0 witTypes.Result[*Fields, HeaderError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result0 = witTypes.Ok[*Fields, HeaderError](FieldsFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + var variant HeaderError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeHeaderErrorInvalidSyntax() + + case 1: + + variant = MakeHeaderErrorForbidden() + + case 2: + + variant = MakeHeaderErrorImmutable() + + case 3: + + variant = MakeHeaderErrorSizeExceeded() + + case 4: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + + variant = MakeHeaderErrorOther(option) + + default: + panic("unreachable") + } + + result0 = witTypes.Err[*Fields, HeaderError](variant) + default: + panic("unreachable") + } + result1 := result0 + return result1 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.get +func wasm_import_method_fields_get(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *Fields) Get(name string) [][]uint8 { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_fields_get((self).Handle(), uintptr(utf8), uint32(len(name)), returnArea) + result := make([][]uint8, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(2*4)) + value := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value) + } + + result0 := result + return result0 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.has +func wasm_import_method_fields_has(arg0 int32, arg1 uintptr, arg2 uint32) int32 + +func (self *Fields) Has(name string) bool { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + result := wasm_import_method_fields_has((self).Handle(), uintptr(utf8), uint32(len(name))) + return (result != 0) + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.set +func wasm_import_method_fields_set(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *Fields) Set(name string, value [][]uint8) witTypes.Result[witTypes.Unit, HeaderError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + slice := value + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(2*4)) + data := unsafe.Pointer(unsafe.SliceData(element)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(data))) + + } + + wasm_import_method_fields_set((self).Handle(), uintptr(utf8), uint32(len(name)), uintptr(result), length, returnArea) + var result1 witTypes.Result[witTypes.Unit, HeaderError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result1 = witTypes.Ok[witTypes.Unit, HeaderError](witTypes.Unit{}) + case 1: + var variant HeaderError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeHeaderErrorInvalidSyntax() + + case 1: + + variant = MakeHeaderErrorForbidden() + + case 2: + + variant = MakeHeaderErrorImmutable() + + case 3: + + variant = MakeHeaderErrorSizeExceeded() + + case 4: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option = witTypes.None[string]() + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option = witTypes.Some[string](value0) + default: + panic("unreachable") + } + + variant = MakeHeaderErrorOther(option) + + default: + panic("unreachable") + } + + result1 = witTypes.Err[witTypes.Unit, HeaderError](variant) + default: + panic("unreachable") + } + result2 := result1 + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.delete +func wasm_import_method_fields_delete(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *Fields) Delete(name string) witTypes.Result[witTypes.Unit, HeaderError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_fields_delete((self).Handle(), uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[witTypes.Unit, HeaderError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, HeaderError](witTypes.Unit{}) + case 1: + var variant HeaderError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeHeaderErrorInvalidSyntax() + + case 1: + + variant = MakeHeaderErrorForbidden() + + case 2: + + variant = MakeHeaderErrorImmutable() + + case 3: + + variant = MakeHeaderErrorSizeExceeded() + + case 4: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + + variant = MakeHeaderErrorOther(option) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, HeaderError](variant) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.get-and-delete +func wasm_import_method_fields_get_and_delete(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *Fields) GetAndDelete(name string) witTypes.Result[[][]uint8, HeaderError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_method_fields_get_and_delete((self).Handle(), uintptr(utf8), uint32(len(name)), returnArea) + var result1 witTypes.Result[[][]uint8, HeaderError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result := make([][]uint8, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(2*4)) + value := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value) + } + + result1 = witTypes.Ok[[][]uint8, HeaderError](result) + case 1: + var variant HeaderError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeHeaderErrorInvalidSyntax() + + case 1: + + variant = MakeHeaderErrorForbidden() + + case 2: + + variant = MakeHeaderErrorImmutable() + + case 3: + + variant = MakeHeaderErrorSizeExceeded() + + case 4: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option = witTypes.None[string]() + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option = witTypes.Some[string](value0) + default: + panic("unreachable") + } + + variant = MakeHeaderErrorOther(option) + + default: + panic("unreachable") + } + + result1 = witTypes.Err[[][]uint8, HeaderError](variant) + default: + panic("unreachable") + } + result2 := result1 + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.append +func wasm_import_method_fields_append(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr, arg4 uint32, arg5 uintptr) + +func (self *Fields) Append(name string, value []uint8) witTypes.Result[witTypes.Unit, HeaderError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + data := unsafe.Pointer(unsafe.SliceData(value)) + pinner.Pin(data) + wasm_import_method_fields_append((self).Handle(), uintptr(utf8), uint32(len(name)), uintptr(data), uint32(len(value)), returnArea) + var result witTypes.Result[witTypes.Unit, HeaderError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, HeaderError](witTypes.Unit{}) + case 1: + var variant HeaderError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeHeaderErrorInvalidSyntax() + + case 1: + + variant = MakeHeaderErrorForbidden() + + case 2: + + variant = MakeHeaderErrorImmutable() + + case 3: + + variant = MakeHeaderErrorSizeExceeded() + + case 4: + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option = witTypes.None[string]() + case 1: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option = witTypes.Some[string](value0) + default: + panic("unreachable") + } + + variant = MakeHeaderErrorOther(option) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, HeaderError](variant) + default: + panic("unreachable") + } + result1 := result + return result1 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.copy-all +func wasm_import_method_fields_copy_all(arg0 int32, arg1 uintptr) + +func (self *Fields) CopyAll() []witTypes.Tuple2[string, []uint8] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_fields_copy_all((self).Handle(), returnArea) + result := make([]witTypes.Tuple2[string, []uint8], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0)))), index*(4*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + value0 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4)))) + + result = append(result, witTypes.Tuple2[string, []uint8]{value, value0}) + } + + result1 := result + return result1 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]fields.clone +func wasm_import_method_fields_clone(arg0 int32) int32 + +func (self *Fields) Clone() *Fields { + + result := wasm_import_method_fields_clone((self).Handle()) + return FieldsFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:http/types@0.3.0 [static]request.new +func wasm_import_static_request_new(arg0 int32, arg1 int32, arg2 int32, arg3 int32, arg4 int32, arg5 int32, arg6 uintptr) + +func RequestNew(headers *Fields, contents witTypes.Option[*witTypes.StreamReader[uint8]], trailers *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]], options witTypes.Option[*RequestOptions]) (*Request, *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]]) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + var option int32 + var option0 int32 + switch contents.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := contents.Some() + + option = int32(1) + option0 = (payload).TakeHandle() + default: + panic("unreachable") + } + var option1 int32 + var option2 int32 + switch options.Tag() { + case witTypes.OptionNone: + + option1 = int32(0) + option2 = 0 + case witTypes.OptionSome: + payload := options.Some() + + option1 = int32(1) + option2 = (payload).TakeHandle() + default: + panic("unreachable") + } + wasm_import_static_request_new((headers).TakeHandle(), option, option0, (trailers).TakeHandle(), option1, option2, returnArea) + result := witTypes.Tuple2[*Request, *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]]]{RequestFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), LiftFutureResultUnitErrorCode(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))} + tuple := result + return tuple.F0, tuple.F1 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.get-method +func wasm_import_method_request_get_method(arg0 int32, arg1 uintptr) + +func (self *Request) GetMethod() Method { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_request_get_method((self).Handle(), returnArea) + var variant Method + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + variant = MakeMethodGet() + + case 1: + + variant = MakeMethodHead() + + case 2: + + variant = MakeMethodPost() + + case 3: + + variant = MakeMethodPut() + + case 4: + + variant = MakeMethodDelete() + + case 5: + + variant = MakeMethodConnect() + + case 6: + + variant = MakeMethodOptions() + + case 7: + + variant = MakeMethodTrace() + + case 8: + + variant = MakeMethodPatch() + + case 9: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + variant = MakeMethodOther(value) + + default: + panic("unreachable") + } + result := variant + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.set-method +func wasm_import_method_request_set_method(arg0 int32, arg1 int32, arg2 uintptr, arg3 uint32) int32 + +func (self *Request) SetMethod(method Method) witTypes.Result[witTypes.Unit, witTypes.Unit] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + var variant int32 + var variant0 uintptr + var variant1 uint32 + switch method.Tag() { + case MethodGet: + + variant = int32(0) + variant0 = 0 + variant1 = 0 + + case MethodHead: + + variant = int32(1) + variant0 = 0 + variant1 = 0 + + case MethodPost: + + variant = int32(2) + variant0 = 0 + variant1 = 0 + + case MethodPut: + + variant = int32(3) + variant0 = 0 + variant1 = 0 + + case MethodDelete: + + variant = int32(4) + variant0 = 0 + variant1 = 0 + + case MethodConnect: + + variant = int32(5) + variant0 = 0 + variant1 = 0 + + case MethodOptions: + + variant = int32(6) + variant0 = 0 + variant1 = 0 + + case MethodTrace: + + variant = int32(7) + variant0 = 0 + variant1 = 0 + + case MethodPatch: + + variant = int32(8) + variant0 = 0 + variant1 = 0 + + case MethodOther: + payload := method.Other() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + variant = int32(9) + variant0 = uintptr(utf8) + variant1 = uint32(len(payload)) + + default: + panic("unreachable") + } + result := wasm_import_method_request_set_method((self).Handle(), variant, variant0, variant1) + var result2 witTypes.Result[witTypes.Unit, witTypes.Unit] + switch result { + case 0: + + result2 = witTypes.Ok[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + case 1: + + result2 = witTypes.Err[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + default: + panic("unreachable") + } + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.get-path-with-query +func wasm_import_method_request_get_path_with_query(arg0 int32, arg1 uintptr) + +func (self *Request) GetPathWithQuery() witTypes.Option[string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_request_get_path_with_query((self).Handle(), returnArea) + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.set-path-with-query +func wasm_import_method_request_set_path_with_query(arg0 int32, arg1 int32, arg2 uintptr, arg3 uint32) int32 + +func (self *Request) SetPathWithQuery(pathWithQuery witTypes.Option[string]) witTypes.Result[witTypes.Unit, witTypes.Unit] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + var option int32 + var option0 uintptr + var option1 uint32 + switch pathWithQuery.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + option1 = 0 + case witTypes.OptionSome: + payload := pathWithQuery.Some() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + option = int32(1) + option0 = uintptr(utf8) + option1 = uint32(len(payload)) + default: + panic("unreachable") + } + result := wasm_import_method_request_set_path_with_query((self).Handle(), option, option0, option1) + var result2 witTypes.Result[witTypes.Unit, witTypes.Unit] + switch result { + case 0: + + result2 = witTypes.Ok[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + case 1: + + result2 = witTypes.Err[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + default: + panic("unreachable") + } + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.get-scheme +func wasm_import_method_request_get_scheme(arg0 int32, arg1 uintptr) + +func (self *Request) GetScheme() witTypes.Option[Scheme] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (4 * 4), 4)) + wasm_import_method_request_get_scheme((self).Handle(), returnArea) + var option witTypes.Option[Scheme] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[Scheme]() + case 1: + var variant Scheme + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeSchemeHttp() + + case 1: + + variant = MakeSchemeHttps() + + case 2: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))) + + variant = MakeSchemeOther(value) + + default: + panic("unreachable") + } + + option = witTypes.Some[Scheme](variant) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.set-scheme +func wasm_import_method_request_set_scheme(arg0 int32, arg1 int32, arg2 int32, arg3 uintptr, arg4 uint32) int32 + +func (self *Request) SetScheme(scheme witTypes.Option[Scheme]) witTypes.Result[witTypes.Unit, witTypes.Unit] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + var option int32 + var option2 int32 + var option3 uintptr + var option4 uint32 + switch scheme.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option2 = 0 + option3 = 0 + option4 = 0 + case witTypes.OptionSome: + payload := scheme.Some() + var variant int32 + var variant0 uintptr + var variant1 uint32 + switch payload.Tag() { + case SchemeHttp: + + variant = int32(0) + variant0 = 0 + variant1 = 0 + + case SchemeHttps: + + variant = int32(1) + variant0 = 0 + variant1 = 0 + + case SchemeOther: + payload := payload.Other() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + variant = int32(2) + variant0 = uintptr(utf8) + variant1 = uint32(len(payload)) + + default: + panic("unreachable") + } + + option = int32(1) + option2 = variant + option3 = variant0 + option4 = variant1 + default: + panic("unreachable") + } + result := wasm_import_method_request_set_scheme((self).Handle(), option, option2, option3, option4) + var result5 witTypes.Result[witTypes.Unit, witTypes.Unit] + switch result { + case 0: + + result5 = witTypes.Ok[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + case 1: + + result5 = witTypes.Err[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + default: + panic("unreachable") + } + return result5 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.get-authority +func wasm_import_method_request_get_authority(arg0 int32, arg1 uintptr) + +func (self *Request) GetAuthority() witTypes.Option[string] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_request_get_authority((self).Handle(), returnArea) + var option witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + option = witTypes.Some[string](value) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.set-authority +func wasm_import_method_request_set_authority(arg0 int32, arg1 int32, arg2 uintptr, arg3 uint32) int32 + +func (self *Request) SetAuthority(authority witTypes.Option[string]) witTypes.Result[witTypes.Unit, witTypes.Unit] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + var option int32 + var option0 uintptr + var option1 uint32 + switch authority.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + option1 = 0 + case witTypes.OptionSome: + payload := authority.Some() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + option = int32(1) + option0 = uintptr(utf8) + option1 = uint32(len(payload)) + default: + panic("unreachable") + } + result := wasm_import_method_request_set_authority((self).Handle(), option, option0, option1) + var result2 witTypes.Result[witTypes.Unit, witTypes.Unit] + switch result { + case 0: + + result2 = witTypes.Ok[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + case 1: + + result2 = witTypes.Err[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + default: + panic("unreachable") + } + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.get-options +func wasm_import_method_request_get_options(arg0 int32, arg1 uintptr) + +func (self *Request) GetOptions() witTypes.Option[*RequestOptions] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + wasm_import_method_request_get_options((self).Handle(), returnArea) + var option witTypes.Option[*RequestOptions] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[*RequestOptions]() + case 1: + + option = witTypes.Some[*RequestOptions](RequestOptionsFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request.get-headers +func wasm_import_method_request_get_headers(arg0 int32) int32 + +func (self *Request) GetHeaders() *Fields { + + result := wasm_import_method_request_get_headers((self).Handle()) + return FieldsFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:http/types@0.3.0 [static]request.consume-body +func wasm_import_static_request_consume_body(arg0 int32, arg1 int32, arg2 uintptr) + +func RequestConsumeBody(this *Request, res *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]]) (*witTypes.StreamReader[uint8], *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]]) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + wasm_import_static_request_consume_body((this).TakeHandle(), (res).TakeHandle(), returnArea) + result := witTypes.Tuple2[*witTypes.StreamReader[uint8], *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]]]{LiftStreamU8(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 0))), LiftFutureResultOptionFieldsErrorCode(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))} + tuple := result + return tuple.F0, tuple.F1 + +} + +//go:wasmimport wasi:http/types@0.3.0 [constructor]request-options +func wasm_import_constructor_request_options() int32 + +func MakeRequestOptions() *RequestOptions { + + result := wasm_import_constructor_request_options() + return RequestOptionsFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request-options.get-connect-timeout +func wasm_import_method_request_options_get_connect_timeout(arg0 int32, arg1 uintptr) + +func (self *RequestOptions) GetConnectTimeout() witTypes.Option[uint64] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 16, 8)) + wasm_import_method_request_options_get_connect_timeout((self).Handle(), returnArea) + var option witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[uint64]() + case 1: + + option = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request-options.set-connect-timeout +func wasm_import_method_request_options_set_connect_timeout(arg0 int32, arg1 int32, arg2 int64, arg3 uintptr) + +func (self *RequestOptions) SetConnectTimeout(duration witTypes.Option[uint64]) witTypes.Result[witTypes.Unit, RequestOptionsError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + var option int32 + var option0 int64 + switch duration.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := duration.Some() + + option = int32(1) + option0 = int64(payload) + default: + panic("unreachable") + } + wasm_import_method_request_options_set_connect_timeout((self).Handle(), option, option0, returnArea) + var result witTypes.Result[witTypes.Unit, RequestOptionsError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, RequestOptionsError](witTypes.Unit{}) + case 1: + var variant RequestOptionsError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeRequestOptionsErrorNotSupported() + + case 1: + + variant = MakeRequestOptionsErrorImmutable() + + case 2: + var option1 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option1 = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option1 = witTypes.Some[string](value) + default: + panic("unreachable") + } + + variant = MakeRequestOptionsErrorOther(option1) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, RequestOptionsError](variant) + default: + panic("unreachable") + } + result2 := result + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request-options.get-first-byte-timeout +func wasm_import_method_request_options_get_first_byte_timeout(arg0 int32, arg1 uintptr) + +func (self *RequestOptions) GetFirstByteTimeout() witTypes.Option[uint64] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 16, 8)) + wasm_import_method_request_options_get_first_byte_timeout((self).Handle(), returnArea) + var option witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[uint64]() + case 1: + + option = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request-options.set-first-byte-timeout +func wasm_import_method_request_options_set_first_byte_timeout(arg0 int32, arg1 int32, arg2 int64, arg3 uintptr) + +func (self *RequestOptions) SetFirstByteTimeout(duration witTypes.Option[uint64]) witTypes.Result[witTypes.Unit, RequestOptionsError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + var option int32 + var option0 int64 + switch duration.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := duration.Some() + + option = int32(1) + option0 = int64(payload) + default: + panic("unreachable") + } + wasm_import_method_request_options_set_first_byte_timeout((self).Handle(), option, option0, returnArea) + var result witTypes.Result[witTypes.Unit, RequestOptionsError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, RequestOptionsError](witTypes.Unit{}) + case 1: + var variant RequestOptionsError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeRequestOptionsErrorNotSupported() + + case 1: + + variant = MakeRequestOptionsErrorImmutable() + + case 2: + var option1 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option1 = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option1 = witTypes.Some[string](value) + default: + panic("unreachable") + } + + variant = MakeRequestOptionsErrorOther(option1) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, RequestOptionsError](variant) + default: + panic("unreachable") + } + result2 := result + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request-options.get-between-bytes-timeout +func wasm_import_method_request_options_get_between_bytes_timeout(arg0 int32, arg1 uintptr) + +func (self *RequestOptions) GetBetweenBytesTimeout() witTypes.Option[uint64] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 16, 8)) + wasm_import_method_request_options_get_between_bytes_timeout((self).Handle(), returnArea) + var option witTypes.Option[uint64] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + option = witTypes.None[uint64]() + case 1: + + option = witTypes.Some[uint64](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + default: + panic("unreachable") + } + result := option + return result + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request-options.set-between-bytes-timeout +func wasm_import_method_request_options_set_between_bytes_timeout(arg0 int32, arg1 int32, arg2 int64, arg3 uintptr) + +func (self *RequestOptions) SetBetweenBytesTimeout(duration witTypes.Option[uint64]) witTypes.Result[witTypes.Unit, RequestOptionsError] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (5 * 4), 4)) + var option int32 + var option0 int64 + switch duration.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := duration.Some() + + option = int32(1) + option0 = int64(payload) + default: + panic("unreachable") + } + wasm_import_method_request_options_set_between_bytes_timeout((self).Handle(), option, option0, returnArea) + var result witTypes.Result[witTypes.Unit, RequestOptionsError] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, RequestOptionsError](witTypes.Unit{}) + case 1: + var variant RequestOptionsError + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + variant = MakeRequestOptionsErrorNotSupported() + + case 1: + + variant = MakeRequestOptionsErrorImmutable() + + case 2: + var option1 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) { + case 0: + + option1 = witTypes.None[string]() + case 1: + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (3 * 4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (4 * 4)))) + + option1 = witTypes.Some[string](value) + default: + panic("unreachable") + } + + variant = MakeRequestOptionsErrorOther(option1) + + default: + panic("unreachable") + } + + result = witTypes.Err[witTypes.Unit, RequestOptionsError](variant) + default: + panic("unreachable") + } + result2 := result + return result2 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]request-options.clone +func wasm_import_method_request_options_clone(arg0 int32) int32 + +func (self *RequestOptions) Clone() *RequestOptions { + + result := wasm_import_method_request_options_clone((self).Handle()) + return RequestOptionsFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:http/types@0.3.0 [static]response.new +func wasm_import_static_response_new(arg0 int32, arg1 int32, arg2 int32, arg3 int32, arg4 uintptr) + +func ResponseNew(headers *Fields, contents witTypes.Option[*witTypes.StreamReader[uint8]], trailers *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]]) (*Response, *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]]) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + var option int32 + var option0 int32 + switch contents.Tag() { + case witTypes.OptionNone: + + option = int32(0) + option0 = 0 + case witTypes.OptionSome: + payload := contents.Some() + + option = int32(1) + option0 = (payload).TakeHandle() + default: + panic("unreachable") + } + wasm_import_static_response_new((headers).TakeHandle(), option, option0, (trailers).TakeHandle(), returnArea) + result := witTypes.Tuple2[*Response, *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]]]{ResponseFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), LiftFutureResultUnitErrorCode(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))} + tuple := result + return tuple.F0, tuple.F1 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]response.get-status-code +func wasm_import_method_response_get_status_code(arg0 int32) int32 + +func (self *Response) GetStatusCode() uint16 { + + result := wasm_import_method_response_get_status_code((self).Handle()) + return uint16(result) + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]response.set-status-code +func wasm_import_method_response_set_status_code(arg0 int32, arg1 int32) int32 + +func (self *Response) SetStatusCode(statusCode uint16) witTypes.Result[witTypes.Unit, witTypes.Unit] { + + result := wasm_import_method_response_set_status_code((self).Handle(), int32(statusCode)) + var result0 witTypes.Result[witTypes.Unit, witTypes.Unit] + switch result { + case 0: + + result0 = witTypes.Ok[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + case 1: + + result0 = witTypes.Err[witTypes.Unit, witTypes.Unit](witTypes.Unit{}) + default: + panic("unreachable") + } + return result0 + +} + +//go:wasmimport wasi:http/types@0.3.0 [method]response.get-headers +func wasm_import_method_response_get_headers(arg0 int32) int32 + +func (self *Response) GetHeaders() *Fields { + + result := wasm_import_method_response_get_headers((self).Handle()) + return FieldsFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:http/types@0.3.0 [static]response.consume-body +func wasm_import_static_response_consume_body(arg0 int32, arg1 int32, arg2 uintptr) + +func ResponseConsumeBody(this *Response, res *witTypes.FutureReader[witTypes.Result[witTypes.Unit, ErrorCode]]) (*witTypes.StreamReader[uint8], *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]]) { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + wasm_import_static_response_consume_body((this).TakeHandle(), (res).TakeHandle(), returnArea) + result := witTypes.Tuple2[*witTypes.StreamReader[uint8], *witTypes.FutureReader[witTypes.Result[witTypes.Option[*Fields], ErrorCode]]]{LiftStreamU8(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 0))), LiftFutureResultOptionFieldsErrorCode(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))} + tuple := result + return tuple.F0, tuple.F1 + +} diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual/empty.s b/sdks/go/internal/wit/wasi_keyvalue_eventual/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_eventual/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go b/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go new file mode 100644 index 0000000000..1ce019652f --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go @@ -0,0 +1,166 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_keyvalue_eventual + +import ( + "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_types" + "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Bucket = wasi_keyvalue_types.Bucket +type Error = wasi_keyvalue_wasi_keyvalue_error.Error +type IncomingValue = wasi_keyvalue_types.IncomingValue +type Key = string +type OutgoingValue = wasi_keyvalue_types.OutgoingValue + +//go:wasmimport wasi:keyvalue/eventual@0.1.0 get +func wasm_import_get(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func Get(bucket *wasi_keyvalue_types.Bucket, key string) witTypes.Result[witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 12, 4)) + utf8 := unsafe.Pointer(unsafe.StringData(key)) + pinner.Pin(utf8) + wasm_import_get((bucket).Handle(), uintptr(utf8), uint32(len(key)), returnArea) + var result witTypes.Result[witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + var option witTypes.Option[*wasi_keyvalue_types.IncomingValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) { + case 0: + + option = witTypes.None[*wasi_keyvalue_types.IncomingValue]() + case 1: + + option = witTypes.Some[*wasi_keyvalue_types.IncomingValue](wasi_keyvalue_types.IncomingValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))))) + default: + panic("unreachable") + } + + result = witTypes.Ok[witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error](option) + case 1: + + result = witTypes.Err[witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/eventual@0.1.0 set +func wasm_import_set(arg0 int32, arg1 uintptr, arg2 uint32, arg3 int32, arg4 uintptr) + +func Set(bucket *wasi_keyvalue_types.Bucket, key string, outgoingValue *wasi_keyvalue_types.OutgoingValue) witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + utf8 := unsafe.Pointer(unsafe.StringData(key)) + pinner.Pin(utf8) + wasm_import_set((bucket).Handle(), uintptr(utf8), uint32(len(key)), (outgoingValue).Handle(), returnArea) + var result witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](witTypes.Unit{}) + case 1: + + result = witTypes.Err[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/eventual@0.1.0 delete +func wasm_import_delete(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func Delete(bucket *wasi_keyvalue_types.Bucket, key string) witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + utf8 := unsafe.Pointer(unsafe.StringData(key)) + pinner.Pin(utf8) + wasm_import_delete((bucket).Handle(), uintptr(utf8), uint32(len(key)), returnArea) + var result witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](witTypes.Unit{}) + case 1: + + result = witTypes.Err[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/eventual@0.1.0 exists +func wasm_import_exists(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func Exists(bucket *wasi_keyvalue_types.Bucket, key string) witTypes.Result[bool, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + utf8 := unsafe.Pointer(unsafe.StringData(key)) + pinner.Pin(utf8) + wasm_import_exists((bucket).Handle(), uintptr(utf8), uint32(len(key)), returnArea) + var result witTypes.Result[bool, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[bool, *wasi_keyvalue_wasi_keyvalue_error.Error]((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) != 0)) + case 1: + + result = witTypes.Err[bool, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/empty.s b/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go b/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go new file mode 100644 index 0000000000..19d353ba10 --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go @@ -0,0 +1,208 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_keyvalue_eventual_batch + +import ( + "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_types" + "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +type Bucket = wasi_keyvalue_types.Bucket +type Error = wasi_keyvalue_wasi_keyvalue_error.Error +type Key = string +type IncomingValue = wasi_keyvalue_types.IncomingValue +type OutgoingValue = wasi_keyvalue_types.OutgoingValue + +//go:wasmimport wasi:keyvalue/eventual-batch@0.1.0 get-many +func wasm_import_get_many(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func GetMany(bucket *wasi_keyvalue_types.Bucket, keys []string) witTypes.Result[[]witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + slice := keys + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(2*4)) + utf8 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + + } + + wasm_import_get_many((bucket).Handle(), uintptr(result), length, returnArea) + var result1 witTypes.Result[[]witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result0 := make([]witTypes.Option[*wasi_keyvalue_types.IncomingValue], 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*8) + var option witTypes.Option[*wasi_keyvalue_types.IncomingValue] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + option = witTypes.None[*wasi_keyvalue_types.IncomingValue]() + case 1: + + option = witTypes.Some[*wasi_keyvalue_types.IncomingValue](wasi_keyvalue_types.IncomingValueFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 4)))))) + default: + panic("unreachable") + } + + result0 = append(result0, option) + } + + result1 = witTypes.Ok[[]witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error](result0) + case 1: + + result1 = witTypes.Err[[]witTypes.Option[*wasi_keyvalue_types.IncomingValue], *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result2 := result1 + return result2 + +} + +//go:wasmimport wasi:keyvalue/eventual-batch@0.1.0 keys +func wasm_import_keys(arg0 int32, arg1 uintptr) + +func Keys(bucket *wasi_keyvalue_types.Bucket) witTypes.Result[[]string, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_keys((bucket).Handle(), returnArea) + var result0 witTypes.Result[[]string, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + result := make([]string, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))), index*(2*4)) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4))) + + result = append(result, value) + } + + result0 = witTypes.Ok[[]string, *wasi_keyvalue_wasi_keyvalue_error.Error](result) + case 1: + + result0 = witTypes.Err[[]string, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result1 := result0 + return result1 + +} + +//go:wasmimport wasi:keyvalue/eventual-batch@0.1.0 set-many +func wasm_import_set_many(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func SetMany(bucket *wasi_keyvalue_types.Bucket, keyValues []witTypes.Tuple2[string, *wasi_keyvalue_types.OutgoingValue]) witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + slice := keyValues + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(3*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(3*4)) + utf8 := unsafe.Pointer(unsafe.StringData((element).F0)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).F0))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = ((element).F1).Handle() + + } + + wasm_import_set_many((bucket).Handle(), uintptr(result), length, returnArea) + var result0 witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result0 = witTypes.Ok[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](witTypes.Unit{}) + case 1: + + result0 = witTypes.Err[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result1 := result0 + return result1 + +} + +//go:wasmimport wasi:keyvalue/eventual-batch@0.1.0 delete-many +func wasm_import_delete_many(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func DeleteMany(bucket *wasi_keyvalue_types.Bucket, keys []string) witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + slice := keys + length := uint32(len(slice)) + result := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result, index*(2*4)) + utf8 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + + } + + wasm_import_delete_many((bucket).Handle(), uintptr(result), length, returnArea) + var result0 witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result0 = witTypes.Ok[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](witTypes.Unit{}) + case 1: + + result0 = witTypes.Err[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result1 := result0 + return result1 + +} diff --git a/sdks/go/internal/wit/wasi_keyvalue_types/empty.s b/sdks/go/internal/wit/wasi_keyvalue_types/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_types/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go b/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go new file mode 100644 index 0000000000..92955106d7 --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go @@ -0,0 +1,409 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_keyvalue_types + +import ( + "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +//go:wasmimport wasi:keyvalue/types@0.1.0 [stream-new-0][method]outgoing-value.outgoing-value-write-body-async +func wasm_stream_new_u8() uint64 + +//go:wasmimport wasi:keyvalue/types@0.1.0 [async-lower][stream-read-0][method]outgoing-value.outgoing-value-write-body-async +func wasm_stream_read_u8(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:keyvalue/types@0.1.0 [async-lower][stream-write-0][method]outgoing-value.outgoing-value-write-body-async +func wasm_stream_write_u8(handle int32, item unsafe.Pointer, count uint32) uint32 + +//go:wasmimport wasi:keyvalue/types@0.1.0 [stream-drop-readable-0][method]outgoing-value.outgoing-value-write-body-async +func wasm_stream_drop_readable_u8(handle int32) + +//go:wasmimport wasi:keyvalue/types@0.1.0 [stream-drop-writable-0][method]outgoing-value.outgoing-value-write-body-async +func wasm_stream_drop_writable_u8(handle int32) + +var wasm_stream_vtable_u8 = witTypes.StreamVtable[uint8]{ + 1, + 1, + wasm_stream_read_u8, + wasm_stream_write_u8, + nil, + nil, + wasm_stream_drop_readable_u8, + wasm_stream_drop_writable_u8, + nil, + nil, +} + +func MakeStreamU8() (*witTypes.StreamWriter[uint8], *witTypes.StreamReader[uint8]) { + pair := wasm_stream_new_u8() + return witTypes.MakeStreamWriter[uint8](&wasm_stream_vtable_u8, int32(pair>>32)), + witTypes.MakeStreamReader[uint8](&wasm_stream_vtable_u8, int32(pair&0xFFFFFFFF)) +} + +func LiftStreamU8(handle int32) *witTypes.StreamReader[uint8] { + return witTypes.MakeStreamReader[uint8](&wasm_stream_vtable_u8, handle) +} + +type Error = wasi_keyvalue_wasi_keyvalue_error.Error + +//go:wasmimport wasi:keyvalue/types@0.1.0 [resource-drop]bucket +func resourceDropBucket(handle int32) + +// A bucket is a collection of key-value pairs. Each key-value pair is stored +// as a entry in the bucket, and the bucket itself acts as a collection of all +// these entries. +// +// It is worth noting that the exact terminology for bucket in key-value stores +// can very depending on the specific implementation. For example, +// 1. Amazon DynamoDB calls a collection of key-value pairs a table +// 2. Redis has hashes, sets, and sorted sets as different types of collections +// 3. Cassandra calls a collection of key-value pairs a column family +// 4. MongoDB calls a collection of key-value pairs a collection +// 5. Riak calls a collection of key-value pairs a bucket +// 6. Memcached calls a collection of key-value pairs a slab +// 7. Azure Cosmos DB calls a collection of key-value pairs a container +// +// In this interface, we use the term `bucket` to refer to a collection of key-value +// Soon: switch to `resource bucket { ... }` +type Bucket struct { + handle *witRuntime.Handle +} + +func (self *Bucket) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Bucket) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Bucket) Handle() int32 { + return self.handle.Use() +} + +func (self *Bucket) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropBucket(handle) + } +} + +func BucketFromOwnHandle(handleValue int32) *Bucket { + handle := witRuntime.MakeHandle(handleValue) + value := &Bucket{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropBucket(handleValue) + } + }, 0) + return value +} + +func BucketFromBorrowHandle(handleValue int32) *Bucket { + handle := witRuntime.MakeHandle(handleValue) + return &Bucket{handle} +} + +// A key is a unique identifier for a value in a bucket. The key is used to +// retrieve the value from the bucket. +type Key = string + +//go:wasmimport wasi:keyvalue/types@0.1.0 [resource-drop]outgoing-value +func resourceDropOutgoingValue(handle int32) + +// A value is the data stored in a key-value pair. The value can be of any type +// that can be represented in a byte array. +// Soon: switch to `resource value { ... }` +type OutgoingValue struct { + handle *witRuntime.Handle +} + +func (self *OutgoingValue) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *OutgoingValue) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *OutgoingValue) Handle() int32 { + return self.handle.Use() +} + +func (self *OutgoingValue) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropOutgoingValue(handle) + } +} + +func OutgoingValueFromOwnHandle(handleValue int32) *OutgoingValue { + handle := witRuntime.MakeHandle(handleValue) + value := &OutgoingValue{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropOutgoingValue(handleValue) + } + }, 0) + return value +} + +func OutgoingValueFromBorrowHandle(handleValue int32) *OutgoingValue { + handle := witRuntime.MakeHandle(handleValue) + return &OutgoingValue{handle} +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [resource-drop]incoming-value +func resourceDropIncomingValue(handle int32) + +// A incoming-value is a wrapper around a value. It provides ways to read the value. +// +// The incoming-value provides two ways to consume the value: +// 1. `incoming-value-consume-sync` consumes the value synchronously and returns the +// value as a `list`. +// 2. `incoming-value-consume-async` consumes the value asynchronously and returns the +// value as a `stream`. +// +// In addition, it provides a `incoming-value-size` function to get the size of the value. +// This is useful when the value is large and the caller wants to allocate a buffer of +// the right size to consume the value. +// Soon: switch to `resource incoming-value { ... }` +type IncomingValue struct { + handle *witRuntime.Handle +} + +func (self *IncomingValue) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *IncomingValue) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *IncomingValue) Handle() int32 { + return self.handle.Use() +} + +func (self *IncomingValue) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropIncomingValue(handle) + } +} + +func IncomingValueFromOwnHandle(handleValue int32) *IncomingValue { + handle := witRuntime.MakeHandle(handleValue) + value := &IncomingValue{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropIncomingValue(handleValue) + } + }, 0) + return value +} + +func IncomingValueFromBorrowHandle(handleValue int32) *IncomingValue { + handle := witRuntime.MakeHandle(handleValue) + return &IncomingValue{handle} +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [static]bucket.open-bucket +func wasm_import_static_bucket_open_bucket(arg0 uintptr, arg1 uint32, arg2 uintptr) + +func BucketOpenBucket(name string) witTypes.Result[*Bucket, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + utf8 := unsafe.Pointer(unsafe.StringData(name)) + pinner.Pin(utf8) + wasm_import_static_bucket_open_bucket(uintptr(utf8), uint32(len(name)), returnArea) + var result witTypes.Result[*Bucket, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*Bucket, *wasi_keyvalue_wasi_keyvalue_error.Error](BucketFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + case 1: + + result = witTypes.Err[*Bucket, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [static]outgoing-value.new-outgoing-value +func wasm_import_static_outgoing_value_new_outgoing_value() int32 + +func OutgoingValueNewOutgoingValue() *OutgoingValue { + + result := wasm_import_static_outgoing_value_new_outgoing_value() + return OutgoingValueFromOwnHandle(int32(uintptr(result))) + +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [method]outgoing-value.outgoing-value-write-body-async +func wasm_import_method_outgoing_value_outgoing_value_write_body_async(arg0 int32, arg1 int32, arg2 uintptr) + +func (self *OutgoingValue) OutgoingValueWriteBodyAsync(data *witTypes.StreamReader[uint8]) witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + wasm_import_method_outgoing_value_outgoing_value_write_body_async((self).Handle(), (data).TakeHandle(), returnArea) + var result witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](witTypes.Unit{}) + case 1: + + result = witTypes.Err[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [method]outgoing-value.outgoing-value-write-body-sync +func wasm_import_method_outgoing_value_outgoing_value_write_body_sync(arg0 int32, arg1 uintptr, arg2 uint32, arg3 uintptr) + +func (self *OutgoingValue) OutgoingValueWriteBodySync(value []uint8) witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + data := unsafe.Pointer(unsafe.SliceData(value)) + pinner.Pin(data) + wasm_import_method_outgoing_value_outgoing_value_write_body_sync((self).Handle(), uintptr(data), uint32(len(value)), returnArea) + var result witTypes.Result[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](witTypes.Unit{}) + case 1: + + result = witTypes.Err[witTypes.Unit, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [method]incoming-value.incoming-value-consume-sync +func wasm_import_method_incoming_value_incoming_value_consume_sync(arg0 int32, arg1 uintptr) + +func (self *IncomingValue) IncomingValueConsumeSync() witTypes.Result[[]uint8, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (3 * 4), 4)) + wasm_import_method_incoming_value_incoming_value_consume_sync((self).Handle(), returnArea) + var result witTypes.Result[[]uint8, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + value := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), (2 * 4)))) + + result = witTypes.Ok[[]uint8, *wasi_keyvalue_wasi_keyvalue_error.Error](value) + case 1: + + result = witTypes.Err[[]uint8, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [method]incoming-value.incoming-value-consume-async +func wasm_import_method_incoming_value_incoming_value_consume_async(arg0 int32, arg1 uintptr) + +func (self *IncomingValue) IncomingValueConsumeAsync() witTypes.Result[*witTypes.StreamReader[uint8], *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 8, 4)) + wasm_import_method_incoming_value_incoming_value_consume_async((self).Handle(), returnArea) + var result witTypes.Result[*witTypes.StreamReader[uint8], *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[*witTypes.StreamReader[uint8], *wasi_keyvalue_wasi_keyvalue_error.Error](LiftStreamU8(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))) + case 1: + + result = witTypes.Err[*witTypes.StreamReader[uint8], *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 4)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} + +//go:wasmimport wasi:keyvalue/types@0.1.0 [method]incoming-value.incoming-value-size +func wasm_import_method_incoming_value_incoming_value_size(arg0 int32, arg1 uintptr) + +func (self *IncomingValue) IncomingValueSize() witTypes.Result[uint64, *wasi_keyvalue_wasi_keyvalue_error.Error] { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, 16, 8)) + wasm_import_method_incoming_value_incoming_value_size((self).Handle(), returnArea) + var result witTypes.Result[uint64, *wasi_keyvalue_wasi_keyvalue_error.Error] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))) { + case 0: + + result = witTypes.Ok[uint64, *wasi_keyvalue_wasi_keyvalue_error.Error](uint64(*(*int64)(unsafe.Add(unsafe.Pointer(returnArea), 8)))) + case 1: + + result = witTypes.Err[uint64, *wasi_keyvalue_wasi_keyvalue_error.Error](wasi_keyvalue_wasi_keyvalue_error.ErrorFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(returnArea), 8)))))) + default: + panic("unreachable") + } + result0 := result + return result0 + +} diff --git a/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s b/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go b/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go new file mode 100644 index 0000000000..7749814c76 --- /dev/null +++ b/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go @@ -0,0 +1,111 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wasi_keyvalue_wasi_keyvalue_error + +import ( + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + "runtime" + "unsafe" +) + +//go:wasmimport wasi:keyvalue/wasi-keyvalue-error@0.1.0 [resource-drop]error +func resourceDropError(handle int32) + +// An error resource type for keyvalue operations. +// +// Common errors: +// - Connectivity errors (e.g. network errors): when the client cannot establish +// a connection to the keyvalue service. +// - Authentication and Authorization errors: when the client fails to authenticate +// or does not have the required permissions to perform the operation. +// - Data errors: when the client sends incompatible or corrupted data. +// - Resource errors: when the system runs out of resources (e.g. memory). +// - Internal errors: unexpected errors on the server side. +// +// Currently, this provides only one function to return a string representation +// of the error. In the future, this will be extended to provide more information +// about the error. +// Soon: switch to `resource error { ... }` +type Error struct { + handle *witRuntime.Handle +} + +func (self *Error) TakeHandle() int32 { + return self.handle.Take() +} + +func (self *Error) SetHandle(handle int32) { + self.handle.Set(handle) +} + +func (self *Error) Handle() int32 { + return self.handle.Use() +} + +func (self *Error) Drop() { + handle := self.handle.TakeOrNil() + if handle != 0 { + resourceDropError(handle) + } +} + +func ErrorFromOwnHandle(handleValue int32) *Error { + handle := witRuntime.MakeHandle(handleValue) + value := &Error{handle} + runtime.AddCleanup(value, func(_ int) { + handleValue := handle.TakeOrNil() + if handleValue != 0 { + resourceDropError(handleValue) + } + }, 0) + return value +} + +func ErrorFromBorrowHandle(handleValue int32) *Error { + handle := witRuntime.MakeHandle(handleValue) + return &Error{handle} +} + +//go:wasmimport wasi:keyvalue/wasi-keyvalue-error@0.1.0 [method]error.trace +func wasm_import_method_error_trace(arg0 int32, arg1 uintptr) + +func (self *Error) Trace() string { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + + returnArea := uintptr(witRuntime.Allocate(pinner, (2 * 4), 4)) + wasm_import_method_error_trace((self).Handle(), returnArea) + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(returnArea), 4))) + result := value + return result + +} diff --git a/sdks/go/internal/wit/wit_exports/empty.s b/sdks/go/internal/wit/wit_exports/empty.s new file mode 100644 index 0000000000..308ab6016b --- /dev/null +++ b/sdks/go/internal/wit/wit_exports/empty.s @@ -0,0 +1,3 @@ +// This file exists for testing this package without WebAssembly, +// allowing empty function bodies with a //go:wasmimport directive. +// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/wit_exports/wit_exports.go b/sdks/go/internal/wit/wit_exports/wit_exports.go new file mode 100644 index 0000000000..7db42fe2f8 --- /dev/null +++ b/sdks/go/internal/wit/wit_exports/wit_exports.go @@ -0,0 +1,19733 @@ +// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! +// +// This code was generated from the following packages: +// golem:core@2.0.0 +// wasi:clocks@0.3.0 +// golem:api@1.5.0 +// golem:agent@2.0.0 +// golem:rdbms@1.5.0 +// golem:durability@1.5.0 +// golem:quota@1.5.0 +// golem:secrets@0.1.0 +// wasi:filesystem@0.3.0 +// wasi:sockets@0.3.0 +// wasi:random@0.3.0 +// wasi:cli@0.3.0 +// wasi:blobstore +// wasi:keyvalue@0.1.0 +// wasi:config@0.2.0-draft +// golem:websocket@1.5.0 +// wasi:http@0.3.0 +// golem:agent-guest +// golem:tool@0.1.0 +// wasi:io@0.2.6 +// wasi:clocks@0.2.6 +// wasi:filesystem@0.2.6 +// wasi:sockets@0.2.6 +// wasi:random@0.2.6 +// wasi:cli@0.2.6 +// wasi:http@0.2.6 +// wasi:logging + +package wit_exports + +import ( + "github.com/golemcloud/golem-go/internal/wit/export_golem_agent_guest" + "github.com/golemcloud/golem-go/internal/wit/export_golem_api_load_snapshot" + "github.com/golemcloud/golem-go/internal/wit/export_golem_api_save_snapshot" + "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witAsync "go.bytecodealliance.org/pkg/wit/async" + witRuntime "go.bytecodealliance.org/pkg/wit/runtime" + witTypes "go.bytecodealliance.org/pkg/wit/types" + "runtime" + "unsafe" +) + +var staticPinner = runtime.Pinner{} +var exportReturnArea = uintptr(witRuntime.Allocate(&staticPinner, (32 + 36*4), 8)) +var syncExportPinner = runtime.Pinner{} + +//go:wasmexport [async-lift]golem:api/save-snapshot@1.5.0#save +func wasm_export_golem_api_save_snapshot_save() int32 { + return int32(witAsync.Run(func() { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + result := export_golem_api_save_snapshot.Save() + data := unsafe.Pointer(unsafe.SliceData((result).Payload)) + pinner.Pin(data) + utf8 := unsafe.Pointer(unsafe.StringData((result).MimeType)) + pinner.Pin(utf8) + wasm_export_task_return_golem_api_save_snapshot_save(uintptr(data), uint32(len((result).Payload)), uintptr(utf8), uint32(len((result).MimeType))) + + })) +} + +//go:wasmexport [callback][async-lift]golem:api/save-snapshot@1.5.0#save +func wasm_export_callback_golem_api_save_snapshot_save(event0 uint32, event1 uint32, event2 uint32) uint32 { + return witAsync.Callback(event0, event1, event2) +} + +//go:wasmimport [export]golem:api/save-snapshot@1.5.0 [task-return]save +func wasm_export_task_return_golem_api_save_snapshot_save(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32) + +//go:wasmexport [async-lift]golem:api/load-snapshot@1.5.0#load +func wasm_export_golem_api_load_snapshot_load(arg0 uintptr, arg1 uint32, arg2 uintptr, arg3 uint32) int32 { + return int32(witAsync.Run(func() { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + value := unsafe.Slice((*uint8)(unsafe.Pointer(arg0)), arg1) + value0 := unsafe.String((*uint8)(unsafe.Pointer(arg2)), arg3) + witRuntime.Unpin() + result := export_golem_api_load_snapshot.Load(golem_api_host.Snapshot{value, value0}) + var option int32 + var option1 uintptr + var option2 uint32 + switch result.Tag() { + case witTypes.ResultOk: + + option = int32(0) + option1 = 0 + option2 = 0 + case witTypes.ResultErr: + payload := result.Err() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + option = int32(1) + option1 = uintptr(utf8) + option2 = uint32(len(payload)) + default: + panic("unreachable") + } + wasm_export_task_return_golem_api_load_snapshot_load(option, option1, option2) + + })) +} + +//go:wasmexport [callback][async-lift]golem:api/load-snapshot@1.5.0#load +func wasm_export_callback_golem_api_load_snapshot_load(event0 uint32, event1 uint32, event2 uint32) uint32 { + return witAsync.Callback(event0, event1, event2) +} + +//go:wasmimport [export]golem:api/load-snapshot@1.5.0 [task-return]load +func wasm_export_task_return_golem_api_load_snapshot_load(arg0 int32, arg1 uintptr, arg2 uint32) + +//go:wasmexport [async-lift]golem:agent/guest@2.0.0#initialize +func wasm_export_golem_agent_guest_initialize(arg0 uintptr) int32 { + return int32(witAsync.Run(func() { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), 4))) + result20 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (2 * 4))))), index*(16+4*4)) + var variant19 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant19 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant19 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant19 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant19 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant19 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant19 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant19 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant19 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant19 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant19 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant19 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant19 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeStringValue(value0) + + case 13: + result := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result = append(result, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeRecordValue(result) + + case 14: + var option witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option = witTypes.None[int32]() + case 1: + + option = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option}) + + case 15: + + variant19 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1 = append(result1, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant19 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1) + + case 17: + result2 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2 = append(result2, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeTupleValue(result2) + + case 18: + result3 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result3 = append(result3, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeListValue(result3) + + case 19: + result4 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result4 = append(result4, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeFixedListValue(result4) + + case 20: + result5 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result5 = append(result5, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant19 = golem_core_types.MakeSchemaValueNodeMapValue(result5) + + case 21: + var option6 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option6 = witTypes.None[int32]() + case 1: + + option6 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeOptionValue(option6) + + case 22: + var variant golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option7 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option7 = witTypes.None[int32]() + case 1: + + option7 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadOkValue(option7) + + case 1: + var option8 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option8 = witTypes.None[int32]() + case 1: + + option8 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadErrValue(option8) + + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeResultValue(variant) + + case 23: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option11 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option11 = witTypes.None[string]() + case 1: + value10 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option11 = witTypes.Some[string](value10) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value9, option11}) + + case 24: + value12 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option14 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option14 = witTypes.None[string]() + case 1: + value13 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option14 = witTypes.Some[string](value13) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value12, option14}) + + case 25: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodePathValue(value15) + + case 26: + value16 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeUrlValue(value16) + + case 27: + + variant19 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant19 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value17}) + + case 30: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value18, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant19 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant19 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result20 = append(result20, variant19) + } + + var variant38 golem_agent_common.Principal + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (8 + 4*4)))) { + case 0: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 5*4)))) + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 7*4)))) + var option24 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 8*4)))) { + case 0: + + option24 = witTypes.None[string]() + case 1: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 10*4)))) + + option24 = witTypes.Some[string](value23) + default: + panic("unreachable") + } + var option26 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 11*4)))) { + case 0: + + option26 = witTypes.None[string]() + case 1: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 13*4)))) + + option26 = witTypes.Some[string](value25) + default: + panic("unreachable") + } + var option27 witTypes.Option[bool] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 14*4)))) { + case 0: + + option27 = witTypes.None[bool]() + case 1: + + option27 = witTypes.Some[bool]((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (17 + 14*4)))) != 0)) + default: + panic("unreachable") + } + var option29 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 15*4)))) { + case 0: + + option29 = witTypes.None[string]() + case 1: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 17*4)))) + + option29 = witTypes.Some[string](value28) + default: + panic("unreachable") + } + var option31 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 18*4)))) { + case 0: + + option31 = witTypes.None[string]() + case 1: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 19*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 20*4)))) + + option31 = witTypes.Some[string](value30) + default: + panic("unreachable") + } + var option33 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 21*4)))) { + case 0: + + option33 = witTypes.None[string]() + case 1: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 22*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 23*4)))) + + option33 = witTypes.Some[string](value32) + default: + panic("unreachable") + } + var option35 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 24*4)))) { + case 0: + + option35 = witTypes.None[string]() + case 1: + value34 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 25*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 26*4)))) + + option35 = witTypes.Some[string](value34) + default: + panic("unreachable") + } + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 27*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 28*4)))) + + variant38 = golem_agent_common.MakePrincipalOidc(golem_agent_common.OidcPrincipal{value21, value22, option24, option26, option27, option29, option31, option33, option35, value36}) + + case 1: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (32 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (32 + 5*4)))) + + variant38 = golem_agent_common.MakePrincipalAgent(golem_agent_common.AgentPrincipal{golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (16 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (24 + 4*4))))}}, value37}}) + + case 2: + + variant38 = golem_agent_common.MakePrincipalGolemUser(golem_agent_common.GolemUserPrincipal{golem_core_types.AccountId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (16 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (24 + 4*4))))}}}) + + case 3: + + variant38 = golem_agent_common.MakePrincipalAnonymous() + + default: + panic("unreachable") + } + witRuntime.Unpin() + result39 := export_golem_agent_guest.Initialize(value, golem_core_types.SchemaValueTree{result20, *(*int32)(unsafe.Add(unsafe.Pointer(arg0), (4 * 4)))}, variant38) + var option207 int32 + var option208 int32 + var option209 uintptr + var option210 uint32 + var option211 uintptr + var option212 uint32 + var option213 int32 + var option214 uintptr + var option215 uint32 + var option216 int32 + switch result39.Tag() { + case witTypes.ResultOk: + + option207 = int32(0) + option208 = 0 + option209 = 0 + option210 = 0 + option211 = 0 + option212 = 0 + option213 = 0 + option214 = 0 + option215 = 0 + option216 = 0 + case witTypes.ResultErr: + payload := result39.Err() + var variant198 int32 + var variant199 uintptr + var variant200 uint32 + var variant201 uintptr + var variant202 uint32 + var variant203 int32 + var variant204 uintptr + var variant205 uint32 + var variant206 int32 + switch payload.Tag() { + case golem_agent_common.AgentErrorInvalidInput: + payload := payload.InvalidInput() + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + + variant198 = int32(0) + variant199 = uintptr(utf8) + variant200 = uint32(len(payload)) + variant201 = 0 + variant202 = 0 + variant203 = 0 + variant204 = 0 + variant205 = 0 + variant206 = 0 + + case golem_agent_common.AgentErrorInvalidMethod: + payload := payload.InvalidMethod() + utf840 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf840) + + variant198 = int32(1) + variant199 = uintptr(utf840) + variant200 = uint32(len(payload)) + variant201 = 0 + variant202 = 0 + variant203 = 0 + variant204 = 0 + variant205 = 0 + variant206 = 0 + + case golem_agent_common.AgentErrorInvalidType: + payload := payload.InvalidType() + utf841 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf841) + + variant198 = int32(2) + variant199 = uintptr(utf841) + variant200 = uint32(len(payload)) + variant201 = 0 + variant202 = 0 + variant203 = 0 + variant204 = 0 + variant205 = 0 + variant206 = 0 + + case golem_agent_common.AgentErrorInvalidAgentId: + payload := payload.InvalidAgentId() + utf842 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf842) + + variant198 = int32(3) + variant199 = uintptr(utf842) + variant200 = uint32(len(payload)) + variant201 = 0 + variant202 = 0 + variant203 = 0 + variant204 = 0 + variant205 = 0 + variant206 = 0 + + case golem_agent_common.AgentErrorCustomError: + payload := payload.CustomError() + slice159 := ((payload).Graph).TypeNodes + length161 := uint32(len(slice159)) + result160 := witRuntime.Allocate(pinner, uintptr(length161*(56+22*4)), 8) + for index, element := range slice159 { + base := unsafe.Add(result160, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf843 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf843) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf843))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf844 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf844) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf844))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf845 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf845) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf845))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf846 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf846) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf846))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf847 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf847) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf847))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf848 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf848) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf848))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf849 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf849) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf849))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf850 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf850) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf850))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf851 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf851) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf851))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf852 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf852) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf852))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice63 := payload + length65 := uint32(len(slice63)) + result64 := witRuntime.Allocate(pinner, uintptr(length65*(17*4)), 4) + for index, element := range slice63 { + base := unsafe.Add(result64, index*(17*4)) + utf853 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf853) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf853))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf854 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf854) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf854))) + + default: + panic("unreachable") + } + slice := ((element).Metadata).Aliases + length := uint32(len(slice)) + result56 := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result56, index*(2*4)) + utf855 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf855) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf855))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result56))) + slice58 := ((element).Metadata).Examples + length60 := uint32(len(slice58)) + result59 := witRuntime.Allocate(pinner, uintptr(length60*(2*4)), 4) + for index, element := range slice58 { + base := unsafe.Add(result59, index*(2*4)) + utf857 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf857) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf857))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length60) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result59))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf861 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf861) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf861))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf862 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf862) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf862))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length65) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result64))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice78 := payload + length80 := uint32(len(slice78)) + result79 := witRuntime.Allocate(pinner, uintptr(length80*(8+16*4)), 4) + for index, element := range slice78 { + base := unsafe.Add(result79, index*(8+16*4)) + utf866 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf866) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf866))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf867 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf867) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf867))) + + default: + panic("unreachable") + } + slice69 := ((element).Metadata).Aliases + length71 := uint32(len(slice69)) + result70 := witRuntime.Allocate(pinner, uintptr(length71*(2*4)), 4) + for index, element := range slice69 { + base := unsafe.Add(result70, index*(2*4)) + utf868 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf868) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf868))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length71) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result70))) + slice73 := ((element).Metadata).Examples + length75 := uint32(len(slice73)) + result74 := witRuntime.Allocate(pinner, uintptr(length75*(2*4)), 4) + for index, element := range slice73 { + base := unsafe.Add(result74, index*(2*4)) + utf872 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf872) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf872))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length75) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result74))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf876 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf876) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf876))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf877 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf877) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf877))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result79))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice82 := payload + length84 := uint32(len(slice82)) + result83 := witRuntime.Allocate(pinner, uintptr(length84*(2*4)), 4) + for index, element := range slice82 { + base := unsafe.Add(result83, index*(2*4)) + utf881 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf881))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result83))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice86 := payload + length88 := uint32(len(slice86)) + result87 := witRuntime.Allocate(pinner, uintptr(length88*(2*4)), 4) + for index, element := range slice86 { + base := unsafe.Add(result87, index*(2*4)) + utf885 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf885))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result87))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice89 := payload + length91 := uint32(len(slice89)) + result90 := witRuntime.Allocate(pinner, uintptr(length91*4), 4) + for index, element := range slice89 { + base := unsafe.Add(result90, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length91) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result90))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice93 := payload + length95 := uint32(len(slice93)) + result94 := witRuntime.Allocate(pinner, uintptr(length95*(2*4)), 4) + for index, element := range slice93 { + base := unsafe.Add(result94, index*(2*4)) + utf892 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf892) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf892))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length95) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result94))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf896 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf896) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf896))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice98 := payload + length100 := uint32(len(slice98)) + result99 := witRuntime.Allocate(pinner, uintptr(length100*(2*4)), 4) + for index, element := range slice98 { + base := unsafe.Add(result99, index*(2*4)) + utf897 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf897) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf897))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length100) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result99))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice102 := payload + length104 := uint32(len(slice102)) + result103 := witRuntime.Allocate(pinner, uintptr(length104*(2*4)), 4) + for index, element := range slice102 { + base := unsafe.Add(result103, index*(2*4)) + utf8101 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8101))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length104) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result103))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice106 := payload + length108 := uint32(len(slice106)) + result107 := witRuntime.Allocate(pinner, uintptr(length108*(2*4)), 4) + for index, element := range slice106 { + base := unsafe.Add(result107, index*(2*4)) + utf8105 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8105) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8105))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length108) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result107))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice110 := payload + length112 := uint32(len(slice110)) + result111 := witRuntime.Allocate(pinner, uintptr(length112*(2*4)), 4) + for index, element := range slice110 { + base := unsafe.Add(result111, index*(2*4)) + utf8109 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8109) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8109))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result111))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice114 := payload + length116 := uint32(len(slice114)) + result115 := witRuntime.Allocate(pinner, uintptr(length116*(2*4)), 4) + for index, element := range slice114 { + base := unsafe.Add(result115, index*(2*4)) + utf8113 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8113) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8113))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length116) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result115))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8117 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf8117) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8117))) + slice119 := (payload).AllowedSuffixes + length121 := uint32(len(slice119)) + result120 := witRuntime.Allocate(pinner, uintptr(length121*(2*4)), 4) + for index, element := range slice119 { + base := unsafe.Add(result120, index*(2*4)) + utf8118 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8118) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8118))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length121) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result120))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf8122 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8122) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf8122))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf8123 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8123) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf8123))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice143 := (payload).Branches + length145 := uint32(len(slice143)) + result144 := witRuntime.Allocate(pinner, uintptr(length145*(23*4)), 4) + for index, element := range slice143 { + base := unsafe.Add(result144, index*(23*4)) + utf8124 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf8124) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8124))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf8125 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8125) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8125))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8126 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8126) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8126))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf8127 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8127) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8127))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf8128 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8128) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8128))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf8129 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf8129) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8129))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8130 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8130) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8130))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf8131 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8131) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8131))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf8132 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8132) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf8132))) + + default: + panic("unreachable") + } + slice134 := ((element).Metadata).Aliases + length136 := uint32(len(slice134)) + result135 := witRuntime.Allocate(pinner, uintptr(length136*(2*4)), 4) + for index, element := range slice134 { + base := unsafe.Add(result135, index*(2*4)) + utf8133 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8133) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8133))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length136) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result135))) + slice138 := ((element).Metadata).Examples + length140 := uint32(len(slice138)) + result139 := witRuntime.Allocate(pinner, uintptr(length140*(2*4)), 4) + for index, element := range slice138 { + base := unsafe.Add(result139, index*(2*4)) + utf8137 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8137) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8137))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length140) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result139))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8141 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8141) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8141))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8142 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8142) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8142))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length145) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result144))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8146 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8146) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8146))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8147 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8147) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8147))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8148 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8148) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8148))) + + default: + panic("unreachable") + } + slice150 := ((element).Metadata).Aliases + length152 := uint32(len(slice150)) + result151 := witRuntime.Allocate(pinner, uintptr(length152*(2*4)), 4) + for index, element := range slice150 { + base := unsafe.Add(result151, index*(2*4)) + utf8149 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8149) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8149))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length152) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result151))) + slice154 := ((element).Metadata).Examples + length156 := uint32(len(slice154)) + result155 := witRuntime.Allocate(pinner, uintptr(length156*(2*4)), 4) + for index, element := range slice154 { + base := unsafe.Add(result155, index*(2*4)) + utf8153 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8153) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8153))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length156) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result155))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8157 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8157) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8157))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8158 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8158) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8158))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + slice164 := ((payload).Graph).Defs + length166 := uint32(len(slice164)) + result165 := witRuntime.Allocate(pinner, uintptr(length166*(6*4)), 4) + for index, element := range slice164 { + base := unsafe.Add(result165, index*(6*4)) + utf8162 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8162) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8162))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8163 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8163) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8163))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + slice195 := ((payload).Value).ValueNodes + length197 := uint32(len(slice195)) + result196 := witRuntime.Allocate(pinner, uintptr(length197*(16+4*4)), 8) + for index, element := range slice195 { + base := unsafe.Add(result196, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result167 int32 + if payload { + result167 = 1 + } else { + result167 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result167) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf8168 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8168) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8168))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice169 := payload + length171 := uint32(len(slice169)) + result170 := witRuntime.Allocate(pinner, uintptr(length171*4), 4) + for index, element := range slice169 { + base := unsafe.Add(result170, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length171) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result170))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice173 := payload + length175 := uint32(len(slice173)) + result174 := witRuntime.Allocate(pinner, uintptr(length175*1), 1) + for index, element := range slice173 { + base := unsafe.Add(result174, index*1) + var result172 int32 + if element { + result172 = 1 + } else { + result172 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result172) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length175) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result174))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice176 := payload + length178 := uint32(len(slice176)) + result177 := witRuntime.Allocate(pinner, uintptr(length178*4), 4) + for index, element := range slice176 { + base := unsafe.Add(result177, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length178) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result177))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice179 := payload + length181 := uint32(len(slice179)) + result180 := witRuntime.Allocate(pinner, uintptr(length181*4), 4) + for index, element := range slice179 { + base := unsafe.Add(result180, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length181) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result180))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice182 := payload + length184 := uint32(len(slice182)) + result183 := witRuntime.Allocate(pinner, uintptr(length184*4), 4) + for index, element := range slice182 { + base := unsafe.Add(result183, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length184) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result183))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice185 := payload + length187 := uint32(len(slice185)) + result186 := witRuntime.Allocate(pinner, uintptr(length187*8), 4) + for index, element := range slice185 { + base := unsafe.Add(result186, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length187) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result186))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf8188 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf8188) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8188))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8189 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8189) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8189))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8190 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8190) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8190))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf8191 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8191) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8191))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf8192 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8192) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8192))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf8193 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8193) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf8193))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8194 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf8194) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8194))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + variant198 = int32(4) + variant199 = uintptr(result160) + variant200 = length161 + variant201 = uintptr(result165) + variant202 = length166 + variant203 = ((payload).Graph).Root + variant204 = uintptr(result196) + variant205 = length197 + variant206 = ((payload).Value).Root + + default: + panic("unreachable") + } + + option207 = int32(1) + option208 = variant198 + option209 = variant199 + option210 = variant200 + option211 = variant201 + option212 = variant202 + option213 = variant203 + option214 = variant204 + option215 = variant205 + option216 = variant206 + default: + panic("unreachable") + } + wasm_export_task_return_golem_agent_guest_initialize(option207, option208, option209, option210, option211, option212, option213, option214, option215, option216) + + })) +} + +//go:wasmexport [callback][async-lift]golem:agent/guest@2.0.0#initialize +func wasm_export_callback_golem_agent_guest_initialize(event0 uint32, event1 uint32, event2 uint32) uint32 { + return witAsync.Callback(event0, event1, event2) +} + +//go:wasmimport [export]golem:agent/guest@2.0.0 [task-return]initialize +func wasm_export_task_return_golem_agent_guest_initialize(arg0 int32, arg1 int32, arg2 uintptr, arg3 uint32, arg4 uintptr, arg5 uint32, arg6 int32, arg7 uintptr, arg8 uint32, arg9 int32) + +//go:wasmexport [async-lift]golem:agent/guest@2.0.0#invoke +func wasm_export_golem_agent_guest_invoke(arg0 uintptr) int32 { + return int32(witAsync.Run(func() { + pinner := &runtime.Pinner{} + defer pinner.Unpin() + value := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), 0))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), 4))) + result20 := make([]golem_core_types.SchemaValueNode, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (3 * 4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (3 * 4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (2 * 4))))), index*(16+4*4)) + var variant19 golem_core_types.SchemaValueNode + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) { + case 0: + + variant19 = golem_core_types.MakeSchemaValueNodeBoolValue((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) != 0)) + + case 1: + + variant19 = golem_core_types.MakeSchemaValueNodeS8Value(int8(int8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 2: + + variant19 = golem_core_types.MakeSchemaValueNodeS16Value(int16(int16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 3: + + variant19 = golem_core_types.MakeSchemaValueNodeS32Value(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 4: + + variant19 = golem_core_types.MakeSchemaValueNodeS64Value(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 5: + + variant19 = golem_core_types.MakeSchemaValueNodeU8Value(uint8(uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 6: + + variant19 = golem_core_types.MakeSchemaValueNodeU16Value(uint16(uint16(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))) + + case 7: + + variant19 = golem_core_types.MakeSchemaValueNodeU32Value(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 8: + + variant19 = golem_core_types.MakeSchemaValueNodeU64Value(uint64(*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 9: + + variant19 = golem_core_types.MakeSchemaValueNodeF32Value(*(*float32)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 10: + + variant19 = golem_core_types.MakeSchemaValueNodeF64Value(*(*float64)(unsafe.Add(unsafe.Pointer(base), 8))) + + case 11: + + variant19 = golem_core_types.MakeSchemaValueNodeCharValue(rune(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 12: + value0 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeStringValue(value0) + + case 13: + result := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result = append(result, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeRecordValue(result) + + case 14: + var option witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option = witTypes.None[int32]() + case 1: + + option = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeVariantValue(golem_core_types.VariantValuePayload{uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8))), option}) + + case 15: + + variant19 = golem_core_types.MakeSchemaValueNodeEnumValue(uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))) + + case 16: + result1 := make([]bool, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*1) + + result1 = append(result1, (uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 0))) != 0)) + } + + variant19 = golem_core_types.MakeSchemaValueNodeFlagsValue(result1) + + case 17: + result2 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result2 = append(result2, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeTupleValue(result2) + + case 18: + result3 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result3 = append(result3, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeListValue(result3) + + case 19: + result4 := make([]int32, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*4) + + result4 = append(result4, *(*int32)(unsafe.Add(unsafe.Pointer(base), 0))) + } + + variant19 = golem_core_types.MakeSchemaValueNodeFixedListValue(result4) + + case 20: + result5 := make([]golem_core_types.MapEntry, 0, *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + for index := 0; index < int(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))); index++ { + base := unsafe.Add(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)))), index*8) + + result5 = append(result5, golem_core_types.MapEntry{*(*int32)(unsafe.Add(unsafe.Pointer(base), 0)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 4))}) + } + + variant19 = golem_core_types.MakeSchemaValueNodeMapValue(result5) + + case 21: + var option6 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + + option6 = witTypes.None[int32]() + case 1: + + option6 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 12))) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeOptionValue(option6) + + case 22: + var variant golem_core_types.ResultValuePayload + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))) { + case 0: + var option7 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option7 = witTypes.None[int32]() + case 1: + + option7 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadOkValue(option7) + + case 1: + var option8 witTypes.Option[int32] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 12))) { + case 0: + + option8 = witTypes.None[int32]() + case 1: + + option8 = witTypes.Some[int32](*(*int32)(unsafe.Add(unsafe.Pointer(base), 16))) + default: + panic("unreachable") + } + + variant = golem_core_types.MakeResultValuePayloadErrValue(option8) + + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeResultValue(variant) + + case 23: + value9 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option11 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option11 = witTypes.None[string]() + case 1: + value10 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option11 = witTypes.Some[string](value10) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeTextValue(golem_core_types.TextValuePayload{value9, option11}) + + case 24: + value12 := unsafe.Slice((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + var option14 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))) { + case 0: + + option14 = witTypes.None[string]() + case 1: + value13 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4)))) + + option14 = witTypes.Some[string](value13) + default: + panic("unreachable") + } + + variant19 = golem_core_types.MakeSchemaValueNodeBinaryValue(golem_core_types.BinaryValuePayload{value12, option14}) + + case 25: + value15 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodePathValue(value15) + + case 26: + value16 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeUrlValue(value16) + + case 27: + + variant19 = golem_core_types.MakeSchemaValueNodeDatetimeValue(golem_core_types.Datetime{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), uint32(*(*int32)(unsafe.Add(unsafe.Pointer(base), 16)))}) + + case 28: + + variant19 = golem_core_types.MakeSchemaValueNodeDurationValue(golem_core_types.DurationValuePayload{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8))}) + + case 29: + value17 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeQuantityValueNode(golem_core_types.QuantityValue{*(*int64)(unsafe.Add(unsafe.Pointer(base), 8)), *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)), value17}) + + case 30: + value18 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(base), 8))))), *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4)))) + + variant19 = golem_core_types.MakeSchemaValueNodeUnionValue(golem_core_types.UnionValuePayload{value18, *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4)))}) + + case 31: + + variant19 = golem_core_types.MakeSchemaValueNodeSecretValue(golem_core_types.SecretFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + case 32: + + variant19 = golem_core_types.MakeSchemaValueNodeQuotaTokenHandle(golem_core_types.QuotaTokenFromOwnHandle(int32(uintptr(*(*int32)(unsafe.Add(unsafe.Pointer(base), 8)))))) + + default: + panic("unreachable") + } + + result20 = append(result20, variant19) + } + + var variant38 golem_agent_common.Principal + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (8 + 4*4)))) { + case 0: + value21 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 5*4)))) + value22 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 6*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 7*4)))) + var option24 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 8*4)))) { + case 0: + + option24 = witTypes.None[string]() + case 1: + value23 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 9*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 10*4)))) + + option24 = witTypes.Some[string](value23) + default: + panic("unreachable") + } + var option26 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 11*4)))) { + case 0: + + option26 = witTypes.None[string]() + case 1: + value25 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 12*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 13*4)))) + + option26 = witTypes.Some[string](value25) + default: + panic("unreachable") + } + var option27 witTypes.Option[bool] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 14*4)))) { + case 0: + + option27 = witTypes.None[bool]() + case 1: + + option27 = witTypes.Some[bool]((uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (17 + 14*4)))) != 0)) + default: + panic("unreachable") + } + var option29 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 15*4)))) { + case 0: + + option29 = witTypes.None[string]() + case 1: + value28 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 16*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 17*4)))) + + option29 = witTypes.Some[string](value28) + default: + panic("unreachable") + } + var option31 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 18*4)))) { + case 0: + + option31 = witTypes.None[string]() + case 1: + value30 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 19*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 20*4)))) + + option31 = witTypes.Some[string](value30) + default: + panic("unreachable") + } + var option33 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 21*4)))) { + case 0: + + option33 = witTypes.None[string]() + case 1: + value32 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 22*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 23*4)))) + + option33 = witTypes.Some[string](value32) + default: + panic("unreachable") + } + var option35 witTypes.Option[string] + switch uint8(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 24*4)))) { + case 0: + + option35 = witTypes.None[string]() + case 1: + value34 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 25*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 26*4)))) + + option35 = witTypes.Some[string](value34) + default: + panic("unreachable") + } + value36 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 27*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (16 + 28*4)))) + + variant38 = golem_agent_common.MakePrincipalOidc(golem_agent_common.OidcPrincipal{value21, value22, option24, option26, option27, option29, option31, option33, option35, value36}) + + case 1: + value37 := unsafe.String((*uint8)(unsafe.Pointer(uintptr(*(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (32 + 4*4)))))), *(*uint32)(unsafe.Add(unsafe.Pointer(arg0), (32 + 5*4)))) + + variant38 = golem_agent_common.MakePrincipalAgent(golem_agent_common.AgentPrincipal{golem_core_types.AgentId{golem_core_types.ComponentId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (16 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (24 + 4*4))))}}, value37}}) + + case 2: + + variant38 = golem_agent_common.MakePrincipalGolemUser(golem_agent_common.GolemUserPrincipal{golem_core_types.AccountId{golem_core_types.Uuid{uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (16 + 4*4)))), uint64(*(*int64)(unsafe.Add(unsafe.Pointer(arg0), (24 + 4*4))))}}}) + + case 3: + + variant38 = golem_agent_common.MakePrincipalAnonymous() + + default: + panic("unreachable") + } + witRuntime.Unpin() + result39 := export_golem_agent_guest.Invoke(value, golem_core_types.SchemaValueTree{result20, *(*int32)(unsafe.Add(unsafe.Pointer(arg0), (4 * 4)))}, variant38) + var option243 int32 + var option244 int32 + var option245 uintptr + var option246 uint32 + var option247 uintptr + var option248 uint32 + var option249 int32 + var option250 uintptr + var option251 uint32 + var option252 int32 + switch result39.Tag() { + case witTypes.ResultOk: + payload := result39.Ok() + var option68 int32 + var option69 uintptr + var option70 uint32 + var option71 int32 + switch payload.Tag() { + case witTypes.OptionNone: + + option68 = int32(0) + option69 = 0 + option70 = 0 + option71 = 0 + case witTypes.OptionSome: + payload := payload.Some() + slice65 := (payload).ValueNodes + length67 := uint32(len(slice65)) + result66 := witRuntime.Allocate(pinner, uintptr(length67*(16+4*4)), 8) + for index, element := range slice65 { + base := unsafe.Add(result66, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result40 int32 + if payload { + result40 = 1 + } else { + result40 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result40) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf8 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice := payload + length := uint32(len(slice)) + result41 := witRuntime.Allocate(pinner, uintptr(length*4), 4) + for index, element := range slice { + base := unsafe.Add(result41, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result41))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice43 := payload + length45 := uint32(len(slice43)) + result44 := witRuntime.Allocate(pinner, uintptr(length45*1), 1) + for index, element := range slice43 { + base := unsafe.Add(result44, index*1) + var result42 int32 + if element { + result42 = 1 + } else { + result42 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result42) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length45) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result44))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice46 := payload + length48 := uint32(len(slice46)) + result47 := witRuntime.Allocate(pinner, uintptr(length48*4), 4) + for index, element := range slice46 { + base := unsafe.Add(result47, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length48) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result47))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice49 := payload + length51 := uint32(len(slice49)) + result50 := witRuntime.Allocate(pinner, uintptr(length51*4), 4) + for index, element := range slice49 { + base := unsafe.Add(result50, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length51) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result50))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice52 := payload + length54 := uint32(len(slice52)) + result53 := witRuntime.Allocate(pinner, uintptr(length54*4), 4) + for index, element := range slice52 { + base := unsafe.Add(result53, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length54) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result53))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice55 := payload + length57 := uint32(len(slice55)) + result56 := witRuntime.Allocate(pinner, uintptr(length57*8), 4) + for index, element := range slice55 { + base := unsafe.Add(result56, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length57) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result56))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf858 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf858) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf858))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf859 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf859) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf859))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf860 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf860) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf860))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf861 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf861) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf861))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf862 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf862) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf862))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf863 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf863) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf863))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf864 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf864) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf864))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + option68 = int32(1) + option69 = uintptr(result66) + option70 = length67 + option71 = (payload).Root + default: + panic("unreachable") + } + + option243 = int32(0) + option244 = option68 + option245 = option69 + option246 = option70 + option247 = uintptr(option71) + option248 = 0 + option249 = 0 + option250 = 0 + option251 = 0 + option252 = 0 + case witTypes.ResultErr: + payload := result39.Err() + var variant234 int32 + var variant235 uintptr + var variant236 uint32 + var variant237 uintptr + var variant238 uint32 + var variant239 int32 + var variant240 uintptr + var variant241 uint32 + var variant242 int32 + switch payload.Tag() { + case golem_agent_common.AgentErrorInvalidInput: + payload := payload.InvalidInput() + utf872 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf872) + + variant234 = int32(0) + variant235 = uintptr(utf872) + variant236 = uint32(len(payload)) + variant237 = 0 + variant238 = 0 + variant239 = 0 + variant240 = 0 + variant241 = 0 + variant242 = 0 + + case golem_agent_common.AgentErrorInvalidMethod: + payload := payload.InvalidMethod() + utf873 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf873) + + variant234 = int32(1) + variant235 = uintptr(utf873) + variant236 = uint32(len(payload)) + variant237 = 0 + variant238 = 0 + variant239 = 0 + variant240 = 0 + variant241 = 0 + variant242 = 0 + + case golem_agent_common.AgentErrorInvalidType: + payload := payload.InvalidType() + utf874 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf874) + + variant234 = int32(2) + variant235 = uintptr(utf874) + variant236 = uint32(len(payload)) + variant237 = 0 + variant238 = 0 + variant239 = 0 + variant240 = 0 + variant241 = 0 + variant242 = 0 + + case golem_agent_common.AgentErrorInvalidAgentId: + payload := payload.InvalidAgentId() + utf875 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf875) + + variant234 = int32(3) + variant235 = uintptr(utf875) + variant236 = uint32(len(payload)) + variant237 = 0 + variant238 = 0 + variant239 = 0 + variant240 = 0 + variant241 = 0 + variant242 = 0 + + case golem_agent_common.AgentErrorCustomError: + payload := payload.CustomError() + slice194 := ((payload).Graph).TypeNodes + length196 := uint32(len(slice194)) + result195 := witRuntime.Allocate(pinner, uintptr(length196*(56+22*4)), 8) + for index, element := range slice194 { + base := unsafe.Add(result195, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf876 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf876) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf876))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf877 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf877) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf877))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf878 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf878) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf878))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf879 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf879) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf879))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf880 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf880) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf880))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf881 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf881))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf882 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf882) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf882))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf883 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf883) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf883))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf884 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf884) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf884))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf885 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf885))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice98 := payload + length100 := uint32(len(slice98)) + result99 := witRuntime.Allocate(pinner, uintptr(length100*(17*4)), 4) + for index, element := range slice98 { + base := unsafe.Add(result99, index*(17*4)) + utf886 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf886) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf886))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf887 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf887) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf887))) + + default: + panic("unreachable") + } + slice89 := ((element).Metadata).Aliases + length91 := uint32(len(slice89)) + result90 := witRuntime.Allocate(pinner, uintptr(length91*(2*4)), 4) + for index, element := range slice89 { + base := unsafe.Add(result90, index*(2*4)) + utf888 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf888) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf888))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length91) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result90))) + slice93 := ((element).Metadata).Examples + length95 := uint32(len(slice93)) + result94 := witRuntime.Allocate(pinner, uintptr(length95*(2*4)), 4) + for index, element := range slice93 { + base := unsafe.Add(result94, index*(2*4)) + utf892 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf892) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf892))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length95) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result94))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf896 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf896) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf896))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf897 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf897) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf897))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length100) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result99))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice113 := payload + length115 := uint32(len(slice113)) + result114 := witRuntime.Allocate(pinner, uintptr(length115*(8+16*4)), 4) + for index, element := range slice113 { + base := unsafe.Add(result114, index*(8+16*4)) + utf8101 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8101))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8102 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8102) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8102))) + + default: + panic("unreachable") + } + slice104 := ((element).Metadata).Aliases + length106 := uint32(len(slice104)) + result105 := witRuntime.Allocate(pinner, uintptr(length106*(2*4)), 4) + for index, element := range slice104 { + base := unsafe.Add(result105, index*(2*4)) + utf8103 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8103) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8103))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length106) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result105))) + slice108 := ((element).Metadata).Examples + length110 := uint32(len(slice108)) + result109 := witRuntime.Allocate(pinner, uintptr(length110*(2*4)), 4) + for index, element := range slice108 { + base := unsafe.Add(result109, index*(2*4)) + utf8107 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8107) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8107))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length110) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result109))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8111 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8111) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8111))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8112 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8112))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length115) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result114))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice117 := payload + length119 := uint32(len(slice117)) + result118 := witRuntime.Allocate(pinner, uintptr(length119*(2*4)), 4) + for index, element := range slice117 { + base := unsafe.Add(result118, index*(2*4)) + utf8116 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8116) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8116))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length119) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result118))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice121 := payload + length123 := uint32(len(slice121)) + result122 := witRuntime.Allocate(pinner, uintptr(length123*(2*4)), 4) + for index, element := range slice121 { + base := unsafe.Add(result122, index*(2*4)) + utf8120 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8120) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8120))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length123) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result122))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice124 := payload + length126 := uint32(len(slice124)) + result125 := witRuntime.Allocate(pinner, uintptr(length126*4), 4) + for index, element := range slice124 { + base := unsafe.Add(result125, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length126) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result125))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice128 := payload + length130 := uint32(len(slice128)) + result129 := witRuntime.Allocate(pinner, uintptr(length130*(2*4)), 4) + for index, element := range slice128 { + base := unsafe.Add(result129, index*(2*4)) + utf8127 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8127) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8127))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length130) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result129))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf8131 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8131) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf8131))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice133 := payload + length135 := uint32(len(slice133)) + result134 := witRuntime.Allocate(pinner, uintptr(length135*(2*4)), 4) + for index, element := range slice133 { + base := unsafe.Add(result134, index*(2*4)) + utf8132 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8132) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8132))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length135) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result134))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice137 := payload + length139 := uint32(len(slice137)) + result138 := witRuntime.Allocate(pinner, uintptr(length139*(2*4)), 4) + for index, element := range slice137 { + base := unsafe.Add(result138, index*(2*4)) + utf8136 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8136) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8136))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length139) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result138))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice141 := payload + length143 := uint32(len(slice141)) + result142 := witRuntime.Allocate(pinner, uintptr(length143*(2*4)), 4) + for index, element := range slice141 { + base := unsafe.Add(result142, index*(2*4)) + utf8140 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8140) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8140))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length143) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result142))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice145 := payload + length147 := uint32(len(slice145)) + result146 := witRuntime.Allocate(pinner, uintptr(length147*(2*4)), 4) + for index, element := range slice145 { + base := unsafe.Add(result146, index*(2*4)) + utf8144 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8144) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8144))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length147) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result146))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice149 := payload + length151 := uint32(len(slice149)) + result150 := witRuntime.Allocate(pinner, uintptr(length151*(2*4)), 4) + for index, element := range slice149 { + base := unsafe.Add(result150, index*(2*4)) + utf8148 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8148) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8148))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length151) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result150))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8152 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf8152) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8152))) + slice154 := (payload).AllowedSuffixes + length156 := uint32(len(slice154)) + result155 := witRuntime.Allocate(pinner, uintptr(length156*(2*4)), 4) + for index, element := range slice154 { + base := unsafe.Add(result155, index*(2*4)) + utf8153 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8153) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8153))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length156) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result155))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf8157 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8157) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf8157))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf8158 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8158) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf8158))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice178 := (payload).Branches + length180 := uint32(len(slice178)) + result179 := witRuntime.Allocate(pinner, uintptr(length180*(23*4)), 4) + for index, element := range slice178 { + base := unsafe.Add(result179, index*(23*4)) + utf8159 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf8159) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8159))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf8160 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8160) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8160))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8161 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8161) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8161))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf8162 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8162) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8162))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf8163 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8163) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8163))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf8164 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf8164) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8164))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8165 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8165) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8165))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf8166 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8166) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8166))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf8167 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8167) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf8167))) + + default: + panic("unreachable") + } + slice169 := ((element).Metadata).Aliases + length171 := uint32(len(slice169)) + result170 := witRuntime.Allocate(pinner, uintptr(length171*(2*4)), 4) + for index, element := range slice169 { + base := unsafe.Add(result170, index*(2*4)) + utf8168 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8168) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8168))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length171) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result170))) + slice173 := ((element).Metadata).Examples + length175 := uint32(len(slice173)) + result174 := witRuntime.Allocate(pinner, uintptr(length175*(2*4)), 4) + for index, element := range slice173 { + base := unsafe.Add(result174, index*(2*4)) + utf8172 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8172) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8172))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length175) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result174))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8176 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8176) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8176))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8177 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8177) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8177))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length180) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result179))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8181 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8181) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8181))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8182 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8182) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8182))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8183 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8183) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8183))) + + default: + panic("unreachable") + } + slice185 := ((element).Metadata).Aliases + length187 := uint32(len(slice185)) + result186 := witRuntime.Allocate(pinner, uintptr(length187*(2*4)), 4) + for index, element := range slice185 { + base := unsafe.Add(result186, index*(2*4)) + utf8184 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8184) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8184))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length187) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result186))) + slice189 := ((element).Metadata).Examples + length191 := uint32(len(slice189)) + result190 := witRuntime.Allocate(pinner, uintptr(length191*(2*4)), 4) + for index, element := range slice189 { + base := unsafe.Add(result190, index*(2*4)) + utf8188 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8188) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8188))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length191) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result190))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8192 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8192) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8192))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8193 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8193) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8193))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + slice199 := ((payload).Graph).Defs + length201 := uint32(len(slice199)) + result200 := witRuntime.Allocate(pinner, uintptr(length201*(6*4)), 4) + for index, element := range slice199 { + base := unsafe.Add(result200, index*(6*4)) + utf8197 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8197) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8197))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8198 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8198) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8198))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + slice231 := ((payload).Value).ValueNodes + length233 := uint32(len(slice231)) + result232 := witRuntime.Allocate(pinner, uintptr(length233*(16+4*4)), 8) + for index, element := range slice231 { + base := unsafe.Add(result232, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result202 int32 + if payload { + result202 = 1 + } else { + result202 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result202) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf8203 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8203) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8203))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice204 := payload + length206 := uint32(len(slice204)) + result205 := witRuntime.Allocate(pinner, uintptr(length206*4), 4) + for index, element := range slice204 { + base := unsafe.Add(result205, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length206) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result205))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice208 := payload + length210 := uint32(len(slice208)) + result209 := witRuntime.Allocate(pinner, uintptr(length210*1), 1) + for index, element := range slice208 { + base := unsafe.Add(result209, index*1) + var result207 int32 + if element { + result207 = 1 + } else { + result207 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result207) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length210) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result209))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice211 := payload + length213 := uint32(len(slice211)) + result212 := witRuntime.Allocate(pinner, uintptr(length213*4), 4) + for index, element := range slice211 { + base := unsafe.Add(result212, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length213) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result212))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice214 := payload + length216 := uint32(len(slice214)) + result215 := witRuntime.Allocate(pinner, uintptr(length216*4), 4) + for index, element := range slice214 { + base := unsafe.Add(result215, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length216) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result215))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice217 := payload + length219 := uint32(len(slice217)) + result218 := witRuntime.Allocate(pinner, uintptr(length219*4), 4) + for index, element := range slice217 { + base := unsafe.Add(result218, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length219) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result218))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice220 := payload + length222 := uint32(len(slice220)) + result221 := witRuntime.Allocate(pinner, uintptr(length222*8), 4) + for index, element := range slice220 { + base := unsafe.Add(result221, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length222) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result221))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf8223 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf8223) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8223))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8224 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8224) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8224))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data225 := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data225) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data225))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8226 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8226) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8226))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf8227 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8227) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8227))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf8228 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8228) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8228))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf8229 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8229) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf8229))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8230 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf8230) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8230))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + variant234 = int32(4) + variant235 = uintptr(result195) + variant236 = length196 + variant237 = uintptr(result200) + variant238 = length201 + variant239 = ((payload).Graph).Root + variant240 = uintptr(result232) + variant241 = length233 + variant242 = ((payload).Value).Root + + default: + panic("unreachable") + } + + option243 = int32(1) + option244 = variant234 + option245 = variant235 + option246 = variant236 + option247 = variant237 + option248 = variant238 + option249 = variant239 + option250 = variant240 + option251 = variant241 + option252 = variant242 + default: + panic("unreachable") + } + wasm_export_task_return_golem_agent_guest_invoke(option243, option244, option245, option246, option247, option248, option249, option250, option251, option252) + + })) +} + +//go:wasmexport [callback][async-lift]golem:agent/guest@2.0.0#invoke +func wasm_export_callback_golem_agent_guest_invoke(event0 uint32, event1 uint32, event2 uint32) uint32 { + return witAsync.Callback(event0, event1, event2) +} + +//go:wasmimport [export]golem:agent/guest@2.0.0 [task-return]invoke +func wasm_export_task_return_golem_agent_guest_invoke(arg0 int32, arg1 int32, arg2 uintptr, arg3 uint32, arg4 uintptr, arg5 uint32, arg6 int32, arg7 uintptr, arg8 uint32, arg9 int32) + +//go:wasmexport golem:agent/guest@2.0.0#get-definition +func wasm_export_golem_agent_guest_get_definition() uintptr { + + pinner := &syncExportPinner + result := export_golem_agent_guest.GetDefinition() + utf8 := unsafe.Pointer(unsafe.StringData((result).TypeName)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), 4)) = uint32(uint32(len((result).TypeName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), 0)) = uint32(uintptr(uintptr(utf8))) + utf80 := unsafe.Pointer(unsafe.StringData((result).Description)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (3 * 4))) = uint32(uint32(len((result).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 * 4))) = uint32(uintptr(uintptr(utf80))) + utf81 := unsafe.Pointer(unsafe.StringData((result).SourceLanguage)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (5 * 4))) = uint32(uint32(len((result).SourceLanguage))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (4 * 4))) = uint32(uintptr(uintptr(utf81))) + slice118 := ((result).Schema).TypeNodes + length120 := uint32(len(slice118)) + result119 := witRuntime.Allocate(pinner, uintptr(length120*(56+22*4)), 8) + for index, element := range slice118 { + base := unsafe.Add(result119, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf82))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf83))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf84))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf85))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf86))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf87))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf88 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf88))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf89 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf89) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf89))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf810 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf810) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf810))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf811 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf811) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf811))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice22 := payload + length24 := uint32(len(slice22)) + result23 := witRuntime.Allocate(pinner, uintptr(length24*(17*4)), 4) + for index, element := range slice22 { + base := unsafe.Add(result23, index*(17*4)) + utf812 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf812))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf813))) + + default: + panic("unreachable") + } + slice := ((element).Metadata).Aliases + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result15, index*(2*4)) + utf814 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf814))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result15))) + slice17 := ((element).Metadata).Examples + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*(2*4)), 4) + for index, element := range slice17 { + base := unsafe.Add(result18, index*(2*4)) + utf816 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf816))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length19) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result18))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf821))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length24) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result23))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice37 := payload + length39 := uint32(len(slice37)) + result38 := witRuntime.Allocate(pinner, uintptr(length39*(8+16*4)), 4) + for index, element := range slice37 { + base := unsafe.Add(result38, index*(8+16*4)) + utf825 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf825) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf825))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf826 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf826) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf826))) + + default: + panic("unreachable") + } + slice28 := ((element).Metadata).Aliases + length30 := uint32(len(slice28)) + result29 := witRuntime.Allocate(pinner, uintptr(length30*(2*4)), 4) + for index, element := range slice28 { + base := unsafe.Add(result29, index*(2*4)) + utf827 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf827) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf827))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result29))) + slice32 := ((element).Metadata).Examples + length34 := uint32(len(slice32)) + result33 := witRuntime.Allocate(pinner, uintptr(length34*(2*4)), 4) + for index, element := range slice32 { + base := unsafe.Add(result33, index*(2*4)) + utf831 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf831) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf831))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length34) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result33))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf835))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf836 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf836))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length39) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result38))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice41 := payload + length43 := uint32(len(slice41)) + result42 := witRuntime.Allocate(pinner, uintptr(length43*(2*4)), 4) + for index, element := range slice41 { + base := unsafe.Add(result42, index*(2*4)) + utf840 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf840) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf840))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length43) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result42))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice45 := payload + length47 := uint32(len(slice45)) + result46 := witRuntime.Allocate(pinner, uintptr(length47*(2*4)), 4) + for index, element := range slice45 { + base := unsafe.Add(result46, index*(2*4)) + utf844 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf844) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf844))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length47) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result46))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice48 := payload + length50 := uint32(len(slice48)) + result49 := witRuntime.Allocate(pinner, uintptr(length50*4), 4) + for index, element := range slice48 { + base := unsafe.Add(result49, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length50) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result49))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice52 := payload + length54 := uint32(len(slice52)) + result53 := witRuntime.Allocate(pinner, uintptr(length54*(2*4)), 4) + for index, element := range slice52 { + base := unsafe.Add(result53, index*(2*4)) + utf851 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf851) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf851))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length54) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result53))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf855 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf855) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf855))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice57 := payload + length59 := uint32(len(slice57)) + result58 := witRuntime.Allocate(pinner, uintptr(length59*(2*4)), 4) + for index, element := range slice57 { + base := unsafe.Add(result58, index*(2*4)) + utf856 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf856) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf856))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length59) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result58))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice61 := payload + length63 := uint32(len(slice61)) + result62 := witRuntime.Allocate(pinner, uintptr(length63*(2*4)), 4) + for index, element := range slice61 { + base := unsafe.Add(result62, index*(2*4)) + utf860 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf860) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf860))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length63) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result62))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice65 := payload + length67 := uint32(len(slice65)) + result66 := witRuntime.Allocate(pinner, uintptr(length67*(2*4)), 4) + for index, element := range slice65 { + base := unsafe.Add(result66, index*(2*4)) + utf864 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf864) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf864))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length67) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result66))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice69 := payload + length71 := uint32(len(slice69)) + result70 := witRuntime.Allocate(pinner, uintptr(length71*(2*4)), 4) + for index, element := range slice69 { + base := unsafe.Add(result70, index*(2*4)) + utf868 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf868) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf868))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length71) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result70))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice73 := payload + length75 := uint32(len(slice73)) + result74 := witRuntime.Allocate(pinner, uintptr(length75*(2*4)), 4) + for index, element := range slice73 { + base := unsafe.Add(result74, index*(2*4)) + utf872 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf872) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf872))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length75) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result74))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf876 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf876) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf876))) + slice78 := (payload).AllowedSuffixes + length80 := uint32(len(slice78)) + result79 := witRuntime.Allocate(pinner, uintptr(length80*(2*4)), 4) + for index, element := range slice78 { + base := unsafe.Add(result79, index*(2*4)) + utf877 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf877) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf877))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result79))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf881 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf881))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf882 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf882) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf882))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice102 := (payload).Branches + length104 := uint32(len(slice102)) + result103 := witRuntime.Allocate(pinner, uintptr(length104*(23*4)), 4) + for index, element := range slice102 { + base := unsafe.Add(result103, index*(23*4)) + utf883 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf883) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf883))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf884 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf884) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf884))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf885 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf885))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf886 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf886) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf886))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf887 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf887) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf887))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf888 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf888) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf888))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf889 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf889) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf889))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf890 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf890) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf890))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf891 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf891) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf891))) + + default: + panic("unreachable") + } + slice93 := ((element).Metadata).Aliases + length95 := uint32(len(slice93)) + result94 := witRuntime.Allocate(pinner, uintptr(length95*(2*4)), 4) + for index, element := range slice93 { + base := unsafe.Add(result94, index*(2*4)) + utf892 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf892) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf892))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length95) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result94))) + slice97 := ((element).Metadata).Examples + length99 := uint32(len(slice97)) + result98 := witRuntime.Allocate(pinner, uintptr(length99*(2*4)), 4) + for index, element := range slice97 { + base := unsafe.Add(result98, index*(2*4)) + utf896 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf896) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf896))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length99) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result98))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8100 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8100) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8100))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8101 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8101))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length104) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result103))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8105 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8105) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8105))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8106 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8106) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8106))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8107 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8107) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8107))) + + default: + panic("unreachable") + } + slice109 := ((element).Metadata).Aliases + length111 := uint32(len(slice109)) + result110 := witRuntime.Allocate(pinner, uintptr(length111*(2*4)), 4) + for index, element := range slice109 { + base := unsafe.Add(result110, index*(2*4)) + utf8108 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8108) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8108))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length111) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result110))) + slice113 := ((element).Metadata).Examples + length115 := uint32(len(slice113)) + result114 := witRuntime.Allocate(pinner, uintptr(length115*(2*4)), 4) + for index, element := range slice113 { + base := unsafe.Add(result114, index*(2*4)) + utf8112 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8112))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length115) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result114))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8116 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8116) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8116))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8117 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8117) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8117))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (7 * 4))) = uint32(length120) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (6 * 4))) = uint32(uintptr(uintptr(result119))) + slice123 := ((result).Schema).Defs + length125 := uint32(len(slice123)) + result124 := witRuntime.Allocate(pinner, uintptr(length125*(6*4)), 4) + for index, element := range slice123 { + base := unsafe.Add(result124, index*(6*4)) + utf8121 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8121) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8121))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8122 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8122) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8122))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (9 * 4))) = uint32(length125) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (8 * 4))) = uint32(uintptr(uintptr(result124))) + *(*int32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (10 * 4))) = ((result).Schema).Root + + switch ((result).Constructor).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (11 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((result).Constructor).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (11 * 4))) = int8(int32(1)) + utf8126 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8126) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (13 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (12 * 4))) = uint32(uintptr(uintptr(utf8126))) + + default: + panic("unreachable") + } + utf8127 := unsafe.Pointer(unsafe.StringData(((result).Constructor).Description)) + pinner.Pin(utf8127) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (15 * 4))) = uint32(uint32(len(((result).Constructor).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (14 * 4))) = uint32(uintptr(uintptr(utf8127))) + + switch ((result).Constructor).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((result).Constructor).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (16 * 4))) = int8(int32(1)) + utf8128 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8128) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (17 * 4))) = uint32(uintptr(uintptr(utf8128))) + + default: + panic("unreachable") + } + + switch ((result).Constructor).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := ((result).Constructor).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (19 * 4))) = int8(int32(0)) + slice141 := payload + length143 := uint32(len(slice141)) + result142 := witRuntime.Allocate(pinner, uintptr(length143*(8+16*4)), 4) + for index, element := range slice141 { + base := unsafe.Add(result142, index*(8+16*4)) + utf8129 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8129) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8129))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8130 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8130) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8130))) + + default: + panic("unreachable") + } + slice132 := ((element).Metadata).Aliases + length134 := uint32(len(slice132)) + result133 := witRuntime.Allocate(pinner, uintptr(length134*(2*4)), 4) + for index, element := range slice132 { + base := unsafe.Add(result133, index*(2*4)) + utf8131 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8131) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8131))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length134) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result133))) + slice136 := ((element).Metadata).Examples + length138 := uint32(len(slice136)) + result137 := witRuntime.Allocate(pinner, uintptr(length138*(2*4)), 4) + for index, element := range slice136 { + base := unsafe.Add(result137, index*(2*4)) + utf8135 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8135) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8135))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length138) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result137))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8139 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8139) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8139))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8140 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8140) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8140))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (21 * 4))) = uint32(length143) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (20 * 4))) = uint32(uintptr(uintptr(result142))) + + default: + panic("unreachable") + } + slice188 := (result).Methods + length190 := uint32(len(slice188)) + result189 := witRuntime.Allocate(pinner, uintptr(length190*(40+12*4)), 8) + for index, element := range slice188 { + base := unsafe.Add(result189, index*(40+12*4)) + utf8144 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8144) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8144))) + utf8145 := unsafe.Pointer(unsafe.StringData((element).Description)) + pinner.Pin(utf8145) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8145))) + slice168 := (element).HttpEndpoint + length170 := uint32(len(slice168)) + result169 := witRuntime.Allocate(pinner, uintptr(length170*(12*4)), 4) + for index, element := range slice168 { + base := unsafe.Add(result169, index*(12*4)) + + switch (element).HttpMethod.Tag() { + case golem_agent_common.HttpMethodGet: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case golem_agent_common.HttpMethodHead: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_agent_common.HttpMethodPost: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + case golem_agent_common.HttpMethodPut: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + case golem_agent_common.HttpMethodDelete: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + case golem_agent_common.HttpMethodConnect: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + case golem_agent_common.HttpMethodOptions: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + case golem_agent_common.HttpMethodTrace: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + case golem_agent_common.HttpMethodPatch: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + case golem_agent_common.HttpMethodCustom: + payload := (element).HttpMethod.Custom() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf8146 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8146) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8146))) + + default: + panic("unreachable") + } + slice150 := (element).PathSuffix + length152 := uint32(len(slice150)) + result151 := witRuntime.Allocate(pinner, uintptr(length152*(3*4)), 4) + for index, element := range slice150 { + base := unsafe.Add(result151, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8147 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8147) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8147))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8148 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8148) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8148))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8149 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8149) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8149))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(length152) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(result151))) + slice155 := (element).HeaderVars + length157 := uint32(len(slice155)) + result156 := witRuntime.Allocate(pinner, uintptr(length157*(4*4)), 4) + for index, element := range slice155 { + base := unsafe.Add(result156, index*(4*4)) + utf8153 := unsafe.Pointer(unsafe.StringData((element).HeaderName)) + pinner.Pin(utf8153) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).HeaderName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8153))) + utf8154 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8154) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8154))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(length157) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uintptr(uintptr(result156))) + slice160 := (element).QueryVars + length162 := uint32(len(slice160)) + result161 := witRuntime.Allocate(pinner, uintptr(length162*(4*4)), 4) + for index, element := range slice160 { + base := unsafe.Add(result161, index*(4*4)) + utf8158 := unsafe.Pointer(unsafe.StringData((element).QueryParamName)) + pinner.Pin(utf8158) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).QueryParamName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8158))) + utf8159 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8159) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8159))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(length162) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(result161))) + + switch (element).AuthDetails.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).AuthDetails.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + var result163 int32 + if (payload).Required { + result163 = 1 + } else { + result163 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4))) = int8(result163) + + default: + panic("unreachable") + } + slice165 := ((element).CorsOptions).AllowedPatterns + length167 := uint32(len(slice165)) + result166 := witRuntime.Allocate(pinner, uintptr(length167*(2*4)), 4) + for index, element := range slice165 { + base := unsafe.Add(result166, index*(2*4)) + utf8164 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8164) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8164))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length167) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result166))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(length170) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(result169))) + + switch (element).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8171 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8171) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8171))) + + default: + panic("unreachable") + } + + switch (element).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := (element).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + slice184 := payload + length186 := uint32(len(slice184)) + result185 := witRuntime.Allocate(pinner, uintptr(length186*(8+16*4)), 4) + for index, element := range slice184 { + base := unsafe.Add(result185, index*(8+16*4)) + utf8172 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8172) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8172))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8173 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8173) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8173))) + + default: + panic("unreachable") + } + slice175 := ((element).Metadata).Aliases + length177 := uint32(len(slice175)) + result176 := witRuntime.Allocate(pinner, uintptr(length177*(2*4)), 4) + for index, element := range slice175 { + base := unsafe.Add(result176, index*(2*4)) + utf8174 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8174) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8174))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length177) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result176))) + slice179 := ((element).Metadata).Examples + length181 := uint32(len(slice179)) + result180 := witRuntime.Allocate(pinner, uintptr(length181*(2*4)), 4) + for index, element := range slice179 { + base := unsafe.Add(result180, index*(2*4)) + utf8178 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8178) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8178))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length181) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result180))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8182 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8182) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8182))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8183 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8183) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8183))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length186) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result185))) + + default: + panic("unreachable") + } + + switch (element).OutputSchema.Tag() { + case golem_agent_common.OutputSchemaUnit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(0)) + + case golem_agent_common.OutputSchemaSingle: + payload := (element).OutputSchema.Single() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4))) = payload + + default: + panic("unreachable") + } + + switch (element).ReadOnly.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).ReadOnly.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch (payload).CachePolicy.Tag() { + case golem_agent_common.CachePolicyNoCache: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(0)) + + case golem_agent_common.CachePolicyUntilWrite: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(1)) + + case golem_agent_common.CachePolicyTtl: + payload := (payload).CachePolicy.Ttl() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))) = int64(payload) + + default: + panic("unreachable") + } + var result187 int32 + if (payload).UsesPrincipal { + result187 = 1 + } else { + result187 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))) = int8(result187) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (23 * 4))) = uint32(length190) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (22 * 4))) = uint32(uintptr(uintptr(result189))) + slice384 := (result).Dependencies + length386 := uint32(len(slice384)) + result385 := witRuntime.Allocate(pinner, uintptr(length386*(23*4)), 4) + for index, element := range slice384 { + base := unsafe.Add(result385, index*(23*4)) + utf8191 := unsafe.Pointer(unsafe.StringData((element).TypeName)) + pinner.Pin(utf8191) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).TypeName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8191))) + + switch (element).Description.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Description.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8192 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8192) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8192))) + + default: + panic("unreachable") + } + slice311 := ((element).Schema).TypeNodes + length313 := uint32(len(slice311)) + result312 := witRuntime.Allocate(pinner, uintptr(length313*(56+22*4)), 8) + for index, element := range slice311 { + base := unsafe.Add(result312, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8193 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8193) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8193))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8194 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8194) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8194))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8195 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8195) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8195))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8196 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8196) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8196))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8197 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8197) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8197))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8198 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8198) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8198))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8199 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8199) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8199))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8200 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8200) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8200))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8201 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8201) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8201))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8202 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8202) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8202))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice215 := payload + length217 := uint32(len(slice215)) + result216 := witRuntime.Allocate(pinner, uintptr(length217*(17*4)), 4) + for index, element := range slice215 { + base := unsafe.Add(result216, index*(17*4)) + utf8203 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8203) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8203))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8204 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8204) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8204))) + + default: + panic("unreachable") + } + slice206 := ((element).Metadata).Aliases + length208 := uint32(len(slice206)) + result207 := witRuntime.Allocate(pinner, uintptr(length208*(2*4)), 4) + for index, element := range slice206 { + base := unsafe.Add(result207, index*(2*4)) + utf8205 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8205) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8205))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length208) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result207))) + slice210 := ((element).Metadata).Examples + length212 := uint32(len(slice210)) + result211 := witRuntime.Allocate(pinner, uintptr(length212*(2*4)), 4) + for index, element := range slice210 { + base := unsafe.Add(result211, index*(2*4)) + utf8209 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8209) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8209))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length212) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result211))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf8213 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8213) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf8213))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf8214 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8214) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf8214))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length217) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result216))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice230 := payload + length232 := uint32(len(slice230)) + result231 := witRuntime.Allocate(pinner, uintptr(length232*(8+16*4)), 4) + for index, element := range slice230 { + base := unsafe.Add(result231, index*(8+16*4)) + utf8218 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8218) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8218))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8219 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8219) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8219))) + + default: + panic("unreachable") + } + slice221 := ((element).Metadata).Aliases + length223 := uint32(len(slice221)) + result222 := witRuntime.Allocate(pinner, uintptr(length223*(2*4)), 4) + for index, element := range slice221 { + base := unsafe.Add(result222, index*(2*4)) + utf8220 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8220) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8220))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length223) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result222))) + slice225 := ((element).Metadata).Examples + length227 := uint32(len(slice225)) + result226 := witRuntime.Allocate(pinner, uintptr(length227*(2*4)), 4) + for index, element := range slice225 { + base := unsafe.Add(result226, index*(2*4)) + utf8224 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8224) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8224))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length227) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result226))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8228 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8228) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8228))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8229 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8229) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8229))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length232) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result231))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice234 := payload + length236 := uint32(len(slice234)) + result235 := witRuntime.Allocate(pinner, uintptr(length236*(2*4)), 4) + for index, element := range slice234 { + base := unsafe.Add(result235, index*(2*4)) + utf8233 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8233) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8233))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length236) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result235))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice238 := payload + length240 := uint32(len(slice238)) + result239 := witRuntime.Allocate(pinner, uintptr(length240*(2*4)), 4) + for index, element := range slice238 { + base := unsafe.Add(result239, index*(2*4)) + utf8237 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8237) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8237))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length240) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result239))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice241 := payload + length243 := uint32(len(slice241)) + result242 := witRuntime.Allocate(pinner, uintptr(length243*4), 4) + for index, element := range slice241 { + base := unsafe.Add(result242, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length243) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result242))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice245 := payload + length247 := uint32(len(slice245)) + result246 := witRuntime.Allocate(pinner, uintptr(length247*(2*4)), 4) + for index, element := range slice245 { + base := unsafe.Add(result246, index*(2*4)) + utf8244 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8244) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8244))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length247) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result246))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf8248 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8248) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf8248))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice250 := payload + length252 := uint32(len(slice250)) + result251 := witRuntime.Allocate(pinner, uintptr(length252*(2*4)), 4) + for index, element := range slice250 { + base := unsafe.Add(result251, index*(2*4)) + utf8249 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8249) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8249))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length252) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result251))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice254 := payload + length256 := uint32(len(slice254)) + result255 := witRuntime.Allocate(pinner, uintptr(length256*(2*4)), 4) + for index, element := range slice254 { + base := unsafe.Add(result255, index*(2*4)) + utf8253 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8253) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8253))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length256) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result255))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice258 := payload + length260 := uint32(len(slice258)) + result259 := witRuntime.Allocate(pinner, uintptr(length260*(2*4)), 4) + for index, element := range slice258 { + base := unsafe.Add(result259, index*(2*4)) + utf8257 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8257) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8257))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length260) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result259))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice262 := payload + length264 := uint32(len(slice262)) + result263 := witRuntime.Allocate(pinner, uintptr(length264*(2*4)), 4) + for index, element := range slice262 { + base := unsafe.Add(result263, index*(2*4)) + utf8261 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8261) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8261))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length264) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result263))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice266 := payload + length268 := uint32(len(slice266)) + result267 := witRuntime.Allocate(pinner, uintptr(length268*(2*4)), 4) + for index, element := range slice266 { + base := unsafe.Add(result267, index*(2*4)) + utf8265 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8265) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8265))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length268) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result267))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8269 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf8269) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8269))) + slice271 := (payload).AllowedSuffixes + length273 := uint32(len(slice271)) + result272 := witRuntime.Allocate(pinner, uintptr(length273*(2*4)), 4) + for index, element := range slice271 { + base := unsafe.Add(result272, index*(2*4)) + utf8270 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8270) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8270))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length273) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result272))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf8274 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8274) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf8274))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf8275 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8275) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf8275))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice295 := (payload).Branches + length297 := uint32(len(slice295)) + result296 := witRuntime.Allocate(pinner, uintptr(length297*(23*4)), 4) + for index, element := range slice295 { + base := unsafe.Add(result296, index*(23*4)) + utf8276 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf8276) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8276))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf8277 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8277) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8277))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8278 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8278) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8278))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf8279 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8279) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8279))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf8280 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8280) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8280))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf8281 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf8281) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8281))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8282 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8282) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8282))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf8283 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8283) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8283))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf8284 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8284) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf8284))) + + default: + panic("unreachable") + } + slice286 := ((element).Metadata).Aliases + length288 := uint32(len(slice286)) + result287 := witRuntime.Allocate(pinner, uintptr(length288*(2*4)), 4) + for index, element := range slice286 { + base := unsafe.Add(result287, index*(2*4)) + utf8285 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8285) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8285))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length288) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result287))) + slice290 := ((element).Metadata).Examples + length292 := uint32(len(slice290)) + result291 := witRuntime.Allocate(pinner, uintptr(length292*(2*4)), 4) + for index, element := range slice290 { + base := unsafe.Add(result291, index*(2*4)) + utf8289 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8289) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8289))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length292) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result291))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8293 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8293) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8293))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8294 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8294) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8294))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length297) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result296))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8298 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8298) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8298))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8299 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8299) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8299))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8300 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8300) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8300))) + + default: + panic("unreachable") + } + slice302 := ((element).Metadata).Aliases + length304 := uint32(len(slice302)) + result303 := witRuntime.Allocate(pinner, uintptr(length304*(2*4)), 4) + for index, element := range slice302 { + base := unsafe.Add(result303, index*(2*4)) + utf8301 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8301) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8301))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length304) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result303))) + slice306 := ((element).Metadata).Examples + length308 := uint32(len(slice306)) + result307 := witRuntime.Allocate(pinner, uintptr(length308*(2*4)), 4) + for index, element := range slice306 { + base := unsafe.Add(result307, index*(2*4)) + utf8305 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8305) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8305))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length308) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result307))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8309 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8309) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8309))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8310 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8310) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8310))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(length313) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uintptr(uintptr(result312))) + slice316 := ((element).Schema).Defs + length318 := uint32(len(slice316)) + result317 := witRuntime.Allocate(pinner, uintptr(length318*(6*4)), 4) + for index, element := range slice316 { + base := unsafe.Add(result317, index*(6*4)) + utf8314 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8314) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8314))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8315 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8315) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8315))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(length318) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(result317))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = ((element).Schema).Root + + switch ((element).Constructor).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Constructor).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf8319 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8319) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf8319))) + + default: + panic("unreachable") + } + utf8320 := unsafe.Pointer(unsafe.StringData(((element).Constructor).Description)) + pinner.Pin(utf8320) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uint32(len(((element).Constructor).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(uintptr(uintptr(utf8320))) + + switch ((element).Constructor).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Constructor).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = int8(int32(1)) + utf8321 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8321) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uintptr(uintptr(utf8321))) + + default: + panic("unreachable") + } + + switch ((element).Constructor).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := ((element).Constructor).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = int8(int32(0)) + slice334 := payload + length336 := uint32(len(slice334)) + result335 := witRuntime.Allocate(pinner, uintptr(length336*(8+16*4)), 4) + for index, element := range slice334 { + base := unsafe.Add(result335, index*(8+16*4)) + utf8322 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8322) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8322))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8323 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8323) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8323))) + + default: + panic("unreachable") + } + slice325 := ((element).Metadata).Aliases + length327 := uint32(len(slice325)) + result326 := witRuntime.Allocate(pinner, uintptr(length327*(2*4)), 4) + for index, element := range slice325 { + base := unsafe.Add(result326, index*(2*4)) + utf8324 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8324) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8324))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length327) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result326))) + slice329 := ((element).Metadata).Examples + length331 := uint32(len(slice329)) + result330 := witRuntime.Allocate(pinner, uintptr(length331*(2*4)), 4) + for index, element := range slice329 { + base := unsafe.Add(result330, index*(2*4)) + utf8328 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8328) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8328))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length331) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result330))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8332 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8332) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8332))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8333 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8333) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8333))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = uint32(length336) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = uint32(uintptr(uintptr(result335))) + + default: + panic("unreachable") + } + slice381 := (element).Methods + length383 := uint32(len(slice381)) + result382 := witRuntime.Allocate(pinner, uintptr(length383*(40+12*4)), 8) + for index, element := range slice381 { + base := unsafe.Add(result382, index*(40+12*4)) + utf8337 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8337) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8337))) + utf8338 := unsafe.Pointer(unsafe.StringData((element).Description)) + pinner.Pin(utf8338) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8338))) + slice361 := (element).HttpEndpoint + length363 := uint32(len(slice361)) + result362 := witRuntime.Allocate(pinner, uintptr(length363*(12*4)), 4) + for index, element := range slice361 { + base := unsafe.Add(result362, index*(12*4)) + + switch (element).HttpMethod.Tag() { + case golem_agent_common.HttpMethodGet: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case golem_agent_common.HttpMethodHead: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_agent_common.HttpMethodPost: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + case golem_agent_common.HttpMethodPut: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + case golem_agent_common.HttpMethodDelete: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + case golem_agent_common.HttpMethodConnect: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + case golem_agent_common.HttpMethodOptions: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + case golem_agent_common.HttpMethodTrace: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + case golem_agent_common.HttpMethodPatch: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + case golem_agent_common.HttpMethodCustom: + payload := (element).HttpMethod.Custom() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf8339 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8339) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8339))) + + default: + panic("unreachable") + } + slice343 := (element).PathSuffix + length345 := uint32(len(slice343)) + result344 := witRuntime.Allocate(pinner, uintptr(length345*(3*4)), 4) + for index, element := range slice343 { + base := unsafe.Add(result344, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8340 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8340) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8340))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8341 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8341) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8341))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8342 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8342) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8342))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(length345) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(result344))) + slice348 := (element).HeaderVars + length350 := uint32(len(slice348)) + result349 := witRuntime.Allocate(pinner, uintptr(length350*(4*4)), 4) + for index, element := range slice348 { + base := unsafe.Add(result349, index*(4*4)) + utf8346 := unsafe.Pointer(unsafe.StringData((element).HeaderName)) + pinner.Pin(utf8346) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).HeaderName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8346))) + utf8347 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8347) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8347))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(length350) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uintptr(uintptr(result349))) + slice353 := (element).QueryVars + length355 := uint32(len(slice353)) + result354 := witRuntime.Allocate(pinner, uintptr(length355*(4*4)), 4) + for index, element := range slice353 { + base := unsafe.Add(result354, index*(4*4)) + utf8351 := unsafe.Pointer(unsafe.StringData((element).QueryParamName)) + pinner.Pin(utf8351) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).QueryParamName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8351))) + utf8352 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8352) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8352))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(length355) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(result354))) + + switch (element).AuthDetails.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).AuthDetails.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + var result356 int32 + if (payload).Required { + result356 = 1 + } else { + result356 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4))) = int8(result356) + + default: + panic("unreachable") + } + slice358 := ((element).CorsOptions).AllowedPatterns + length360 := uint32(len(slice358)) + result359 := witRuntime.Allocate(pinner, uintptr(length360*(2*4)), 4) + for index, element := range slice358 { + base := unsafe.Add(result359, index*(2*4)) + utf8357 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8357) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8357))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length360) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result359))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(length363) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(result362))) + + switch (element).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8364 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8364) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8364))) + + default: + panic("unreachable") + } + + switch (element).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := (element).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + slice377 := payload + length379 := uint32(len(slice377)) + result378 := witRuntime.Allocate(pinner, uintptr(length379*(8+16*4)), 4) + for index, element := range slice377 { + base := unsafe.Add(result378, index*(8+16*4)) + utf8365 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8365) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8365))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8366 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8366) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8366))) + + default: + panic("unreachable") + } + slice368 := ((element).Metadata).Aliases + length370 := uint32(len(slice368)) + result369 := witRuntime.Allocate(pinner, uintptr(length370*(2*4)), 4) + for index, element := range slice368 { + base := unsafe.Add(result369, index*(2*4)) + utf8367 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8367) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8367))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length370) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result369))) + slice372 := ((element).Metadata).Examples + length374 := uint32(len(slice372)) + result373 := witRuntime.Allocate(pinner, uintptr(length374*(2*4)), 4) + for index, element := range slice372 { + base := unsafe.Add(result373, index*(2*4)) + utf8371 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8371) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8371))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length374) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result373))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8375 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8375) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8375))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8376 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8376) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8376))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length379) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result378))) + + default: + panic("unreachable") + } + + switch (element).OutputSchema.Tag() { + case golem_agent_common.OutputSchemaUnit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(0)) + + case golem_agent_common.OutputSchemaSingle: + payload := (element).OutputSchema.Single() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4))) = payload + + default: + panic("unreachable") + } + + switch (element).ReadOnly.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).ReadOnly.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch (payload).CachePolicy.Tag() { + case golem_agent_common.CachePolicyNoCache: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(0)) + + case golem_agent_common.CachePolicyUntilWrite: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(1)) + + case golem_agent_common.CachePolicyTtl: + payload := (payload).CachePolicy.Ttl() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))) = int64(payload) + + default: + panic("unreachable") + } + var result380 int32 + if (payload).UsesPrincipal { + result380 = 1 + } else { + result380 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))) = int8(result380) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(length383) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(result382))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (25 * 4))) = uint32(length386) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (24 * 4))) = uint32(uintptr(uintptr(result385))) + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (26 * 4))) = int8(int32((result).Mode)) + + switch (result).HttpMount.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (27 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (result).HttpMount.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (27 * 4))) = int8(int32(1)) + slice390 := (payload).PathPrefix + length392 := uint32(len(slice390)) + result391 := witRuntime.Allocate(pinner, uintptr(length392*(3*4)), 4) + for index, element := range slice390 { + base := unsafe.Add(result391, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8387 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8387) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8387))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8388 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8388) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8388))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8389 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8389) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8389))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (29 * 4))) = uint32(length392) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (28 * 4))) = uint32(uintptr(uintptr(result391))) + + switch (payload).AuthDetails.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (30 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AuthDetails.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (30 * 4))) = int8(int32(1)) + var result393 int32 + if (payload).Required { + result393 = 1 + } else { + result393 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (1 + 30*4))) = int8(result393) + + default: + panic("unreachable") + } + var result394 int32 + if (payload).PhantomAgent { + result394 = 1 + } else { + result394 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 + 30*4))) = int8(result394) + slice396 := ((payload).CorsOptions).AllowedPatterns + length398 := uint32(len(slice396)) + result397 := witRuntime.Allocate(pinner, uintptr(length398*(2*4)), 4) + for index, element := range slice396 { + base := unsafe.Add(result397, index*(2*4)) + utf8395 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8395) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8395))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (32 * 4))) = uint32(length398) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (31 * 4))) = uint32(uintptr(uintptr(result397))) + slice402 := (payload).WebhookSuffix + length404 := uint32(len(slice402)) + result403 := witRuntime.Allocate(pinner, uintptr(length404*(3*4)), 4) + for index, element := range slice402 { + base := unsafe.Add(result403, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8399 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8399) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8399))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8400 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8400) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8400))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8401 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8401) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8401))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (34 * 4))) = uint32(length404) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (33 * 4))) = uint32(uintptr(uintptr(result403))) + + default: + panic("unreachable") + } + + switch (result).Snapshotting.Tag() { + case golem_agent_common.SnapshottingDisabled: + + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (8 + 34*4))) = int8(int32(0)) + + case golem_agent_common.SnapshottingEnabled: + payload := (result).Snapshotting.Enabled() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (8 + 34*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_agent_common.SnapshottingConfigDefault: + + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (16 + 34*4))) = int8(int32(0)) + + case golem_agent_common.SnapshottingConfigPeriodic: + payload := payload.Periodic() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (16 + 34*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(exportReturnArea), (24 + 34*4))) = int64(payload) + + case golem_agent_common.SnapshottingConfigEveryNInvocation: + payload := payload.EveryNInvocation() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), (16 + 34*4))) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(exportReturnArea), (24 + 34*4))) = int16(int32(payload)) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + slice409 := (result).Config + length411 := uint32(len(slice409)) + result410 := witRuntime.Allocate(pinner, uintptr(length411*(4*4)), 4) + for index, element := range slice409 { + base := unsafe.Add(result410, index*(4*4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32((element).Source)) + slice406 := (element).Path + length408 := uint32(len(slice406)) + result407 := witRuntime.Allocate(pinner, uintptr(length408*(2*4)), 4) + for index, element := range slice406 { + base := unsafe.Add(result407, index*(2*4)) + utf8405 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8405) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8405))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(length408) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(result407))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = (element).ValueType + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (32 + 35*4))) = uint32(length411) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (32 + 34*4))) = uint32(uintptr(uintptr(result410))) + return exportReturnArea + +} + +//go:wasmexport cabi_post_golem:agent/guest@2.0.0#get-definition +func wasm_export_post_return_golem_agent_guest_get_definition(result uintptr) { + syncExportPinner.Unpin() +} + +//go:wasmexport golem:agent/guest@2.0.0#discover-agent-types +func wasm_export_golem_agent_guest_discover_agent_types() uintptr { + + pinner := &syncExportPinner + result := export_golem_agent_guest.DiscoverAgentTypes() + + switch result.Tag() { + case witTypes.ResultOk: + payload := result.Ok() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), 0)) = int8(int32(0)) + slice412 := payload + length414 := uint32(len(slice412)) + result413 := witRuntime.Allocate(pinner, uintptr(length414*(32+36*4)), 8) + for index, element := range slice412 { + base := unsafe.Add(result413, index*(32+36*4)) + utf8 := unsafe.Pointer(unsafe.StringData((element).TypeName)) + pinner.Pin(utf8) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).TypeName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8))) + utf80 := unsafe.Pointer(unsafe.StringData((element).Description)) + pinner.Pin(utf80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf80))) + utf81 := unsafe.Pointer(unsafe.StringData((element).SourceLanguage)) + pinner.Pin(utf81) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((element).SourceLanguage))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf81))) + slice118 := ((element).Schema).TypeNodes + length120 := uint32(len(slice118)) + result119 := witRuntime.Allocate(pinner, uintptr(length120*(56+22*4)), 8) + for index, element := range slice118 { + base := unsafe.Add(result119, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf82 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf82) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf82))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf83 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf83) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf83))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf84 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf84) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf84))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf85 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf85) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf85))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf86 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf86) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf86))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf87 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf87) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf87))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf88 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf88) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf88))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf89 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf89) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf89))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf810 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf810) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf810))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf811 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf811) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf811))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice22 := payload + length24 := uint32(len(slice22)) + result23 := witRuntime.Allocate(pinner, uintptr(length24*(17*4)), 4) + for index, element := range slice22 { + base := unsafe.Add(result23, index*(17*4)) + utf812 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf812) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf812))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf813 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf813) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf813))) + + default: + panic("unreachable") + } + slice := ((element).Metadata).Aliases + length := uint32(len(slice)) + result15 := witRuntime.Allocate(pinner, uintptr(length*(2*4)), 4) + for index, element := range slice { + base := unsafe.Add(result15, index*(2*4)) + utf814 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf814) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf814))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result15))) + slice17 := ((element).Metadata).Examples + length19 := uint32(len(slice17)) + result18 := witRuntime.Allocate(pinner, uintptr(length19*(2*4)), 4) + for index, element := range slice17 { + base := unsafe.Add(result18, index*(2*4)) + utf816 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf816) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf816))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length19) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result18))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf820 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf820) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf820))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf821 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf821) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf821))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length24) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result23))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice37 := payload + length39 := uint32(len(slice37)) + result38 := witRuntime.Allocate(pinner, uintptr(length39*(8+16*4)), 4) + for index, element := range slice37 { + base := unsafe.Add(result38, index*(8+16*4)) + utf825 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf825) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf825))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf826 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf826) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf826))) + + default: + panic("unreachable") + } + slice28 := ((element).Metadata).Aliases + length30 := uint32(len(slice28)) + result29 := witRuntime.Allocate(pinner, uintptr(length30*(2*4)), 4) + for index, element := range slice28 { + base := unsafe.Add(result29, index*(2*4)) + utf827 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf827) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf827))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length30) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result29))) + slice32 := ((element).Metadata).Examples + length34 := uint32(len(slice32)) + result33 := witRuntime.Allocate(pinner, uintptr(length34*(2*4)), 4) + for index, element := range slice32 { + base := unsafe.Add(result33, index*(2*4)) + utf831 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf831) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf831))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length34) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result33))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf835 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf835) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf835))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf836 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf836) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf836))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length39) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result38))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice41 := payload + length43 := uint32(len(slice41)) + result42 := witRuntime.Allocate(pinner, uintptr(length43*(2*4)), 4) + for index, element := range slice41 { + base := unsafe.Add(result42, index*(2*4)) + utf840 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf840) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf840))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length43) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result42))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice45 := payload + length47 := uint32(len(slice45)) + result46 := witRuntime.Allocate(pinner, uintptr(length47*(2*4)), 4) + for index, element := range slice45 { + base := unsafe.Add(result46, index*(2*4)) + utf844 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf844) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf844))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length47) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result46))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice48 := payload + length50 := uint32(len(slice48)) + result49 := witRuntime.Allocate(pinner, uintptr(length50*4), 4) + for index, element := range slice48 { + base := unsafe.Add(result49, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length50) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result49))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice52 := payload + length54 := uint32(len(slice52)) + result53 := witRuntime.Allocate(pinner, uintptr(length54*(2*4)), 4) + for index, element := range slice52 { + base := unsafe.Add(result53, index*(2*4)) + utf851 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf851) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf851))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length54) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result53))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf855 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf855) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf855))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice57 := payload + length59 := uint32(len(slice57)) + result58 := witRuntime.Allocate(pinner, uintptr(length59*(2*4)), 4) + for index, element := range slice57 { + base := unsafe.Add(result58, index*(2*4)) + utf856 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf856) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf856))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length59) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result58))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice61 := payload + length63 := uint32(len(slice61)) + result62 := witRuntime.Allocate(pinner, uintptr(length63*(2*4)), 4) + for index, element := range slice61 { + base := unsafe.Add(result62, index*(2*4)) + utf860 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf860) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf860))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length63) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result62))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice65 := payload + length67 := uint32(len(slice65)) + result66 := witRuntime.Allocate(pinner, uintptr(length67*(2*4)), 4) + for index, element := range slice65 { + base := unsafe.Add(result66, index*(2*4)) + utf864 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf864) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf864))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length67) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result66))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice69 := payload + length71 := uint32(len(slice69)) + result70 := witRuntime.Allocate(pinner, uintptr(length71*(2*4)), 4) + for index, element := range slice69 { + base := unsafe.Add(result70, index*(2*4)) + utf868 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf868) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf868))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length71) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result70))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice73 := payload + length75 := uint32(len(slice73)) + result74 := witRuntime.Allocate(pinner, uintptr(length75*(2*4)), 4) + for index, element := range slice73 { + base := unsafe.Add(result74, index*(2*4)) + utf872 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf872) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf872))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length75) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result74))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf876 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf876) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf876))) + slice78 := (payload).AllowedSuffixes + length80 := uint32(len(slice78)) + result79 := witRuntime.Allocate(pinner, uintptr(length80*(2*4)), 4) + for index, element := range slice78 { + base := unsafe.Add(result79, index*(2*4)) + utf877 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf877) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf877))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length80) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result79))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf881 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf881) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf881))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf882 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf882) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf882))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice102 := (payload).Branches + length104 := uint32(len(slice102)) + result103 := witRuntime.Allocate(pinner, uintptr(length104*(23*4)), 4) + for index, element := range slice102 { + base := unsafe.Add(result103, index*(23*4)) + utf883 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf883) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf883))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf884 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf884) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf884))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf885 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf885) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf885))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf886 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf886) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf886))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf887 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf887) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf887))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf888 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf888) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf888))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf889 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf889) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf889))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf890 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf890) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf890))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf891 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf891) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf891))) + + default: + panic("unreachable") + } + slice93 := ((element).Metadata).Aliases + length95 := uint32(len(slice93)) + result94 := witRuntime.Allocate(pinner, uintptr(length95*(2*4)), 4) + for index, element := range slice93 { + base := unsafe.Add(result94, index*(2*4)) + utf892 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf892) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf892))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length95) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result94))) + slice97 := ((element).Metadata).Examples + length99 := uint32(len(slice97)) + result98 := witRuntime.Allocate(pinner, uintptr(length99*(2*4)), 4) + for index, element := range slice97 { + base := unsafe.Add(result98, index*(2*4)) + utf896 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf896) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf896))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length99) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result98))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8100 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8100) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8100))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8101 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8101) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8101))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length104) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result103))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8105 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8105) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8105))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8106 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8106) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8106))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8107 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8107) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8107))) + + default: + panic("unreachable") + } + slice109 := ((element).Metadata).Aliases + length111 := uint32(len(slice109)) + result110 := witRuntime.Allocate(pinner, uintptr(length111*(2*4)), 4) + for index, element := range slice109 { + base := unsafe.Add(result110, index*(2*4)) + utf8108 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8108) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8108))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length111) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result110))) + slice113 := ((element).Metadata).Examples + length115 := uint32(len(slice113)) + result114 := witRuntime.Allocate(pinner, uintptr(length115*(2*4)), 4) + for index, element := range slice113 { + base := unsafe.Add(result114, index*(2*4)) + utf8112 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8112) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8112))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length115) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result114))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8116 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8116) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8116))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8117 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8117) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8117))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length120) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result119))) + slice123 := ((element).Schema).Defs + length125 := uint32(len(slice123)) + result124 := witRuntime.Allocate(pinner, uintptr(length125*(6*4)), 4) + for index, element := range slice123 { + base := unsafe.Add(result124, index*(6*4)) + utf8121 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8121) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8121))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8122 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8122) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8122))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length125) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result124))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = ((element).Schema).Root + + switch ((element).Constructor).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Constructor).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = int8(int32(1)) + utf8126 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8126) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(utf8126))) + + default: + panic("unreachable") + } + utf8127 := unsafe.Pointer(unsafe.StringData(((element).Constructor).Description)) + pinner.Pin(utf8127) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uint32(len(((element).Constructor).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(utf8127))) + + switch ((element).Constructor).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Constructor).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8128 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8128) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8128))) + + default: + panic("unreachable") + } + + switch ((element).Constructor).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := ((element).Constructor).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + slice141 := payload + length143 := uint32(len(slice141)) + result142 := witRuntime.Allocate(pinner, uintptr(length143*(8+16*4)), 4) + for index, element := range slice141 { + base := unsafe.Add(result142, index*(8+16*4)) + utf8129 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8129) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8129))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8130 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8130) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8130))) + + default: + panic("unreachable") + } + slice132 := ((element).Metadata).Aliases + length134 := uint32(len(slice132)) + result133 := witRuntime.Allocate(pinner, uintptr(length134*(2*4)), 4) + for index, element := range slice132 { + base := unsafe.Add(result133, index*(2*4)) + utf8131 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8131) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8131))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length134) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result133))) + slice136 := ((element).Metadata).Examples + length138 := uint32(len(slice136)) + result137 := witRuntime.Allocate(pinner, uintptr(length138*(2*4)), 4) + for index, element := range slice136 { + base := unsafe.Add(result137, index*(2*4)) + utf8135 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8135) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8135))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length138) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result137))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8139 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8139) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8139))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8140 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8140) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8140))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(length143) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = uint32(uintptr(uintptr(result142))) + + default: + panic("unreachable") + } + slice188 := (element).Methods + length190 := uint32(len(slice188)) + result189 := witRuntime.Allocate(pinner, uintptr(length190*(40+12*4)), 8) + for index, element := range slice188 { + base := unsafe.Add(result189, index*(40+12*4)) + utf8144 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8144) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8144))) + utf8145 := unsafe.Pointer(unsafe.StringData((element).Description)) + pinner.Pin(utf8145) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8145))) + slice168 := (element).HttpEndpoint + length170 := uint32(len(slice168)) + result169 := witRuntime.Allocate(pinner, uintptr(length170*(12*4)), 4) + for index, element := range slice168 { + base := unsafe.Add(result169, index*(12*4)) + + switch (element).HttpMethod.Tag() { + case golem_agent_common.HttpMethodGet: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case golem_agent_common.HttpMethodHead: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_agent_common.HttpMethodPost: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + case golem_agent_common.HttpMethodPut: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + case golem_agent_common.HttpMethodDelete: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + case golem_agent_common.HttpMethodConnect: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + case golem_agent_common.HttpMethodOptions: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + case golem_agent_common.HttpMethodTrace: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + case golem_agent_common.HttpMethodPatch: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + case golem_agent_common.HttpMethodCustom: + payload := (element).HttpMethod.Custom() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf8146 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8146) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8146))) + + default: + panic("unreachable") + } + slice150 := (element).PathSuffix + length152 := uint32(len(slice150)) + result151 := witRuntime.Allocate(pinner, uintptr(length152*(3*4)), 4) + for index, element := range slice150 { + base := unsafe.Add(result151, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8147 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8147) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8147))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8148 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8148) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8148))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8149 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8149) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8149))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(length152) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(result151))) + slice155 := (element).HeaderVars + length157 := uint32(len(slice155)) + result156 := witRuntime.Allocate(pinner, uintptr(length157*(4*4)), 4) + for index, element := range slice155 { + base := unsafe.Add(result156, index*(4*4)) + utf8153 := unsafe.Pointer(unsafe.StringData((element).HeaderName)) + pinner.Pin(utf8153) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).HeaderName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8153))) + utf8154 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8154) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8154))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(length157) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uintptr(uintptr(result156))) + slice160 := (element).QueryVars + length162 := uint32(len(slice160)) + result161 := witRuntime.Allocate(pinner, uintptr(length162*(4*4)), 4) + for index, element := range slice160 { + base := unsafe.Add(result161, index*(4*4)) + utf8158 := unsafe.Pointer(unsafe.StringData((element).QueryParamName)) + pinner.Pin(utf8158) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).QueryParamName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8158))) + utf8159 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8159) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8159))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(length162) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(result161))) + + switch (element).AuthDetails.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).AuthDetails.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + var result163 int32 + if (payload).Required { + result163 = 1 + } else { + result163 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4))) = int8(result163) + + default: + panic("unreachable") + } + slice165 := ((element).CorsOptions).AllowedPatterns + length167 := uint32(len(slice165)) + result166 := witRuntime.Allocate(pinner, uintptr(length167*(2*4)), 4) + for index, element := range slice165 { + base := unsafe.Add(result166, index*(2*4)) + utf8164 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8164) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8164))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length167) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result166))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(length170) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(result169))) + + switch (element).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8171 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8171) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8171))) + + default: + panic("unreachable") + } + + switch (element).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := (element).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + slice184 := payload + length186 := uint32(len(slice184)) + result185 := witRuntime.Allocate(pinner, uintptr(length186*(8+16*4)), 4) + for index, element := range slice184 { + base := unsafe.Add(result185, index*(8+16*4)) + utf8172 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8172) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8172))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8173 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8173) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8173))) + + default: + panic("unreachable") + } + slice175 := ((element).Metadata).Aliases + length177 := uint32(len(slice175)) + result176 := witRuntime.Allocate(pinner, uintptr(length177*(2*4)), 4) + for index, element := range slice175 { + base := unsafe.Add(result176, index*(2*4)) + utf8174 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8174) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8174))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length177) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result176))) + slice179 := ((element).Metadata).Examples + length181 := uint32(len(slice179)) + result180 := witRuntime.Allocate(pinner, uintptr(length181*(2*4)), 4) + for index, element := range slice179 { + base := unsafe.Add(result180, index*(2*4)) + utf8178 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8178) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8178))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length181) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result180))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8182 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8182) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8182))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8183 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8183) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8183))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length186) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result185))) + + default: + panic("unreachable") + } + + switch (element).OutputSchema.Tag() { + case golem_agent_common.OutputSchemaUnit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(0)) + + case golem_agent_common.OutputSchemaSingle: + payload := (element).OutputSchema.Single() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4))) = payload + + default: + panic("unreachable") + } + + switch (element).ReadOnly.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).ReadOnly.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch (payload).CachePolicy.Tag() { + case golem_agent_common.CachePolicyNoCache: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(0)) + + case golem_agent_common.CachePolicyUntilWrite: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(1)) + + case golem_agent_common.CachePolicyTtl: + payload := (payload).CachePolicy.Ttl() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))) = int64(payload) + + default: + panic("unreachable") + } + var result187 int32 + if (payload).UsesPrincipal { + result187 = 1 + } else { + result187 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))) = int8(result187) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (23 * 4))) = uint32(length190) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uintptr(uintptr(result189))) + slice384 := (element).Dependencies + length386 := uint32(len(slice384)) + result385 := witRuntime.Allocate(pinner, uintptr(length386*(23*4)), 4) + for index, element := range slice384 { + base := unsafe.Add(result385, index*(23*4)) + utf8191 := unsafe.Pointer(unsafe.StringData((element).TypeName)) + pinner.Pin(utf8191) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).TypeName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8191))) + + switch (element).Description.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Description.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8192 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8192) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8192))) + + default: + panic("unreachable") + } + slice311 := ((element).Schema).TypeNodes + length313 := uint32(len(slice311)) + result312 := witRuntime.Allocate(pinner, uintptr(length313*(56+22*4)), 8) + for index, element := range slice311 { + base := unsafe.Add(result312, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8193 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8193) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8193))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8194 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8194) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8194))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8195 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8195) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8195))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8196 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8196) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8196))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8197 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8197) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8197))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8198 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8198) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8198))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8199 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8199) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8199))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8200 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8200) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8200))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8201 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8201) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8201))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8202 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8202) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8202))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice215 := payload + length217 := uint32(len(slice215)) + result216 := witRuntime.Allocate(pinner, uintptr(length217*(17*4)), 4) + for index, element := range slice215 { + base := unsafe.Add(result216, index*(17*4)) + utf8203 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8203) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8203))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8204 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8204) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8204))) + + default: + panic("unreachable") + } + slice206 := ((element).Metadata).Aliases + length208 := uint32(len(slice206)) + result207 := witRuntime.Allocate(pinner, uintptr(length208*(2*4)), 4) + for index, element := range slice206 { + base := unsafe.Add(result207, index*(2*4)) + utf8205 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8205) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8205))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length208) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result207))) + slice210 := ((element).Metadata).Examples + length212 := uint32(len(slice210)) + result211 := witRuntime.Allocate(pinner, uintptr(length212*(2*4)), 4) + for index, element := range slice210 { + base := unsafe.Add(result211, index*(2*4)) + utf8209 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8209) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8209))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length212) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result211))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf8213 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8213) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf8213))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf8214 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8214) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf8214))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length217) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result216))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice230 := payload + length232 := uint32(len(slice230)) + result231 := witRuntime.Allocate(pinner, uintptr(length232*(8+16*4)), 4) + for index, element := range slice230 { + base := unsafe.Add(result231, index*(8+16*4)) + utf8218 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8218) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8218))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8219 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8219) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8219))) + + default: + panic("unreachable") + } + slice221 := ((element).Metadata).Aliases + length223 := uint32(len(slice221)) + result222 := witRuntime.Allocate(pinner, uintptr(length223*(2*4)), 4) + for index, element := range slice221 { + base := unsafe.Add(result222, index*(2*4)) + utf8220 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8220) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8220))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length223) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result222))) + slice225 := ((element).Metadata).Examples + length227 := uint32(len(slice225)) + result226 := witRuntime.Allocate(pinner, uintptr(length227*(2*4)), 4) + for index, element := range slice225 { + base := unsafe.Add(result226, index*(2*4)) + utf8224 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8224) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8224))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length227) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result226))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8228 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8228) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8228))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8229 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8229) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8229))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length232) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result231))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice234 := payload + length236 := uint32(len(slice234)) + result235 := witRuntime.Allocate(pinner, uintptr(length236*(2*4)), 4) + for index, element := range slice234 { + base := unsafe.Add(result235, index*(2*4)) + utf8233 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8233) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8233))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length236) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result235))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice238 := payload + length240 := uint32(len(slice238)) + result239 := witRuntime.Allocate(pinner, uintptr(length240*(2*4)), 4) + for index, element := range slice238 { + base := unsafe.Add(result239, index*(2*4)) + utf8237 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8237) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8237))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length240) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result239))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice241 := payload + length243 := uint32(len(slice241)) + result242 := witRuntime.Allocate(pinner, uintptr(length243*4), 4) + for index, element := range slice241 { + base := unsafe.Add(result242, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length243) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result242))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice245 := payload + length247 := uint32(len(slice245)) + result246 := witRuntime.Allocate(pinner, uintptr(length247*(2*4)), 4) + for index, element := range slice245 { + base := unsafe.Add(result246, index*(2*4)) + utf8244 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8244) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8244))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length247) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result246))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf8248 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8248) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf8248))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice250 := payload + length252 := uint32(len(slice250)) + result251 := witRuntime.Allocate(pinner, uintptr(length252*(2*4)), 4) + for index, element := range slice250 { + base := unsafe.Add(result251, index*(2*4)) + utf8249 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8249) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8249))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length252) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result251))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice254 := payload + length256 := uint32(len(slice254)) + result255 := witRuntime.Allocate(pinner, uintptr(length256*(2*4)), 4) + for index, element := range slice254 { + base := unsafe.Add(result255, index*(2*4)) + utf8253 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8253) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8253))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length256) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result255))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice258 := payload + length260 := uint32(len(slice258)) + result259 := witRuntime.Allocate(pinner, uintptr(length260*(2*4)), 4) + for index, element := range slice258 { + base := unsafe.Add(result259, index*(2*4)) + utf8257 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8257) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8257))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length260) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result259))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice262 := payload + length264 := uint32(len(slice262)) + result263 := witRuntime.Allocate(pinner, uintptr(length264*(2*4)), 4) + for index, element := range slice262 { + base := unsafe.Add(result263, index*(2*4)) + utf8261 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8261) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8261))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length264) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result263))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice266 := payload + length268 := uint32(len(slice266)) + result267 := witRuntime.Allocate(pinner, uintptr(length268*(2*4)), 4) + for index, element := range slice266 { + base := unsafe.Add(result267, index*(2*4)) + utf8265 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8265) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8265))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length268) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result267))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8269 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf8269) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8269))) + slice271 := (payload).AllowedSuffixes + length273 := uint32(len(slice271)) + result272 := witRuntime.Allocate(pinner, uintptr(length273*(2*4)), 4) + for index, element := range slice271 { + base := unsafe.Add(result272, index*(2*4)) + utf8270 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8270) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8270))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length273) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result272))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf8274 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8274) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf8274))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf8275 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8275) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf8275))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice295 := (payload).Branches + length297 := uint32(len(slice295)) + result296 := witRuntime.Allocate(pinner, uintptr(length297*(23*4)), 4) + for index, element := range slice295 { + base := unsafe.Add(result296, index*(23*4)) + utf8276 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf8276) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8276))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf8277 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8277) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8277))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8278 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8278) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8278))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf8279 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8279) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8279))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf8280 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8280) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8280))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf8281 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf8281) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8281))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8282 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8282) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8282))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf8283 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8283) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8283))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf8284 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8284) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf8284))) + + default: + panic("unreachable") + } + slice286 := ((element).Metadata).Aliases + length288 := uint32(len(slice286)) + result287 := witRuntime.Allocate(pinner, uintptr(length288*(2*4)), 4) + for index, element := range slice286 { + base := unsafe.Add(result287, index*(2*4)) + utf8285 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8285) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8285))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length288) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result287))) + slice290 := ((element).Metadata).Examples + length292 := uint32(len(slice290)) + result291 := witRuntime.Allocate(pinner, uintptr(length292*(2*4)), 4) + for index, element := range slice290 { + base := unsafe.Add(result291, index*(2*4)) + utf8289 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8289) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8289))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length292) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result291))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8293 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8293) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8293))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8294 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8294) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8294))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length297) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result296))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8298 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8298) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8298))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8299 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8299) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8299))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8300 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8300) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8300))) + + default: + panic("unreachable") + } + slice302 := ((element).Metadata).Aliases + length304 := uint32(len(slice302)) + result303 := witRuntime.Allocate(pinner, uintptr(length304*(2*4)), 4) + for index, element := range slice302 { + base := unsafe.Add(result303, index*(2*4)) + utf8301 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8301) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8301))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length304) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result303))) + slice306 := ((element).Metadata).Examples + length308 := uint32(len(slice306)) + result307 := witRuntime.Allocate(pinner, uintptr(length308*(2*4)), 4) + for index, element := range slice306 { + base := unsafe.Add(result307, index*(2*4)) + utf8305 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8305) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8305))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length308) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result307))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8309 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8309) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8309))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8310 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8310) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8310))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(length313) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uintptr(uintptr(result312))) + slice316 := ((element).Schema).Defs + length318 := uint32(len(slice316)) + result317 := witRuntime.Allocate(pinner, uintptr(length318*(6*4)), 4) + for index, element := range slice316 { + base := unsafe.Add(result317, index*(6*4)) + utf8314 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8314) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8314))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8315 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8315) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8315))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(length318) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(result317))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = ((element).Schema).Root + + switch ((element).Constructor).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Constructor).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf8319 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8319) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf8319))) + + default: + panic("unreachable") + } + utf8320 := unsafe.Pointer(unsafe.StringData(((element).Constructor).Description)) + pinner.Pin(utf8320) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uint32(len(((element).Constructor).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(uintptr(uintptr(utf8320))) + + switch ((element).Constructor).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Constructor).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = int8(int32(1)) + utf8321 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8321) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uintptr(uintptr(utf8321))) + + default: + panic("unreachable") + } + + switch ((element).Constructor).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := ((element).Constructor).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = int8(int32(0)) + slice334 := payload + length336 := uint32(len(slice334)) + result335 := witRuntime.Allocate(pinner, uintptr(length336*(8+16*4)), 4) + for index, element := range slice334 { + base := unsafe.Add(result335, index*(8+16*4)) + utf8322 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8322) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8322))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8323 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8323) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8323))) + + default: + panic("unreachable") + } + slice325 := ((element).Metadata).Aliases + length327 := uint32(len(slice325)) + result326 := witRuntime.Allocate(pinner, uintptr(length327*(2*4)), 4) + for index, element := range slice325 { + base := unsafe.Add(result326, index*(2*4)) + utf8324 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8324) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8324))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length327) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result326))) + slice329 := ((element).Metadata).Examples + length331 := uint32(len(slice329)) + result330 := witRuntime.Allocate(pinner, uintptr(length331*(2*4)), 4) + for index, element := range slice329 { + base := unsafe.Add(result330, index*(2*4)) + utf8328 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8328) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8328))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length331) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result330))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8332 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8332) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8332))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8333 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8333) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8333))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = uint32(length336) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = uint32(uintptr(uintptr(result335))) + + default: + panic("unreachable") + } + slice381 := (element).Methods + length383 := uint32(len(slice381)) + result382 := witRuntime.Allocate(pinner, uintptr(length383*(40+12*4)), 8) + for index, element := range slice381 { + base := unsafe.Add(result382, index*(40+12*4)) + utf8337 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8337) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8337))) + utf8338 := unsafe.Pointer(unsafe.StringData((element).Description)) + pinner.Pin(utf8338) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).Description))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8338))) + slice361 := (element).HttpEndpoint + length363 := uint32(len(slice361)) + result362 := witRuntime.Allocate(pinner, uintptr(length363*(12*4)), 4) + for index, element := range slice361 { + base := unsafe.Add(result362, index*(12*4)) + + switch (element).HttpMethod.Tag() { + case golem_agent_common.HttpMethodGet: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + + case golem_agent_common.HttpMethodHead: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_agent_common.HttpMethodPost: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + case golem_agent_common.HttpMethodPut: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + case golem_agent_common.HttpMethodDelete: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + case golem_agent_common.HttpMethodConnect: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + case golem_agent_common.HttpMethodOptions: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + case golem_agent_common.HttpMethodTrace: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + case golem_agent_common.HttpMethodPatch: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + case golem_agent_common.HttpMethodCustom: + payload := (element).HttpMethod.Custom() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + utf8339 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8339) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8339))) + + default: + panic("unreachable") + } + slice343 := (element).PathSuffix + length345 := uint32(len(slice343)) + result344 := witRuntime.Allocate(pinner, uintptr(length345*(3*4)), 4) + for index, element := range slice343 { + base := unsafe.Add(result344, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8340 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8340) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8340))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8341 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8341) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8341))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8342 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8342) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8342))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(length345) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(result344))) + slice348 := (element).HeaderVars + length350 := uint32(len(slice348)) + result349 := witRuntime.Allocate(pinner, uintptr(length350*(4*4)), 4) + for index, element := range slice348 { + base := unsafe.Add(result349, index*(4*4)) + utf8346 := unsafe.Pointer(unsafe.StringData((element).HeaderName)) + pinner.Pin(utf8346) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).HeaderName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8346))) + utf8347 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8347) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8347))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(length350) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uintptr(uintptr(result349))) + slice353 := (element).QueryVars + length355 := uint32(len(slice353)) + result354 := witRuntime.Allocate(pinner, uintptr(length355*(4*4)), 4) + for index, element := range slice353 { + base := unsafe.Add(result354, index*(4*4)) + utf8351 := unsafe.Pointer(unsafe.StringData((element).QueryParamName)) + pinner.Pin(utf8351) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).QueryParamName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8351))) + utf8352 := unsafe.Pointer(unsafe.StringData((element).VariableName)) + pinner.Pin(utf8352) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uint32(len((element).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uintptr(uintptr(utf8352))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(length355) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(result354))) + + switch (element).AuthDetails.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).AuthDetails.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + var result356 int32 + if (payload).Required { + result356 = 1 + } else { + result356 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 9*4))) = int8(result356) + + default: + panic("unreachable") + } + slice358 := ((element).CorsOptions).AllowedPatterns + length360 := uint32(len(slice358)) + result359 := witRuntime.Allocate(pinner, uintptr(length360*(2*4)), 4) + for index, element := range slice358 { + base := unsafe.Add(result359, index*(2*4)) + utf8357 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8357) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8357))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length360) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result359))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(length363) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(result362))) + + switch (element).PromptHint.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).PromptHint.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8364 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8364) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8364))) + + default: + panic("unreachable") + } + + switch (element).InputSchema.Tag() { + case golem_agent_common.InputSchemaParameters: + payload := (element).InputSchema.Parameters() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + slice377 := payload + length379 := uint32(len(slice377)) + result378 := witRuntime.Allocate(pinner, uintptr(length379*(8+16*4)), 4) + for index, element := range slice377 { + base := unsafe.Add(result378, index*(8+16*4)) + utf8365 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8365) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8365))) + + switch (element).Source.Tag() { + case golem_agent_common.FieldSourceUserSupplied: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case golem_agent_common.FieldSourceAutoInjected: + payload := (element).Source.AutoInjected() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 2*4))) = int8(int32(payload)) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = (element).Schema + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8366 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8366) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8366))) + + default: + panic("unreachable") + } + slice368 := ((element).Metadata).Aliases + length370 := uint32(len(slice368)) + result369 := witRuntime.Allocate(pinner, uintptr(length370*(2*4)), 4) + for index, element := range slice368 { + base := unsafe.Add(result369, index*(2*4)) + utf8367 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8367) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8367))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length370) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result369))) + slice372 := ((element).Metadata).Examples + length374 := uint32(len(slice372)) + result373 := witRuntime.Allocate(pinner, uintptr(length374*(2*4)), 4) + for index, element := range slice372 { + base := unsafe.Add(result373, index*(2*4)) + utf8371 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8371) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8371))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length374) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result373))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8375 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8375) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8375))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8376 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8376) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8376))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(length379) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(result378))) + + default: + panic("unreachable") + } + + switch (element).OutputSchema.Tag() { + case golem_agent_common.OutputSchemaUnit: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(0)) + + case golem_agent_common.OutputSchemaSingle: + payload := (element).OutputSchema.Single() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 12*4))) = payload + + default: + panic("unreachable") + } + + switch (element).ReadOnly.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).ReadOnly.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch (payload).CachePolicy.Tag() { + case golem_agent_common.CachePolicyNoCache: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(0)) + + case golem_agent_common.CachePolicyUntilWrite: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(1)) + + case golem_agent_common.CachePolicyTtl: + payload := (payload).CachePolicy.Ttl() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 12*4))) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 12*4))) = int64(payload) + + default: + panic("unreachable") + } + var result380 int32 + if (payload).UsesPrincipal { + result380 = 1 + } else { + result380 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 12*4))) = int8(result380) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(length383) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(result382))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (25 * 4))) = uint32(length386) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 * 4))) = uint32(uintptr(uintptr(result385))) + *(*int8)(unsafe.Add(unsafe.Pointer(base), (26 * 4))) = int8(int32((element).Mode)) + + switch (element).HttpMount.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (27 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).HttpMount.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (27 * 4))) = int8(int32(1)) + slice390 := (payload).PathPrefix + length392 := uint32(len(slice390)) + result391 := witRuntime.Allocate(pinner, uintptr(length392*(3*4)), 4) + for index, element := range slice390 { + base := unsafe.Add(result391, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8387 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8387) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8387))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8388 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8388) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8388))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8389 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8389) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8389))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (29 * 4))) = uint32(length392) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (28 * 4))) = uint32(uintptr(uintptr(result391))) + + switch (payload).AuthDetails.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (30 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AuthDetails.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (30 * 4))) = int8(int32(1)) + var result393 int32 + if (payload).Required { + result393 = 1 + } else { + result393 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (1 + 30*4))) = int8(result393) + + default: + panic("unreachable") + } + var result394 int32 + if (payload).PhantomAgent { + result394 = 1 + } else { + result394 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 + 30*4))) = int8(result394) + slice396 := ((payload).CorsOptions).AllowedPatterns + length398 := uint32(len(slice396)) + result397 := witRuntime.Allocate(pinner, uintptr(length398*(2*4)), 4) + for index, element := range slice396 { + base := unsafe.Add(result397, index*(2*4)) + utf8395 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8395) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8395))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 * 4))) = uint32(length398) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (31 * 4))) = uint32(uintptr(uintptr(result397))) + slice402 := (payload).WebhookSuffix + length404 := uint32(len(slice402)) + result403 := witRuntime.Allocate(pinner, uintptr(length404*(3*4)), 4) + for index, element := range slice402 { + base := unsafe.Add(result403, index*(3*4)) + + switch element.Tag() { + case golem_agent_common.PathSegmentLiteral: + payload := element.Literal() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + utf8399 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8399) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8399))) + + case golem_agent_common.PathSegmentSystemVariable: + payload := element.SystemVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 4)) = int8(int32(payload)) + + case golem_agent_common.PathSegmentPathVariable: + payload := element.PathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + utf8400 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8400) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8400))) + + case golem_agent_common.PathSegmentRemainingPathVariable: + payload := element.RemainingPathVariable() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + utf8401 := unsafe.Pointer(unsafe.StringData((payload).VariableName)) + pinner.Pin(utf8401) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(uint32(len((payload).VariableName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(utf8401))) + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (34 * 4))) = uint32(length404) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (33 * 4))) = uint32(uintptr(uintptr(result403))) + + default: + panic("unreachable") + } + + switch (element).Snapshotting.Tag() { + case golem_agent_common.SnapshottingDisabled: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 34*4))) = int8(int32(0)) + + case golem_agent_common.SnapshottingEnabled: + payload := (element).Snapshotting.Enabled() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 34*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_agent_common.SnapshottingConfigDefault: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 34*4))) = int8(int32(0)) + + case golem_agent_common.SnapshottingConfigPeriodic: + payload := payload.Periodic() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 34*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (24 + 34*4))) = int64(payload) + + case golem_agent_common.SnapshottingConfigEveryNInvocation: + payload := payload.EveryNInvocation() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 34*4))) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), (24 + 34*4))) = int16(int32(payload)) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + slice409 := (element).Config + length411 := uint32(len(slice409)) + result410 := witRuntime.Allocate(pinner, uintptr(length411*(4*4)), 4) + for index, element := range slice409 { + base := unsafe.Add(result410, index*(4*4)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32((element).Source)) + slice406 := (element).Path + length408 := uint32(len(slice406)) + result407 := witRuntime.Allocate(pinner, uintptr(length408*(2*4)), 4) + for index, element := range slice406 { + base := unsafe.Add(result407, index*(2*4)) + utf8405 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8405) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8405))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = uint32(length408) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uintptr(uintptr(result407))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = (element).ValueType + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 35*4))) = uint32(length411) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (32 + 34*4))) = uint32(uintptr(uintptr(result410))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 * 4))) = uint32(length414) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), 4)) = uint32(uintptr(uintptr(result413))) + + case witTypes.ResultErr: + payload := result.Err() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), 0)) = int8(int32(1)) + + switch payload.Tag() { + case golem_agent_common.AgentErrorInvalidInput: + payload := payload.InvalidInput() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), 4)) = int8(int32(0)) + utf8415 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8415) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (3 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 * 4))) = uint32(uintptr(uintptr(utf8415))) + + case golem_agent_common.AgentErrorInvalidMethod: + payload := payload.InvalidMethod() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), 4)) = int8(int32(1)) + utf8416 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8416) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (3 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 * 4))) = uint32(uintptr(uintptr(utf8416))) + + case golem_agent_common.AgentErrorInvalidType: + payload := payload.InvalidType() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), 4)) = int8(int32(2)) + utf8417 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8417) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (3 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 * 4))) = uint32(uintptr(uintptr(utf8417))) + + case golem_agent_common.AgentErrorInvalidAgentId: + payload := payload.InvalidAgentId() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), 4)) = int8(int32(3)) + utf8418 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8418) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (3 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 * 4))) = uint32(uintptr(uintptr(utf8418))) + + case golem_agent_common.AgentErrorCustomError: + payload := payload.CustomError() + *(*int8)(unsafe.Add(unsafe.Pointer(exportReturnArea), 4)) = int8(int32(4)) + slice537 := ((payload).Graph).TypeNodes + length539 := uint32(len(slice537)) + result538 := witRuntime.Allocate(pinner, uintptr(length539*(56+22*4)), 8) + for index, element := range slice537 { + base := unsafe.Add(result538, index*(56+22*4)) + + switch (element).Body.Tag() { + case golem_core_types.SchemaTypeBodyRefType: + payload := (element).Body.RefType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyBoolType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + + case golem_core_types.SchemaTypeBodyS8Type: + payload := (element).Body.S8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8419 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8419) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8419))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS16Type: + payload := (element).Body.S16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8420 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8420) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8420))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS32Type: + payload := (element).Body.S32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8421 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8421) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8421))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyS64Type: + payload := (element).Body.S64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8422 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8422) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8422))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU8Type: + payload := (element).Body.U8Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8423 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8423) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8423))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU16Type: + payload := (element).Body.U16Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8424 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8424) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8424))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU32Type: + payload := (element).Body.U32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8425 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8425) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8425))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyU64Type: + payload := (element).Body.U64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8426 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8426) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8426))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF32Type: + payload := (element).Body.F32Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8427 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8427) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8427))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyF64Type: + payload := (element).Body.F64Type() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 24)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 32)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 40)) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.NumericBoundSigned: + payload := payload.Signed() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(0)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = payload + + case golem_core_types.NumericBoundUnsigned: + payload := payload.Unsigned() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + case golem_core_types.NumericBoundFloatBits: + payload := payload.FloatBits() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 48)) = int8(int32(2)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 56)) = int64(payload) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch (payload).Unit.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Unit.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 64)) = int8(int32(1)) + utf8428 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8428) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (64 + 1*4))) = uint32(uintptr(uintptr(utf8428))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyCharType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + + case golem_core_types.SchemaTypeBodyStringType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + + case golem_core_types.SchemaTypeBodyRecordType: + payload := (element).Body.RecordType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + slice441 := payload + length443 := uint32(len(slice441)) + result442 := witRuntime.Allocate(pinner, uintptr(length443*(17*4)), 4) + for index, element := range slice441 { + base := unsafe.Add(result442, index*(17*4)) + utf8429 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8429) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8429))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8430 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8430) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8430))) + + default: + panic("unreachable") + } + slice432 := ((element).Metadata).Aliases + length434 := uint32(len(slice432)) + result433 := witRuntime.Allocate(pinner, uintptr(length434*(2*4)), 4) + for index, element := range slice432 { + base := unsafe.Add(result433, index*(2*4)) + utf8431 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8431) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8431))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(length434) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = uint32(uintptr(uintptr(result433))) + slice436 := ((element).Metadata).Examples + length438 := uint32(len(slice436)) + result437 := witRuntime.Allocate(pinner, uintptr(length438*(2*4)), 4) + for index, element := range slice436 { + base := unsafe.Add(result437, index*(2*4)) + utf8435 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8435) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8435))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = uint32(length438) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uintptr(uintptr(result437))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = int8(int32(1)) + utf8439 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8439) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uintptr(uintptr(utf8439))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = int8(int32(3)) + utf8440 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8440) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(uintptr(uintptr(utf8440))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length443) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result442))) + + case golem_core_types.SchemaTypeBodyVariantType: + payload := (element).Body.VariantType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + slice456 := payload + length458 := uint32(len(slice456)) + result457 := witRuntime.Allocate(pinner, uintptr(length458*(8+16*4)), 4) + for index, element := range slice456 { + base := unsafe.Add(result457, index*(8+16*4)) + utf8444 := unsafe.Pointer(unsafe.StringData((element).Name)) + pinner.Pin(utf8444) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Name))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8444))) + + switch (element).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (4 + 2*4))) = payload + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8445 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8445) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8445))) + + default: + panic("unreachable") + } + slice447 := ((element).Metadata).Aliases + length449 := uint32(len(slice447)) + result448 := witRuntime.Allocate(pinner, uintptr(length449*(2*4)), 4) + for index, element := range slice447 { + base := unsafe.Add(result448, index*(2*4)) + utf8446 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8446) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8446))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length449) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result448))) + slice451 := ((element).Metadata).Examples + length453 := uint32(len(slice451)) + result452 := witRuntime.Allocate(pinner, uintptr(length453*(2*4)), 4) + for index, element := range slice451 { + base := unsafe.Add(result452, index*(2*4)) + utf8450 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8450) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8450))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 8*4))) = uint32(length453) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 7*4))) = uint32(uintptr(uintptr(result452))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 9*4))) = int8(int32(1)) + utf8454 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8454) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 11*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 10*4))) = uint32(uintptr(uintptr(utf8454))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 12*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 13*4))) = int8(int32(3)) + utf8455 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8455) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 15*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 14*4))) = uint32(uintptr(uintptr(utf8455))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length458) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result457))) + + case golem_core_types.SchemaTypeBodyEnumType: + payload := (element).Body.EnumType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice460 := payload + length462 := uint32(len(slice460)) + result461 := witRuntime.Allocate(pinner, uintptr(length462*(2*4)), 4) + for index, element := range slice460 { + base := unsafe.Add(result461, index*(2*4)) + utf8459 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8459) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8459))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length462) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result461))) + + case golem_core_types.SchemaTypeBodyFlagsType: + payload := (element).Body.FlagsType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice464 := payload + length466 := uint32(len(slice464)) + result465 := witRuntime.Allocate(pinner, uintptr(length466*(2*4)), 4) + for index, element := range slice464 { + base := unsafe.Add(result465, index*(2*4)) + utf8463 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8463) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8463))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length466) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result465))) + + case golem_core_types.SchemaTypeBodyTupleType: + payload := (element).Body.TupleType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice467 := payload + length469 := uint32(len(slice467)) + result468 := witRuntime.Allocate(pinner, uintptr(length469*4), 4) + for index, element := range slice467 { + base := unsafe.Add(result468, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length469) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result468))) + + case golem_core_types.SchemaTypeBodyListType: + payload := (element).Body.ListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyFixedListType: + payload := (element).Body.FixedListType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Element + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = int32((payload).Length) + + case golem_core_types.SchemaTypeBodyMapType: + payload := (element).Body.MapType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = (payload).Value + + case golem_core_types.SchemaTypeBodyOptionType: + payload := (element).Body.OptionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaTypeBodyResultType: + payload := (element).Body.ResultType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + + switch (payload).Ok.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Ok.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + switch (payload).Err.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Err.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 16)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 20)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyTextType: + payload := (element).Body.TextType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + + switch (payload).Languages.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Languages.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice471 := payload + length473 := uint32(len(slice471)) + result472 := witRuntime.Allocate(pinner, uintptr(length473*(2*4)), 4) + for index, element := range slice471 { + base := unsafe.Add(result472, index*(2*4)) + utf8470 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8470) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8470))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length473) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result472))) + + default: + panic("unreachable") + } + + switch (payload).MinLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxLength.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxLength.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).Regex.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Regex.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (24 + 3*4))) = int8(int32(1)) + utf8474 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8474) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = uint32(uintptr(uintptr(utf8474))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyBinaryType: + payload := (element).Body.BinaryType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + + switch (payload).MimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice476 := payload + length478 := uint32(len(slice476)) + result477 := witRuntime.Allocate(pinner, uintptr(length478*(2*4)), 4) + for index, element := range slice476 { + base := unsafe.Add(result477, index*(2*4)) + utf8475 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8475) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8475))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length478) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result477))) + + default: + panic("unreachable") + } + + switch (payload).MinBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MinBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (12 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + switch (payload).MaxBytes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MaxBytes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 + 3*4))) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (20 + 3*4))) = int32(payload) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyPathType: + payload := (element).Body.PathType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32((payload).Direction)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 9)) = int8(int32((payload).Kind)) + + switch (payload).AllowedMimeTypes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedMimeTypes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + slice480 := payload + length482 := uint32(len(slice480)) + result481 := witRuntime.Allocate(pinner, uintptr(length482*(2*4)), 4) + for index, element := range slice480 { + base := unsafe.Add(result481, index*(2*4)) + utf8479 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8479) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8479))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length482) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result481))) + + default: + panic("unreachable") + } + + switch (payload).AllowedExtensions.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedExtensions.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + slice484 := payload + length486 := uint32(len(slice484)) + result485 := witRuntime.Allocate(pinner, uintptr(length486*(2*4)), 4) + for index, element := range slice484 { + base := unsafe.Add(result485, index*(2*4)) + utf8483 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8483) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8483))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 6*4))) = uint32(length486) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(uintptr(uintptr(result485))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUrlType: + payload := (element).Body.UrlType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + + switch (payload).AllowedSchemes.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedSchemes.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + slice488 := payload + length490 := uint32(len(slice488)) + result489 := witRuntime.Allocate(pinner, uintptr(length490*(2*4)), 4) + for index, element := range slice488 { + base := unsafe.Add(result489, index*(2*4)) + utf8487 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8487) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8487))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(length490) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(result489))) + + default: + panic("unreachable") + } + + switch (payload).AllowedHosts.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).AllowedHosts.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = int8(int32(1)) + slice492 := payload + length494 := uint32(len(slice492)) + result493 := witRuntime.Allocate(pinner, uintptr(length494*(2*4)), 4) + for index, element := range slice492 { + base := unsafe.Add(result493, index*(2*4)) + utf8491 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8491) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8491))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 5*4))) = uint32(length494) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uintptr(uintptr(result493))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyDatetimeType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + + case golem_core_types.SchemaTypeBodyDurationType: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + + case golem_core_types.SchemaTypeBodyQuantityType: + payload := (element).Body.QuantityType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8495 := unsafe.Pointer(unsafe.StringData((payload).BaseUnit)) + pinner.Pin(utf8495) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).BaseUnit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8495))) + slice497 := (payload).AllowedSuffixes + length499 := uint32(len(slice497)) + result498 := witRuntime.Allocate(pinner, uintptr(length499*(2*4)), 4) + for index, element := range slice497 { + base := unsafe.Add(result498, index*(2*4)) + utf8496 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8496) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8496))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(length499) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(result498))) + + switch (payload).Min.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Min.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (16 + 4*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (24 + 4*4))) = (payload).Scale + utf8500 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8500) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 6*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (24 + 5*4))) = uint32(uintptr(uintptr(utf8500))) + + default: + panic("unreachable") + } + + switch (payload).Max.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Max.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (32 + 6*4))) = int8(int32(1)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), (40 + 6*4))) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), (48 + 6*4))) = (payload).Scale + utf8501 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8501) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 8*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (48 + 7*4))) = uint32(uintptr(uintptr(utf8501))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyUnionType: + payload := (element).Body.UnionType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + slice521 := (payload).Branches + length523 := uint32(len(slice521)) + result522 := witRuntime.Allocate(pinner, uintptr(length523*(23*4)), 4) + for index, element := range slice521 { + base := unsafe.Add(result522, index*(23*4)) + utf8502 := unsafe.Pointer(unsafe.StringData((element).Tag)) + pinner.Pin(utf8502) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8502))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = (element).Body + + switch (element).Discriminator.Tag() { + case golem_core_types.DiscriminatorRulePrefix: + payload := (element).Discriminator.Prefix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(0)) + utf8503 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8503) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8503))) + + case golem_core_types.DiscriminatorRuleSuffix: + payload := (element).Discriminator.Suffix() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(1)) + utf8504 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8504) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8504))) + + case golem_core_types.DiscriminatorRuleContains: + payload := (element).Discriminator.Contains() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(2)) + utf8505 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8505) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8505))) + + case golem_core_types.DiscriminatorRuleRegex: + payload := (element).Discriminator.Regex() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(3)) + utf8506 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8506) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8506))) + + case golem_core_types.DiscriminatorRuleFieldEquals: + payload := (element).Discriminator.FieldEquals() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(4)) + utf8507 := unsafe.Pointer(unsafe.StringData((payload).FieldName)) + pinner.Pin(utf8507) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len((payload).FieldName))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8507))) + + switch (payload).Literal.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Literal.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (6 * 4))) = int8(int32(1)) + utf8508 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8508) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (7 * 4))) = uint32(uintptr(uintptr(utf8508))) + + default: + panic("unreachable") + } + + case golem_core_types.DiscriminatorRuleFieldAbsent: + payload := (element).Discriminator.FieldAbsent() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = int8(int32(5)) + utf8509 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8509) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uintptr(uintptr(utf8509))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (9 * 4))) = int8(int32(1)) + utf8510 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8510) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (11 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (10 * 4))) = uint32(uintptr(uintptr(utf8510))) + + default: + panic("unreachable") + } + slice512 := ((element).Metadata).Aliases + length514 := uint32(len(slice512)) + result513 := witRuntime.Allocate(pinner, uintptr(length514*(2*4)), 4) + for index, element := range slice512 { + base := unsafe.Add(result513, index*(2*4)) + utf8511 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8511) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8511))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (13 * 4))) = uint32(length514) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (12 * 4))) = uint32(uintptr(uintptr(result513))) + slice516 := ((element).Metadata).Examples + length518 := uint32(len(slice516)) + result517 := witRuntime.Allocate(pinner, uintptr(length518*(2*4)), 4) + for index, element := range slice516 { + base := unsafe.Add(result517, index*(2*4)) + utf8515 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8515) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8515))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (15 * 4))) = uint32(length518) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (14 * 4))) = uint32(uintptr(uintptr(result517))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (16 * 4))) = int8(int32(1)) + utf8519 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8519) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (18 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (17 * 4))) = uint32(uintptr(uintptr(utf8519))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (19 * 4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (20 * 4))) = int8(int32(3)) + utf8520 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8520) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (22 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (21 * 4))) = uint32(uintptr(uintptr(utf8520))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length523) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result522))) + + case golem_core_types.SchemaTypeBodySecretType: + payload := (element).Body.SecretType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Inner + + switch (payload).Category.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Category.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = int8(int32(1)) + utf8524 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8524) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uintptr(uintptr(utf8524))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyQuotaTokenType: + payload := (element).Body.QuotaTokenType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(33)) + + switch (payload).ResourceName.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).ResourceName.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + utf8525 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8525) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uintptr(uintptr(utf8525))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyFutureType: + payload := (element).Body.FutureType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(34)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaTypeBodyStreamType: + payload := (element).Body.StreamType() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(35)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + switch ((element).Metadata).Doc.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Doc.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 8*4))) = int8(int32(1)) + utf8526 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8526) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 10*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 9*4))) = uint32(uintptr(uintptr(utf8526))) + + default: + panic("unreachable") + } + slice528 := ((element).Metadata).Aliases + length530 := uint32(len(slice528)) + result529 := witRuntime.Allocate(pinner, uintptr(length530*(2*4)), 4) + for index, element := range slice528 { + base := unsafe.Add(result529, index*(2*4)) + utf8527 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8527) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8527))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 12*4))) = uint32(length530) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 11*4))) = uint32(uintptr(uintptr(result529))) + slice532 := ((element).Metadata).Examples + length534 := uint32(len(slice532)) + result533 := witRuntime.Allocate(pinner, uintptr(length534*(2*4)), 4) + for index, element := range slice532 { + base := unsafe.Add(result533, index*(2*4)) + utf8531 := unsafe.Pointer(unsafe.StringData(element)) + pinner.Pin(utf8531) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len(element))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8531))) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 14*4))) = uint32(length534) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 13*4))) = uint32(uintptr(uintptr(result533))) + + switch ((element).Metadata).Deprecated.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Deprecated.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 15*4))) = int8(int32(1)) + utf8535 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8535) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 17*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 16*4))) = uint32(uintptr(uintptr(utf8535))) + + default: + panic("unreachable") + } + + switch ((element).Metadata).Role.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := ((element).Metadata).Role.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 18*4))) = int8(int32(1)) + + switch payload.Tag() { + case golem_core_types.RoleMultimodal: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(0)) + + case golem_core_types.RoleUnstructuredText: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(1)) + + case golem_core_types.RoleUnstructuredBinary: + + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(2)) + + case golem_core_types.RoleOther: + payload := payload.Other() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (56 + 19*4))) = int8(int32(3)) + utf8536 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8536) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 21*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (56 + 20*4))) = uint32(uintptr(uintptr(utf8536))) + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (3 * 4))) = uint32(length539) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (2 * 4))) = uint32(uintptr(uintptr(result538))) + slice542 := ((payload).Graph).Defs + length544 := uint32(len(slice542)) + result543 := witRuntime.Allocate(pinner, uintptr(length544*(6*4)), 4) + for index, element := range slice542 { + base := unsafe.Add(result543, index*(6*4)) + utf8540 := unsafe.Pointer(unsafe.StringData((element).Id)) + pinner.Pin(utf8540) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 4)) = uint32(uint32(len((element).Id))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 0)) = uint32(uintptr(uintptr(utf8540))) + + switch (element).Name.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (element).Name.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (2 * 4))) = int8(int32(1)) + utf8541 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8541) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (4 * 4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (3 * 4))) = uint32(uintptr(uintptr(utf8541))) + + default: + panic("unreachable") + } + *(*int32)(unsafe.Add(unsafe.Pointer(base), (5 * 4))) = (element).Body + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (5 * 4))) = uint32(length544) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (4 * 4))) = uint32(uintptr(uintptr(result543))) + *(*int32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (6 * 4))) = ((payload).Graph).Root + slice573 := ((payload).Value).ValueNodes + length575 := uint32(len(slice573)) + result574 := witRuntime.Allocate(pinner, uintptr(length575*(16+4*4)), 8) + for index, element := range slice573 { + base := unsafe.Add(result574, index*(16+4*4)) + + switch element.Tag() { + case golem_core_types.SchemaValueNodeBoolValue: + payload := element.BoolValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(0)) + var result545 int32 + if payload { + result545 = 1 + } else { + result545 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(result545) + + case golem_core_types.SchemaValueNodeS8Value: + payload := element.S8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(1)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeS16Value: + payload := element.S16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(2)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeS32Value: + payload := element.S32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(3)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeS64Value: + payload := element.S64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(4)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeU8Value: + payload := element.U8Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(5)) + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(payload)) + + case golem_core_types.SchemaValueNodeU16Value: + payload := element.U16Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(6)) + *(*int16)(unsafe.Add(unsafe.Pointer(base), 8)) = int16(int32(payload)) + + case golem_core_types.SchemaValueNodeU32Value: + payload := element.U32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(7)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeU64Value: + payload := element.U64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(8)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = int64(payload) + + case golem_core_types.SchemaValueNodeF32Value: + payload := element.F32Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(9)) + *(*float32)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeF64Value: + payload := element.F64Value() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(10)) + *(*float64)(unsafe.Add(unsafe.Pointer(base), 8)) = payload + + case golem_core_types.SchemaValueNodeCharValue: + payload := element.CharValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(11)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeStringValue: + payload := element.StringValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(12)) + utf8546 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8546) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8546))) + + case golem_core_types.SchemaValueNodeRecordValue: + payload := element.RecordValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(13)) + slice547 := payload + length549 := uint32(len(slice547)) + result548 := witRuntime.Allocate(pinner, uintptr(length549*4), 4) + for index, element := range slice547 { + base := unsafe.Add(result548, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length549) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result548))) + + case golem_core_types.SchemaValueNodeVariantValue: + payload := element.VariantValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(14)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32((payload).Case) + + switch (payload).Payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeEnumValue: + payload := element.EnumValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(15)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = int32(payload) + + case golem_core_types.SchemaValueNodeFlagsValue: + payload := element.FlagsValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(16)) + slice551 := payload + length553 := uint32(len(slice551)) + result552 := witRuntime.Allocate(pinner, uintptr(length553*1), 1) + for index, element := range slice551 { + base := unsafe.Add(result552, index*1) + var result550 int32 + if element { + result550 = 1 + } else { + result550 = 0 + } + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(result550) + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length553) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result552))) + + case golem_core_types.SchemaValueNodeTupleValue: + payload := element.TupleValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(17)) + slice554 := payload + length556 := uint32(len(slice554)) + result555 := witRuntime.Allocate(pinner, uintptr(length556*4), 4) + for index, element := range slice554 { + base := unsafe.Add(result555, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length556) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result555))) + + case golem_core_types.SchemaValueNodeListValue: + payload := element.ListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(18)) + slice557 := payload + length559 := uint32(len(slice557)) + result558 := witRuntime.Allocate(pinner, uintptr(length559*4), 4) + for index, element := range slice557 { + base := unsafe.Add(result558, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length559) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result558))) + + case golem_core_types.SchemaValueNodeFixedListValue: + payload := element.FixedListValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(19)) + slice560 := payload + length562 := uint32(len(slice560)) + result561 := witRuntime.Allocate(pinner, uintptr(length562*4), 4) + for index, element := range slice560 { + base := unsafe.Add(result561, index*4) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = element + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length562) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result561))) + + case golem_core_types.SchemaValueNodeMapValue: + payload := element.MapValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(20)) + slice563 := payload + length565 := uint32(len(slice563)) + result564 := witRuntime.Allocate(pinner, uintptr(length565*8), 4) + for index, element := range slice563 { + base := unsafe.Add(result564, index*8) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 0)) = (element).Key + *(*int32)(unsafe.Add(unsafe.Pointer(base), 4)) = (element).Value + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(length565) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(result564))) + + case golem_core_types.SchemaValueNodeOptionValue: + payload := element.OptionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(21)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 12)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeResultValue: + payload := element.ResultValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(22)) + + switch payload.Tag() { + case golem_core_types.ResultValuePayloadOkValue: + payload := payload.OkValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(0)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + case golem_core_types.ResultValuePayloadErrValue: + payload := payload.ErrValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 8)) = int8(int32(1)) + + switch payload.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(0)) + + case witTypes.OptionSome: + payload := payload.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 12)) = int8(int32(1)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = payload + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeTextValue: + payload := element.TextValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(23)) + utf8566 := unsafe.Pointer(unsafe.StringData((payload).Text)) + pinner.Pin(utf8566) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Text))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8566))) + + switch (payload).Language.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).Language.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8567 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8567) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8567))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodeBinaryValue: + payload := element.BinaryValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(24)) + data := unsafe.Pointer(unsafe.SliceData((payload).Bytes)) + pinner.Pin(data) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Bytes))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(data))) + + switch (payload).MimeType.Tag() { + case witTypes.OptionNone: + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(0)) + + case witTypes.OptionSome: + payload := (payload).MimeType.Some() + *(*int8)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = int8(int32(1)) + utf8568 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8568) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 4*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 3*4))) = uint32(uintptr(uintptr(utf8568))) + + default: + panic("unreachable") + } + + case golem_core_types.SchemaValueNodePathValue: + payload := element.PathValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(25)) + utf8569 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8569) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8569))) + + case golem_core_types.SchemaValueNodeUrlValue: + payload := element.UrlValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(26)) + utf8570 := unsafe.Pointer(unsafe.StringData(payload)) + pinner.Pin(utf8570) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len(payload))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8570))) + + case golem_core_types.SchemaValueNodeDatetimeValue: + payload := element.DatetimeValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(27)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Seconds + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = int32((payload).Nanoseconds) + + case golem_core_types.SchemaValueNodeDurationValue: + payload := element.DurationValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(28)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Nanoseconds + + case golem_core_types.SchemaValueNodeQuantityValueNode: + payload := element.QuantityValueNode() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(29)) + *(*int64)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).Mantissa + *(*int32)(unsafe.Add(unsafe.Pointer(base), 16)) = (payload).Scale + utf8571 := unsafe.Pointer(unsafe.StringData((payload).Unit)) + pinner.Pin(utf8571) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 2*4))) = uint32(uint32(len((payload).Unit))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (16 + 1*4))) = uint32(uintptr(uintptr(utf8571))) + + case golem_core_types.SchemaValueNodeUnionValue: + payload := element.UnionValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(30)) + utf8572 := unsafe.Pointer(unsafe.StringData((payload).Tag)) + pinner.Pin(utf8572) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), (8 + 1*4))) = uint32(uint32(len((payload).Tag))) + *(*uint32)(unsafe.Add(unsafe.Pointer(base), 8)) = uint32(uintptr(uintptr(utf8572))) + *(*int32)(unsafe.Add(unsafe.Pointer(base), (8 + 2*4))) = (payload).Body + + case golem_core_types.SchemaValueNodeSecretValue: + payload := element.SecretValue() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(31)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + case golem_core_types.SchemaValueNodeQuotaTokenHandle: + payload := element.QuotaTokenHandle() + *(*int8)(unsafe.Add(unsafe.Pointer(base), 0)) = int8(int32(32)) + *(*int32)(unsafe.Add(unsafe.Pointer(base), 8)) = (payload).TakeHandle() + + default: + panic("unreachable") + } + + } + + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (8 * 4))) = uint32(length575) + *(*uint32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (7 * 4))) = uint32(uintptr(uintptr(result574))) + *(*int32)(unsafe.Add(unsafe.Pointer(exportReturnArea), (9 * 4))) = ((payload).Value).Root + + default: + panic("unreachable") + } + + default: + panic("unreachable") + } + return exportReturnArea + +} + +//go:wasmexport cabi_post_golem:agent/guest@2.0.0#discover-agent-types +func wasm_export_post_return_golem_agent_guest_discover_agent_types(result uintptr) { + syncExportPinner.Unpin() +} diff --git a/sdks/go/wit/deps/blobstore/blobstore.wit b/sdks/go/wit/deps/blobstore/blobstore.wit new file mode 100644 index 0000000000..cc52516a57 --- /dev/null +++ b/sdks/go/wit/deps/blobstore/blobstore.wit @@ -0,0 +1,29 @@ +package wasi:blobstore; + +// wasi-cloud Blobstore service definition +interface blobstore { + use container.{container}; + use types.{error, container-name, object-id}; + + // creates a new empty container + create-container: func(name: container-name) -> result; + + // retrieves a container by name + get-container: func(name: container-name) -> result; + + // deletes a container and all objects within it + delete-container: func(name: container-name) -> result<_, error>; + + // returns true if the container exists + container-exists: func(name: container-name) -> result; + + // copies (duplicates) an object, to the same or a different container. + // returns an error if the target container does not exist. + // overwrites destination object if it already existed. + copy-object: func(src: object-id, dest: object-id) -> result<_, error>; + + // moves or renames an object, to the same or a different container + // returns an error if the destination container does not exist. + // overwrites destination object if it already existed. + move-object: func(src:object-id, dest: object-id) -> result<_, error>; +} \ No newline at end of file diff --git a/sdks/go/wit/deps/blobstore/container.wit b/sdks/go/wit/deps/blobstore/container.wit new file mode 100644 index 0000000000..a814738526 --- /dev/null +++ b/sdks/go/wit/deps/blobstore/container.wit @@ -0,0 +1,51 @@ +package wasi:blobstore; + +// a Container is a collection of objects +interface container { + use types.{ + container-metadata, + error, + incoming-value, + object-metadata, + object-name, + outgoing-value, + }; + + // this defines the `container` resource + resource container { + // returns container name + name: func() -> result; + + // returns container metadata + info: func() -> result; + + // retrieves an object or portion of an object, as a resource. + // Start and end offsets are inclusive. + // Once a data-blob resource has been created, the underlying bytes are held by the blobstore service for the lifetime + // of the data-blob resource, even if the object they came from is later deleted. + get-data: func(name: object-name, start: u64, end: u64) -> result; + + // creates or replaces an object with the data blob. + write-data: func(name: object-name, data: borrow) -> result<_, error>; + + // returns list of objects in the container. Order is undefined. + list-objects: func() -> result, error>; + + // deletes object. + // does not return error if object did not exist. + delete-object: func(name: object-name) -> result<_, error>; + + // deletes multiple objects in the container + delete-objects: func(names: list) -> result<_, error>; + + // returns true if the object exists in this container + has-object: func(name: object-name) -> result; + + // returns metadata for the object + object-info: func(name: object-name) -> result; + + // removes all objects within the container, leaving the container empty. + clear: func() -> result<_, error>; + } + +} diff --git a/sdks/go/wit/deps/blobstore/types.wit b/sdks/go/wit/deps/blobstore/types.wit new file mode 100644 index 0000000000..66454f8f9c --- /dev/null +++ b/sdks/go/wit/deps/blobstore/types.wit @@ -0,0 +1,70 @@ +package wasi:blobstore; + +// Types used by blobstore +interface types { + // name of a container, a collection of objects. + // The container name may be any valid UTF-8 string. + type container-name = string; + + // name of an object within a container + // The object name may be any valid UTF-8 string. + type object-name = string; + + // TODO: define timestamp to include seconds since + // Unix epoch and nanoseconds + // https://github.com/WebAssembly/wasi-blob-store/issues/7 + type timestamp = u64; + + // size of an object, in bytes + type object-size = u64; + + type error = string; + + // information about a container + record container-metadata { + // the container's name + name: container-name, + // date and time container was created + created-at: timestamp, + } + + // information about an object + record object-metadata { + // the object's name + name: object-name, + // the object's parent container + container: container-name, + // date and time the object was created + created-at: timestamp, + // size of the object, in bytes + size: object-size, + } + + // identifier for an object that includes its container name + record object-id { + container: container-name, + object: object-name + } + + /// A data blob value. The value can be of any type that can be represented + /// in a byte array. + // Soon: switch to `resource value { ... }` + resource outgoing-value { + new-outgoing-value: static func() -> outgoing-value; + outgoing-value-write-body: func(data: stream) -> result; + } + + /// A incoming-value is a wrapper around a value. + /// + /// The incoming-value provides two ways to consume the value: + /// 1. `incoming-value-consume-sync` consumes the value synchronously and returns the + /// value as a list of bytes. + /// 2. `incoming-value-consume-async` consumes the value asynchronously and returns the + /// value as a `stream`. + // Soon: switch to `resource incoming-value { ... }` + resource incoming-value { + incoming-value-consume-sync: func() -> result, error>; + incoming-value-consume-async: func() -> result, error>; + size: func() -> u64; + } +} diff --git a/sdks/go/wit/deps/blobstore/world.wit b/sdks/go/wit/deps/blobstore/world.wit new file mode 100644 index 0000000000..4391d68b87 --- /dev/null +++ b/sdks/go/wit/deps/blobstore/world.wit @@ -0,0 +1,5 @@ +package wasi:blobstore; + +world blob-store { + import blobstore; +} \ No newline at end of file diff --git a/sdks/go/wit/deps/cli-0.2.6/cli.wit b/sdks/go/wit/deps/cli-0.2.6/cli.wit new file mode 100644 index 0000000000..d7a3ca4d2c --- /dev/null +++ b/sdks/go/wit/deps/cli-0.2.6/cli.wit @@ -0,0 +1,261 @@ +package wasi:cli@0.2.6; + +@since(version = 0.2.0) +interface environment { + /// Get the POSIX-style environment variables. + /// + /// Each environment variable is provided as a pair of string variable names + /// and string value. + /// + /// Morally, these are a value import, but until value imports are available + /// in the component model, this import function should return the same + /// values each time it is called. + @since(version = 0.2.0) + get-environment: func() -> list>; + + /// Get the POSIX-style arguments to the program. + @since(version = 0.2.0) + get-arguments: func() -> list; + + /// Return a path that programs should use as their initial current working + /// directory, interpreting `.` as shorthand for this. + @since(version = 0.2.0) + initial-cwd: func() -> option; +} + +@since(version = 0.2.0) +interface exit { + /// Exit the current instance and any linked instances. + @since(version = 0.2.0) + exit: func(status: result); + + /// Exit the current instance and any linked instances, reporting the + /// specified status code to the host. + /// + /// The meaning of the code depends on the context, with 0 usually meaning + /// "success", and other values indicating various types of failure. + /// + /// This function does not return; the effect is analogous to a trap, but + /// without the connotation that something bad has happened. + @unstable(feature = cli-exit-with-code) + exit-with-code: func(status-code: u8); +} + +@since(version = 0.2.0) +interface run { + /// Run the program. + @since(version = 0.2.0) + run: func() -> result; +} + +@since(version = 0.2.0) +interface stdin { + @since(version = 0.2.0) + use wasi:io/streams@0.2.6.{input-stream}; + + @since(version = 0.2.0) + get-stdin: func() -> input-stream; +} + +@since(version = 0.2.0) +interface stdout { + @since(version = 0.2.0) + use wasi:io/streams@0.2.6.{output-stream}; + + @since(version = 0.2.0) + get-stdout: func() -> output-stream; +} + +@since(version = 0.2.0) +interface stderr { + @since(version = 0.2.0) + use wasi:io/streams@0.2.6.{output-stream}; + + @since(version = 0.2.0) + get-stderr: func() -> output-stream; +} + +/// Terminal input. +/// +/// In the future, this may include functions for disabling echoing, +/// disabling input buffering so that keyboard events are sent through +/// immediately, querying supported features, and so on. +@since(version = 0.2.0) +interface terminal-input { + /// The input side of a terminal. + @since(version = 0.2.0) + resource terminal-input; +} + +/// Terminal output. +/// +/// In the future, this may include functions for querying the terminal +/// size, being notified of terminal size changes, querying supported +/// features, and so on. +@since(version = 0.2.0) +interface terminal-output { + /// The output side of a terminal. + @since(version = 0.2.0) + resource terminal-output; +} + +/// An interface providing an optional `terminal-input` for stdin as a +/// link-time authority. +@since(version = 0.2.0) +interface terminal-stdin { + @since(version = 0.2.0) + use terminal-input.{terminal-input}; + + /// If stdin is connected to a terminal, return a `terminal-input` handle + /// allowing further interaction with it. + @since(version = 0.2.0) + get-terminal-stdin: func() -> option; +} + +/// An interface providing an optional `terminal-output` for stdout as a +/// link-time authority. +@since(version = 0.2.0) +interface terminal-stdout { + @since(version = 0.2.0) + use terminal-output.{terminal-output}; + + /// If stdout is connected to a terminal, return a `terminal-output` handle + /// allowing further interaction with it. + @since(version = 0.2.0) + get-terminal-stdout: func() -> option; +} + +/// An interface providing an optional `terminal-output` for stderr as a +/// link-time authority. +@since(version = 0.2.0) +interface terminal-stderr { + @since(version = 0.2.0) + use terminal-output.{terminal-output}; + + /// If stderr is connected to a terminal, return a `terminal-output` handle + /// allowing further interaction with it. + @since(version = 0.2.0) + get-terminal-stderr: func() -> option; +} + +@since(version = 0.2.0) +world imports { + @since(version = 0.2.0) + import environment; + @since(version = 0.2.0) + import exit; + @since(version = 0.2.0) + import wasi:io/error@0.2.6; + @since(version = 0.2.0) + import wasi:io/poll@0.2.6; + @since(version = 0.2.0) + import wasi:io/streams@0.2.6; + @since(version = 0.2.0) + import stdin; + @since(version = 0.2.0) + import stdout; + @since(version = 0.2.0) + import stderr; + @since(version = 0.2.0) + import terminal-input; + @since(version = 0.2.0) + import terminal-output; + @since(version = 0.2.0) + import terminal-stdin; + @since(version = 0.2.0) + import terminal-stdout; + @since(version = 0.2.0) + import terminal-stderr; + @since(version = 0.2.0) + import wasi:clocks/monotonic-clock@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/wall-clock@0.2.6; + @unstable(feature = clocks-timezone) + import wasi:clocks/timezone@0.2.6; + @since(version = 0.2.0) + import wasi:filesystem/types@0.2.6; + @since(version = 0.2.0) + import wasi:filesystem/preopens@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/network@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/instance-network@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/udp@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/udp-create-socket@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/tcp@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/tcp-create-socket@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/ip-name-lookup@0.2.6; + @since(version = 0.2.0) + import wasi:random/random@0.2.6; + @since(version = 0.2.0) + import wasi:random/insecure@0.2.6; + @since(version = 0.2.0) + import wasi:random/insecure-seed@0.2.6; +} +@since(version = 0.2.0) +world command { + @since(version = 0.2.0) + import environment; + @since(version = 0.2.0) + import exit; + @since(version = 0.2.0) + import wasi:io/error@0.2.6; + @since(version = 0.2.0) + import wasi:io/poll@0.2.6; + @since(version = 0.2.0) + import wasi:io/streams@0.2.6; + @since(version = 0.2.0) + import stdin; + @since(version = 0.2.0) + import stdout; + @since(version = 0.2.0) + import stderr; + @since(version = 0.2.0) + import terminal-input; + @since(version = 0.2.0) + import terminal-output; + @since(version = 0.2.0) + import terminal-stdin; + @since(version = 0.2.0) + import terminal-stdout; + @since(version = 0.2.0) + import terminal-stderr; + @since(version = 0.2.0) + import wasi:clocks/monotonic-clock@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/wall-clock@0.2.6; + @unstable(feature = clocks-timezone) + import wasi:clocks/timezone@0.2.6; + @since(version = 0.2.0) + import wasi:filesystem/types@0.2.6; + @since(version = 0.2.0) + import wasi:filesystem/preopens@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/network@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/instance-network@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/udp@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/udp-create-socket@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/tcp@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/tcp-create-socket@0.2.6; + @since(version = 0.2.0) + import wasi:sockets/ip-name-lookup@0.2.6; + @since(version = 0.2.0) + import wasi:random/random@0.2.6; + @since(version = 0.2.0) + import wasi:random/insecure@0.2.6; + @since(version = 0.2.0) + import wasi:random/insecure-seed@0.2.6; + + @since(version = 0.2.0) + export run; +} diff --git a/sdks/go/wit/deps/cli/cli.wit b/sdks/go/wit/deps/cli/cli.wit new file mode 100644 index 0000000000..7aae56c17e --- /dev/null +++ b/sdks/go/wit/deps/cli/cli.wit @@ -0,0 +1,256 @@ +package wasi:cli@0.3.0; + +@since(version = 0.3.0) +interface environment { + /// Get the POSIX-style environment variables. + /// + /// Each environment variable is provided as a pair of string variable names + /// and string value. + /// + /// Morally, these are a value import, but until value imports are available + /// in the component model, this import function should return the same + /// values each time it is called. + @since(version = 0.3.0) + get-environment: func() -> list>; + + /// Get the POSIX-style arguments to the program. + @since(version = 0.3.0) + get-arguments: func() -> list; + + /// Return a path that programs should use as their initial current working + /// directory, interpreting `.` as shorthand for this. + @since(version = 0.3.0) + get-initial-cwd: func() -> option; +} + +@since(version = 0.3.0) +interface exit { + /// Exit the current instance and any linked instances. + @since(version = 0.3.0) + exit: func(status: result); + + /// Exit the current instance and any linked instances, reporting the + /// specified status code to the host. + /// + /// The meaning of the code depends on the context, with 0 usually meaning + /// "success", and other values indicating various types of failure. + /// + /// This function does not return; the effect is analogous to a trap, but + /// without the connotation that something bad has happened. + @since(version = 0.3.0) + exit-with-code: func(status-code: u8); +} + +@since(version = 0.3.0) +interface run { + /// Run the program. + @since(version = 0.3.0) + run: async func() -> result; +} + +@since(version = 0.3.0) +interface types { + @since(version = 0.3.0) + enum error-code { + /// Input/output error + io, + /// Invalid or incomplete multibyte or wide character + illegal-byte-sequence, + /// Broken pipe + pipe, + } +} + +@since(version = 0.3.0) +interface stdin { + use types.{error-code}; + + /// Return a stream for reading from stdin. + /// + /// This function returns a stream which provides data read from stdin, + /// and a future to signal read results. + /// + /// If the stream's readable end is dropped the future will resolve to success. + /// + /// If the stream's writable end is dropped the future will either resolve to + /// success if stdin was closed by the writer or to an error-code if reading + /// failed for some other reason. + /// + /// Multiple streams may be active at the same time. The behavior of concurrent + /// reads is implementation-specific. + @since(version = 0.3.0) + read-via-stream: func() -> tuple, future>>; +} + +@since(version = 0.3.0) +interface stdout { + use types.{error-code}; + + /// Write the given stream to stdout. + /// + /// If the stream's writable end is dropped this function will either return + /// success once the entire contents of the stream have been written or an + /// error-code representing a failure. + /// + /// Otherwise if there is an error the readable end of the stream will be + /// dropped and this function will return an error-code. + @since(version = 0.3.0) + write-via-stream: func(data: stream) -> future>; +} + +@since(version = 0.3.0) +interface stderr { + use types.{error-code}; + + /// Write the given stream to stderr. + /// + /// If the stream's writable end is dropped this function will either return + /// success once the entire contents of the stream have been written or an + /// error-code representing a failure. + /// + /// Otherwise if there is an error the readable end of the stream will be + /// dropped and this function will return an error-code. + @since(version = 0.3.0) + write-via-stream: func(data: stream) -> future>; +} + +/// Terminal input. +/// +/// In the future, this may include functions for disabling echoing, +/// disabling input buffering so that keyboard events are sent through +/// immediately, querying supported features, and so on. +@since(version = 0.3.0) +interface terminal-input { + /// The input side of a terminal. + @since(version = 0.3.0) + resource terminal-input; +} + +/// Terminal output. +/// +/// In the future, this may include functions for querying the terminal +/// size, being notified of terminal size changes, querying supported +/// features, and so on. +@since(version = 0.3.0) +interface terminal-output { + /// The output side of a terminal. + @since(version = 0.3.0) + resource terminal-output; +} + +/// An interface providing an optional `terminal-input` for stdin as a +/// link-time authority. +@since(version = 0.3.0) +interface terminal-stdin { + @since(version = 0.3.0) + use terminal-input.{terminal-input}; + + /// If stdin is connected to a terminal, return a `terminal-input` handle + /// allowing further interaction with it. + @since(version = 0.3.0) + get-terminal-stdin: func() -> option; +} + +/// An interface providing an optional `terminal-output` for stdout as a +/// link-time authority. +@since(version = 0.3.0) +interface terminal-stdout { + @since(version = 0.3.0) + use terminal-output.{terminal-output}; + + /// If stdout is connected to a terminal, return a `terminal-output` handle + /// allowing further interaction with it. + @since(version = 0.3.0) + get-terminal-stdout: func() -> option; +} + +/// An interface providing an optional `terminal-output` for stderr as a +/// link-time authority. +@since(version = 0.3.0) +interface terminal-stderr { + @since(version = 0.3.0) + use terminal-output.{terminal-output}; + + /// If stderr is connected to a terminal, return a `terminal-output` handle + /// allowing further interaction with it. + @since(version = 0.3.0) + get-terminal-stderr: func() -> option; +} + +@since(version = 0.3.0) +world imports { + @since(version = 0.3.0) + import environment; + @since(version = 0.3.0) + import exit; + @since(version = 0.3.0) + import types; + @since(version = 0.3.0) + import stdin; + @since(version = 0.3.0) + import stdout; + @since(version = 0.3.0) + import stderr; + @since(version = 0.3.0) + import terminal-input; + @since(version = 0.3.0) + import terminal-output; + @since(version = 0.3.0) + import terminal-stdin; + @since(version = 0.3.0) + import terminal-stdout; + @since(version = 0.3.0) + import terminal-stderr; + import wasi:clocks/types@0.3.0; + import wasi:clocks/monotonic-clock@0.3.0; + import wasi:clocks/system-clock@0.3.0; + @unstable(feature = clocks-timezone) + import wasi:clocks/timezone@0.3.0; + import wasi:filesystem/types@0.3.0; + import wasi:filesystem/preopens@0.3.0; + import wasi:sockets/types@0.3.0; + import wasi:sockets/ip-name-lookup@0.3.0; + import wasi:random/random@0.3.0; + import wasi:random/insecure@0.3.0; + import wasi:random/insecure-seed@0.3.0; +} +@since(version = 0.3.0) +world command { + @since(version = 0.3.0) + import environment; + @since(version = 0.3.0) + import exit; + @since(version = 0.3.0) + import types; + @since(version = 0.3.0) + import stdin; + @since(version = 0.3.0) + import stdout; + @since(version = 0.3.0) + import stderr; + @since(version = 0.3.0) + import terminal-input; + @since(version = 0.3.0) + import terminal-output; + @since(version = 0.3.0) + import terminal-stdin; + @since(version = 0.3.0) + import terminal-stdout; + @since(version = 0.3.0) + import terminal-stderr; + import wasi:clocks/types@0.3.0; + import wasi:clocks/monotonic-clock@0.3.0; + import wasi:clocks/system-clock@0.3.0; + @unstable(feature = clocks-timezone) + import wasi:clocks/timezone@0.3.0; + import wasi:filesystem/types@0.3.0; + import wasi:filesystem/preopens@0.3.0; + import wasi:sockets/types@0.3.0; + import wasi:sockets/ip-name-lookup@0.3.0; + import wasi:random/random@0.3.0; + import wasi:random/insecure@0.3.0; + import wasi:random/insecure-seed@0.3.0; + + @since(version = 0.3.0) + export run; +} diff --git a/sdks/go/wit/deps/clocks-0.2.6/clocks.wit b/sdks/go/wit/deps/clocks-0.2.6/clocks.wit new file mode 100644 index 0000000000..d638f1a40f --- /dev/null +++ b/sdks/go/wit/deps/clocks-0.2.6/clocks.wit @@ -0,0 +1,157 @@ +package wasi:clocks@0.2.6; + +/// WASI Monotonic Clock is a clock API intended to let users measure elapsed +/// time. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +/// +/// A monotonic clock is a clock which has an unspecified initial value, and +/// successive reads of the clock will produce non-decreasing values. +@since(version = 0.2.0) +interface monotonic-clock { + @since(version = 0.2.0) + use wasi:io/poll@0.2.6.{pollable}; + + /// An instant in time, in nanoseconds. An instant is relative to an + /// unspecified initial value, and can only be compared to instances from + /// the same monotonic-clock. + @since(version = 0.2.0) + type instant = u64; + + /// A duration of time, in nanoseconds. + @since(version = 0.2.0) + type duration = u64; + + /// Read the current value of the clock. + /// + /// The clock is monotonic, therefore calling this function repeatedly will + /// produce a sequence of non-decreasing values. + @since(version = 0.2.0) + now: func() -> instant; + + /// Query the resolution of the clock. Returns the duration of time + /// corresponding to a clock tick. + @since(version = 0.2.0) + resolution: func() -> duration; + + /// Create a `pollable` which will resolve once the specified instant + /// has occurred. + @since(version = 0.2.0) + subscribe-instant: func(when: instant) -> pollable; + + /// Create a `pollable` that will resolve after the specified duration has + /// elapsed from the time this function is invoked. + @since(version = 0.2.0) + subscribe-duration: func(when: duration) -> pollable; +} + +/// WASI Wall Clock is a clock API intended to let users query the current +/// time. The name "wall" makes an analogy to a "clock on the wall", which +/// is not necessarily monotonic as it may be reset. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +/// +/// A wall clock is a clock which measures the date and time according to +/// some external reference. +/// +/// External references may be reset, so this clock is not necessarily +/// monotonic, making it unsuitable for measuring elapsed time. +/// +/// It is intended for reporting the current date and time for humans. +@since(version = 0.2.0) +interface wall-clock { + /// A time and date in seconds plus nanoseconds. + @since(version = 0.2.0) + record datetime { + seconds: u64, + nanoseconds: u32, + } + + /// Read the current value of the clock. + /// + /// This clock is not monotonic, therefore calling this function repeatedly + /// will not necessarily produce a sequence of non-decreasing values. + /// + /// The returned timestamps represent the number of seconds since + /// 1970-01-01T00:00:00Z, also known as [POSIX's Seconds Since the Epoch], + /// also known as [Unix Time]. + /// + /// The nanoseconds field of the output is always less than 1000000000. + /// + /// [POSIX's Seconds Since the Epoch]: https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap04.html#tag_21_04_16 + /// [Unix Time]: https://en.wikipedia.org/wiki/Unix_time + @since(version = 0.2.0) + now: func() -> datetime; + + /// Query the resolution of the clock. + /// + /// The nanoseconds field of the output is always less than 1000000000. + @since(version = 0.2.0) + resolution: func() -> datetime; +} + +@unstable(feature = clocks-timezone) +interface timezone { + @unstable(feature = clocks-timezone) + use wall-clock.{datetime}; + + /// Information useful for displaying the timezone of a specific `datetime`. + /// + /// This information may vary within a single `timezone` to reflect daylight + /// saving time adjustments. + @unstable(feature = clocks-timezone) + record timezone-display { + /// The number of seconds difference between UTC time and the local + /// time of the timezone. + /// + /// The returned value will always be less than 86400 which is the + /// number of seconds in a day (24*60*60). + /// + /// In implementations that do not expose an actual time zone, this + /// should return 0. + utc-offset: s32, + /// The abbreviated name of the timezone to display to a user. The name + /// `UTC` indicates Coordinated Universal Time. Otherwise, this should + /// reference local standards for the name of the time zone. + /// + /// In implementations that do not expose an actual time zone, this + /// should be the string `UTC`. + /// + /// In time zones that do not have an applicable name, a formatted + /// representation of the UTC offset may be returned, such as `-04:00`. + name: string, + /// Whether daylight saving time is active. + /// + /// In implementations that do not expose an actual time zone, this + /// should return false. + in-daylight-saving-time: bool, + } + + /// Return information needed to display the given `datetime`. This includes + /// the UTC offset, the time zone name, and a flag indicating whether + /// daylight saving time is active. + /// + /// If the timezone cannot be determined for the given `datetime`, return a + /// `timezone-display` for `UTC` with a `utc-offset` of 0 and no daylight + /// saving time. + @unstable(feature = clocks-timezone) + display: func(when: datetime) -> timezone-display; + + /// The same as `display`, but only return the UTC offset. + @unstable(feature = clocks-timezone) + utc-offset: func(when: datetime) -> s32; +} + +@since(version = 0.2.0) +world imports { + @since(version = 0.2.0) + import wasi:io/poll@0.2.6; + @since(version = 0.2.0) + import monotonic-clock; + @since(version = 0.2.0) + import wall-clock; + @unstable(feature = clocks-timezone) + import timezone; +} diff --git a/sdks/go/wit/deps/clocks/clocks.wit b/sdks/go/wit/deps/clocks/clocks.wit new file mode 100644 index 0000000000..d8b8cfe4e3 --- /dev/null +++ b/sdks/go/wit/deps/clocks/clocks.wit @@ -0,0 +1,161 @@ +package wasi:clocks@0.3.0; + +/// This interface common types used throughout wasi:clocks. +@since(version = 0.3.0) +interface types { + /// A duration of time, in nanoseconds. + @since(version = 0.3.0) + type duration = u64; +} + +/// WASI Monotonic Clock is a clock API intended to let users measure elapsed +/// time. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +/// +/// A monotonic clock is a clock which has an unspecified initial value, and +/// successive reads of the clock will produce non-decreasing values. +@since(version = 0.3.0) +interface monotonic-clock { + use types.{duration}; + + /// A mark on a monotonic clock is a number of nanoseconds since an + /// unspecified initial value, and can only be compared to instances from + /// the same monotonic-clock. + @since(version = 0.3.0) + type mark = u64; + + /// Read the current value of the clock. + /// + /// The clock is monotonic, therefore calling this function repeatedly will + /// produce a sequence of non-decreasing values. + /// + /// For completeness, this function traps if it's not possible to represent + /// the value of the clock in a `mark`. Consequently, implementations + /// should ensure that the starting time is low enough to avoid the + /// possibility of overflow in practice. + @since(version = 0.3.0) + now: func() -> mark; + + /// Query the resolution of the clock. Returns the duration of time + /// corresponding to a clock tick. + @since(version = 0.3.0) + get-resolution: func() -> duration; + + /// Wait until the specified mark has occurred. + @since(version = 0.3.0) + wait-until: async func(when: mark); + + /// Wait for the specified duration to elapse. + @since(version = 0.3.0) + wait-for: async func(how-long: duration); +} + +/// WASI System Clock is a clock API intended to let users query the current +/// time. The clock is not necessarily monotonic as it may be reset. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +/// +/// External references may be reset, so this clock is not necessarily +/// monotonic, making it unsuitable for measuring elapsed time. +/// +/// It is intended for reporting the current date and time for humans. +@since(version = 0.3.0) +interface system-clock { + use types.{duration}; + + /// An "instant", or "exact time", is a point in time without regard to any + /// time zone: just the time since a particular external reference point, + /// often called an "epoch". + /// + /// Here, the epoch is 1970-01-01T00:00:00Z, also known as + /// [POSIX's Seconds Since the Epoch], also known as [Unix Time]. + /// + /// Note that even if the seconds field is negative, incrementing + /// nanoseconds always represents moving forwards in time. + /// For example, `{ -1 seconds, 999999999 nanoseconds }` represents the + /// instant one nanosecond before the epoch. + /// For more on various different ways to represent time, see + /// https://tc39.es/proposal-temporal/docs/timezone.html + /// + /// [POSIX's Seconds Since the Epoch]: https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap04.html#tag_21_04_16 + /// [Unix Time]: https://en.wikipedia.org/wiki/Unix_time + @since(version = 0.3.0) + record instant { + seconds: s64, + nanoseconds: u32, + } + + /// Read the current value of the clock. + /// + /// This clock is not monotonic, therefore calling this function repeatedly + /// will not necessarily produce a sequence of non-decreasing values. + /// + /// The nanoseconds field of the output is always less than 1000000000. + @since(version = 0.3.0) + now: func() -> instant; + + /// Query the resolution of the clock. Returns the smallest duration of time + /// that the implementation permits distinguishing. + @since(version = 0.3.0) + get-resolution: func() -> duration; +} + +@unstable(feature = clocks-timezone) +interface timezone { + @unstable(feature = clocks-timezone) + use system-clock.{instant}; + + /// Return the IANA identifier of the currently configured timezone. This + /// should be an identifier from the IANA Time Zone Database. + /// + /// For displaying to a user, the identifier should be converted into a + /// localized name by means of an internationalization API. + /// + /// If the implementation does not expose an actual timezone, or is unable + /// to provide mappings from times to deltas between the configured timezone + /// and UTC, or determining the current timezone fails, or the timezone does + /// not have an IANA identifier, this returns nothing. + @unstable(feature = clocks-timezone) + iana-id: func() -> option; + + /// The number of nanoseconds difference between UTC time and the local + /// time of the currently configured timezone, at the exact time of + /// `instant`. + /// + /// The magnitude of the returned value will always be less than + /// 86,400,000,000,000 which is the number of nanoseconds in a day + /// (24*60*60*1e9). + /// + /// If the implementation does not expose an actual timezone, or is unable + /// to provide mappings from times to deltas between the configured timezone + /// and UTC, or determining the current timezone fails, this returns + /// nothing. + @unstable(feature = clocks-timezone) + utc-offset: func(when: instant) -> option; + + /// Returns a string that is suitable to assist humans in debugging whether + /// any timezone is available, and if so, which. This may be the same string + /// as `iana-id`, or a formatted representation of the UTC offset such as + /// `-04:00`, or something else. + /// + /// WARNING: The returned string should not be consumed mechanically! It may + /// change across platforms, hosts, or other implementation details. Parsing + /// this string is a major platform-compatibility hazard. + @unstable(feature = clocks-timezone) + to-debug-string: func() -> string; +} + +@since(version = 0.3.0) +world imports { + @since(version = 0.3.0) + import types; + @since(version = 0.3.0) + import monotonic-clock; + @since(version = 0.3.0) + import system-clock; + @unstable(feature = clocks-timezone) + import timezone; +} diff --git a/sdks/go/wit/deps/config/store.wit b/sdks/go/wit/deps/config/store.wit new file mode 100644 index 0000000000..794379a754 --- /dev/null +++ b/sdks/go/wit/deps/config/store.wit @@ -0,0 +1,30 @@ +interface store { + /// An error type that encapsulates the different errors that can occur fetching configuration values. + variant error { + /// This indicates an error from an "upstream" config source. + /// As this could be almost _anything_ (such as Vault, Kubernetes ConfigMaps, KeyValue buckets, etc), + /// the error message is a string. + upstream(string), + /// This indicates an error from an I/O operation. + /// As this could be almost _anything_ (such as a file read, network connection, etc), + /// the error message is a string. + /// Depending on how this ends up being consumed, + /// we may consider moving this to use the `wasi:io/error` type instead. + /// For simplicity right now in supporting multiple implementations, it is being left as a string. + io(string), + } + + /// Gets a configuration value of type `string` associated with the `key`. + /// + /// The value is returned as an `option`. If the key is not found, + /// `Ok(none)` is returned. If an error occurs, an `Err(error)` is returned. + get: func( + /// A string key to fetch + key: string + ) -> result, error>; + + /// Gets a list of configuration key-value pairs of type `string`. + /// + /// If an error occurs, an `Err(error)` is returned. + get-all: func() -> result>, error>; +} diff --git a/sdks/go/wit/deps/config/world.wit b/sdks/go/wit/deps/config/world.wit new file mode 100644 index 0000000000..f92f080a57 --- /dev/null +++ b/sdks/go/wit/deps/config/world.wit @@ -0,0 +1,6 @@ +package wasi:config@0.2.0-draft; + +world imports { + /// The interface for wasi:config/store + import store; +} \ No newline at end of file diff --git a/sdks/go/wit/deps/filesystem-0.2.6/filesystem.wit b/sdks/go/wit/deps/filesystem-0.2.6/filesystem.wit new file mode 100644 index 0000000000..9f4a8288b4 --- /dev/null +++ b/sdks/go/wit/deps/filesystem-0.2.6/filesystem.wit @@ -0,0 +1,587 @@ +package wasi:filesystem@0.2.6; + +/// WASI filesystem is a filesystem API primarily intended to let users run WASI +/// programs that access their files on their existing filesystems, without +/// significant overhead. +/// +/// It is intended to be roughly portable between Unix-family platforms and +/// Windows, though it does not hide many of the major differences. +/// +/// Paths are passed as interface-type `string`s, meaning they must consist of +/// a sequence of Unicode Scalar Values (USVs). Some filesystems may contain +/// paths which are not accessible by this API. +/// +/// The directory separator in WASI is always the forward-slash (`/`). +/// +/// All paths in WASI are relative paths, and are interpreted relative to a +/// `descriptor` referring to a base directory. If a `path` argument to any WASI +/// function starts with `/`, or if any step of resolving a `path`, including +/// `..` and symbolic link steps, reaches a directory outside of the base +/// directory, or reaches a symlink to an absolute or rooted path in the +/// underlying filesystem, the function fails with `error-code::not-permitted`. +/// +/// For more information about WASI path resolution and sandboxing, see +/// [WASI filesystem path resolution]. +/// +/// [WASI filesystem path resolution]: https://github.com/WebAssembly/wasi-filesystem/blob/main/path-resolution.md +@since(version = 0.2.0) +interface types { + @since(version = 0.2.0) + use wasi:io/streams@0.2.6.{input-stream, output-stream, error}; + @since(version = 0.2.0) + use wasi:clocks/wall-clock@0.2.6.{datetime}; + + /// File size or length of a region within a file. + @since(version = 0.2.0) + type filesize = u64; + + /// The type of a filesystem object referenced by a descriptor. + /// + /// Note: This was called `filetype` in earlier versions of WASI. + @since(version = 0.2.0) + enum descriptor-type { + /// The type of the descriptor or file is unknown or is different from + /// any of the other types specified. + unknown, + /// The descriptor refers to a block device inode. + block-device, + /// The descriptor refers to a character device inode. + character-device, + /// The descriptor refers to a directory inode. + directory, + /// The descriptor refers to a named pipe. + fifo, + /// The file refers to a symbolic link inode. + symbolic-link, + /// The descriptor refers to a regular file inode. + regular-file, + /// The descriptor refers to a socket. + socket, + } + + /// Descriptor flags. + /// + /// Note: This was called `fdflags` in earlier versions of WASI. + @since(version = 0.2.0) + flags descriptor-flags { + /// Read mode: Data can be read. + read, + /// Write mode: Data can be written to. + write, + /// Request that writes be performed according to synchronized I/O file + /// integrity completion. The data stored in the file and the file's + /// metadata are synchronized. This is similar to `O_SYNC` in POSIX. + /// + /// The precise semantics of this operation have not yet been defined for + /// WASI. At this time, it should be interpreted as a request, and not a + /// requirement. + file-integrity-sync, + /// Request that writes be performed according to synchronized I/O data + /// integrity completion. Only the data stored in the file is + /// synchronized. This is similar to `O_DSYNC` in POSIX. + /// + /// The precise semantics of this operation have not yet been defined for + /// WASI. At this time, it should be interpreted as a request, and not a + /// requirement. + data-integrity-sync, + /// Requests that reads be performed at the same level of integrity + /// requested for writes. This is similar to `O_RSYNC` in POSIX. + /// + /// The precise semantics of this operation have not yet been defined for + /// WASI. At this time, it should be interpreted as a request, and not a + /// requirement. + requested-write-sync, + /// Mutating directories mode: Directory contents may be mutated. + /// + /// When this flag is unset on a descriptor, operations using the + /// descriptor which would create, rename, delete, modify the data or + /// metadata of filesystem objects, or obtain another handle which + /// would permit any of those, shall fail with `error-code::read-only` if + /// they would otherwise succeed. + /// + /// This may only be set on directories. + mutate-directory, + } + + /// Flags determining the method of how paths are resolved. + @since(version = 0.2.0) + flags path-flags { + /// As long as the resolved path corresponds to a symbolic link, it is + /// expanded. + symlink-follow, + } + + /// Open flags used by `open-at`. + @since(version = 0.2.0) + flags open-flags { + /// Create file if it does not exist, similar to `O_CREAT` in POSIX. + create, + /// Fail if not a directory, similar to `O_DIRECTORY` in POSIX. + directory, + /// Fail if file already exists, similar to `O_EXCL` in POSIX. + exclusive, + /// Truncate file to size 0, similar to `O_TRUNC` in POSIX. + truncate, + } + + /// Number of hard links to an inode. + @since(version = 0.2.0) + type link-count = u64; + + /// File attributes. + /// + /// Note: This was called `filestat` in earlier versions of WASI. + @since(version = 0.2.0) + record descriptor-stat { + /// File type. + %type: descriptor-type, + /// Number of hard links to the file. + link-count: link-count, + /// For regular files, the file size in bytes. For symbolic links, the + /// length in bytes of the pathname contained in the symbolic link. + size: filesize, + /// Last data access timestamp. + /// + /// If the `option` is none, the platform doesn't maintain an access + /// timestamp for this file. + data-access-timestamp: option, + /// Last data modification timestamp. + /// + /// If the `option` is none, the platform doesn't maintain a + /// modification timestamp for this file. + data-modification-timestamp: option, + /// Last file status-change timestamp. + /// + /// If the `option` is none, the platform doesn't maintain a + /// status-change timestamp for this file. + status-change-timestamp: option, + } + + /// When setting a timestamp, this gives the value to set it to. + @since(version = 0.2.0) + variant new-timestamp { + /// Leave the timestamp set to its previous value. + no-change, + /// Set the timestamp to the current time of the system clock associated + /// with the filesystem. + now, + /// Set the timestamp to the given value. + timestamp(datetime), + } + + /// A directory entry. + record directory-entry { + /// The type of the file referred to by this directory entry. + %type: descriptor-type, + /// The name of the object. + name: string, + } + + /// Error codes returned by functions, similar to `errno` in POSIX. + /// Not all of these error codes are returned by the functions provided by this + /// API; some are used in higher-level library layers, and others are provided + /// merely for alignment with POSIX. + enum error-code { + /// Permission denied, similar to `EACCES` in POSIX. + access, + /// Resource unavailable, or operation would block, similar to `EAGAIN` and `EWOULDBLOCK` in POSIX. + would-block, + /// Connection already in progress, similar to `EALREADY` in POSIX. + already, + /// Bad descriptor, similar to `EBADF` in POSIX. + bad-descriptor, + /// Device or resource busy, similar to `EBUSY` in POSIX. + busy, + /// Resource deadlock would occur, similar to `EDEADLK` in POSIX. + deadlock, + /// Storage quota exceeded, similar to `EDQUOT` in POSIX. + quota, + /// File exists, similar to `EEXIST` in POSIX. + exist, + /// File too large, similar to `EFBIG` in POSIX. + file-too-large, + /// Illegal byte sequence, similar to `EILSEQ` in POSIX. + illegal-byte-sequence, + /// Operation in progress, similar to `EINPROGRESS` in POSIX. + in-progress, + /// Interrupted function, similar to `EINTR` in POSIX. + interrupted, + /// Invalid argument, similar to `EINVAL` in POSIX. + invalid, + /// I/O error, similar to `EIO` in POSIX. + io, + /// Is a directory, similar to `EISDIR` in POSIX. + is-directory, + /// Too many levels of symbolic links, similar to `ELOOP` in POSIX. + loop, + /// Too many links, similar to `EMLINK` in POSIX. + too-many-links, + /// Message too large, similar to `EMSGSIZE` in POSIX. + message-size, + /// Filename too long, similar to `ENAMETOOLONG` in POSIX. + name-too-long, + /// No such device, similar to `ENODEV` in POSIX. + no-device, + /// No such file or directory, similar to `ENOENT` in POSIX. + no-entry, + /// No locks available, similar to `ENOLCK` in POSIX. + no-lock, + /// Not enough space, similar to `ENOMEM` in POSIX. + insufficient-memory, + /// No space left on device, similar to `ENOSPC` in POSIX. + insufficient-space, + /// Not a directory or a symbolic link to a directory, similar to `ENOTDIR` in POSIX. + not-directory, + /// Directory not empty, similar to `ENOTEMPTY` in POSIX. + not-empty, + /// State not recoverable, similar to `ENOTRECOVERABLE` in POSIX. + not-recoverable, + /// Not supported, similar to `ENOTSUP` and `ENOSYS` in POSIX. + unsupported, + /// Inappropriate I/O control operation, similar to `ENOTTY` in POSIX. + no-tty, + /// No such device or address, similar to `ENXIO` in POSIX. + no-such-device, + /// Value too large to be stored in data type, similar to `EOVERFLOW` in POSIX. + overflow, + /// Operation not permitted, similar to `EPERM` in POSIX. + not-permitted, + /// Broken pipe, similar to `EPIPE` in POSIX. + pipe, + /// Read-only file system, similar to `EROFS` in POSIX. + read-only, + /// Invalid seek, similar to `ESPIPE` in POSIX. + invalid-seek, + /// Text file busy, similar to `ETXTBSY` in POSIX. + text-file-busy, + /// Cross-device link, similar to `EXDEV` in POSIX. + cross-device, + } + + /// File or memory access pattern advisory information. + @since(version = 0.2.0) + enum advice { + /// The application has no advice to give on its behavior with respect + /// to the specified data. + normal, + /// The application expects to access the specified data sequentially + /// from lower offsets to higher offsets. + sequential, + /// The application expects to access the specified data in a random + /// order. + random, + /// The application expects to access the specified data in the near + /// future. + will-need, + /// The application expects that it will not access the specified data + /// in the near future. + dont-need, + /// The application expects to access the specified data once and then + /// not reuse it thereafter. + no-reuse, + } + + /// A 128-bit hash value, split into parts because wasm doesn't have a + /// 128-bit integer type. + @since(version = 0.2.0) + record metadata-hash-value { + /// 64 bits of a 128-bit hash value. + lower: u64, + /// Another 64 bits of a 128-bit hash value. + upper: u64, + } + + /// A descriptor is a reference to a filesystem object, which may be a file, + /// directory, named pipe, special file, or other object on which filesystem + /// calls may be made. + @since(version = 0.2.0) + resource descriptor { + /// Return a stream for reading from a file, if available. + /// + /// May fail with an error-code describing why the file cannot be read. + /// + /// Multiple read, write, and append streams may be active on the same open + /// file and they do not interfere with each other. + /// + /// Note: This allows using `read-stream`, which is similar to `read` in POSIX. + @since(version = 0.2.0) + read-via-stream: func(offset: filesize) -> result; + /// Return a stream for writing to a file, if available. + /// + /// May fail with an error-code describing why the file cannot be written. + /// + /// Note: This allows using `write-stream`, which is similar to `write` in + /// POSIX. + @since(version = 0.2.0) + write-via-stream: func(offset: filesize) -> result; + /// Return a stream for appending to a file, if available. + /// + /// May fail with an error-code describing why the file cannot be appended. + /// + /// Note: This allows using `write-stream`, which is similar to `write` with + /// `O_APPEND` in POSIX. + @since(version = 0.2.0) + append-via-stream: func() -> result; + /// Provide file advisory information on a descriptor. + /// + /// This is similar to `posix_fadvise` in POSIX. + @since(version = 0.2.0) + advise: func(offset: filesize, length: filesize, advice: advice) -> result<_, error-code>; + /// Synchronize the data of a file to disk. + /// + /// This function succeeds with no effect if the file descriptor is not + /// opened for writing. + /// + /// Note: This is similar to `fdatasync` in POSIX. + @since(version = 0.2.0) + sync-data: func() -> result<_, error-code>; + /// Get flags associated with a descriptor. + /// + /// Note: This returns similar flags to `fcntl(fd, F_GETFL)` in POSIX. + /// + /// Note: This returns the value that was the `fs_flags` value returned + /// from `fdstat_get` in earlier versions of WASI. + @since(version = 0.2.0) + get-flags: func() -> result; + /// Get the dynamic type of a descriptor. + /// + /// Note: This returns the same value as the `type` field of the `fd-stat` + /// returned by `stat`, `stat-at` and similar. + /// + /// Note: This returns similar flags to the `st_mode & S_IFMT` value provided + /// by `fstat` in POSIX. + /// + /// Note: This returns the value that was the `fs_filetype` value returned + /// from `fdstat_get` in earlier versions of WASI. + @since(version = 0.2.0) + get-type: func() -> result; + /// Adjust the size of an open file. If this increases the file's size, the + /// extra bytes are filled with zeros. + /// + /// Note: This was called `fd_filestat_set_size` in earlier versions of WASI. + @since(version = 0.2.0) + set-size: func(size: filesize) -> result<_, error-code>; + /// Adjust the timestamps of an open file or directory. + /// + /// Note: This is similar to `futimens` in POSIX. + /// + /// Note: This was called `fd_filestat_set_times` in earlier versions of WASI. + @since(version = 0.2.0) + set-times: func(data-access-timestamp: new-timestamp, data-modification-timestamp: new-timestamp) -> result<_, error-code>; + /// Read from a descriptor, without using and updating the descriptor's offset. + /// + /// This function returns a list of bytes containing the data that was + /// read, along with a bool which, when true, indicates that the end of the + /// file was reached. The returned list will contain up to `length` bytes; it + /// may return fewer than requested, if the end of the file is reached or + /// if the I/O operation is interrupted. + /// + /// In the future, this may change to return a `stream`. + /// + /// Note: This is similar to `pread` in POSIX. + @since(version = 0.2.0) + read: func(length: filesize, offset: filesize) -> result, bool>, error-code>; + /// Write to a descriptor, without using and updating the descriptor's offset. + /// + /// It is valid to write past the end of a file; the file is extended to the + /// extent of the write, with bytes between the previous end and the start of + /// the write set to zero. + /// + /// In the future, this may change to take a `stream`. + /// + /// Note: This is similar to `pwrite` in POSIX. + @since(version = 0.2.0) + write: func(buffer: list, offset: filesize) -> result; + /// Read directory entries from a directory. + /// + /// On filesystems where directories contain entries referring to themselves + /// and their parents, often named `.` and `..` respectively, these entries + /// are omitted. + /// + /// This always returns a new stream which starts at the beginning of the + /// directory. Multiple streams may be active on the same directory, and they + /// do not interfere with each other. + @since(version = 0.2.0) + read-directory: func() -> result; + /// Synchronize the data and metadata of a file to disk. + /// + /// This function succeeds with no effect if the file descriptor is not + /// opened for writing. + /// + /// Note: This is similar to `fsync` in POSIX. + @since(version = 0.2.0) + sync: func() -> result<_, error-code>; + /// Create a directory. + /// + /// Note: This is similar to `mkdirat` in POSIX. + @since(version = 0.2.0) + create-directory-at: func(path: string) -> result<_, error-code>; + /// Return the attributes of an open file or directory. + /// + /// Note: This is similar to `fstat` in POSIX, except that it does not return + /// device and inode information. For testing whether two descriptors refer to + /// the same underlying filesystem object, use `is-same-object`. To obtain + /// additional data that can be used do determine whether a file has been + /// modified, use `metadata-hash`. + /// + /// Note: This was called `fd_filestat_get` in earlier versions of WASI. + @since(version = 0.2.0) + stat: func() -> result; + /// Return the attributes of a file or directory. + /// + /// Note: This is similar to `fstatat` in POSIX, except that it does not + /// return device and inode information. See the `stat` description for a + /// discussion of alternatives. + /// + /// Note: This was called `path_filestat_get` in earlier versions of WASI. + @since(version = 0.2.0) + stat-at: func(path-flags: path-flags, path: string) -> result; + /// Adjust the timestamps of a file or directory. + /// + /// Note: This is similar to `utimensat` in POSIX. + /// + /// Note: This was called `path_filestat_set_times` in earlier versions of + /// WASI. + @since(version = 0.2.0) + set-times-at: func(path-flags: path-flags, path: string, data-access-timestamp: new-timestamp, data-modification-timestamp: new-timestamp) -> result<_, error-code>; + /// Create a hard link. + /// + /// Fails with `error-code::no-entry` if the old path does not exist, + /// with `error-code::exist` if the new path already exists, and + /// `error-code::not-permitted` if the old path is not a file. + /// + /// Note: This is similar to `linkat` in POSIX. + @since(version = 0.2.0) + link-at: func(old-path-flags: path-flags, old-path: string, new-descriptor: borrow, new-path: string) -> result<_, error-code>; + /// Open a file or directory. + /// + /// If `flags` contains `descriptor-flags::mutate-directory`, and the base + /// descriptor doesn't have `descriptor-flags::mutate-directory` set, + /// `open-at` fails with `error-code::read-only`. + /// + /// If `flags` contains `write` or `mutate-directory`, or `open-flags` + /// contains `truncate` or `create`, and the base descriptor doesn't have + /// `descriptor-flags::mutate-directory` set, `open-at` fails with + /// `error-code::read-only`. + /// + /// Note: This is similar to `openat` in POSIX. + @since(version = 0.2.0) + open-at: func(path-flags: path-flags, path: string, open-flags: open-flags, %flags: descriptor-flags) -> result; + /// Read the contents of a symbolic link. + /// + /// If the contents contain an absolute or rooted path in the underlying + /// filesystem, this function fails with `error-code::not-permitted`. + /// + /// Note: This is similar to `readlinkat` in POSIX. + @since(version = 0.2.0) + readlink-at: func(path: string) -> result; + /// Remove a directory. + /// + /// Return `error-code::not-empty` if the directory is not empty. + /// + /// Note: This is similar to `unlinkat(fd, path, AT_REMOVEDIR)` in POSIX. + @since(version = 0.2.0) + remove-directory-at: func(path: string) -> result<_, error-code>; + /// Rename a filesystem object. + /// + /// Note: This is similar to `renameat` in POSIX. + @since(version = 0.2.0) + rename-at: func(old-path: string, new-descriptor: borrow, new-path: string) -> result<_, error-code>; + /// Create a symbolic link (also known as a "symlink"). + /// + /// If `old-path` starts with `/`, the function fails with + /// `error-code::not-permitted`. + /// + /// Note: This is similar to `symlinkat` in POSIX. + @since(version = 0.2.0) + symlink-at: func(old-path: string, new-path: string) -> result<_, error-code>; + /// Unlink a filesystem object that is not a directory. + /// + /// Return `error-code::is-directory` if the path refers to a directory. + /// Note: This is similar to `unlinkat(fd, path, 0)` in POSIX. + @since(version = 0.2.0) + unlink-file-at: func(path: string) -> result<_, error-code>; + /// Test whether two descriptors refer to the same filesystem object. + /// + /// In POSIX, this corresponds to testing whether the two descriptors have the + /// same device (`st_dev`) and inode (`st_ino` or `d_ino`) numbers. + /// wasi-filesystem does not expose device and inode numbers, so this function + /// may be used instead. + @since(version = 0.2.0) + is-same-object: func(other: borrow) -> bool; + /// Return a hash of the metadata associated with a filesystem object referred + /// to by a descriptor. + /// + /// This returns a hash of the last-modification timestamp and file size, and + /// may also include the inode number, device number, birth timestamp, and + /// other metadata fields that may change when the file is modified or + /// replaced. It may also include a secret value chosen by the + /// implementation and not otherwise exposed. + /// + /// Implementations are encouraged to provide the following properties: + /// + /// - If the file is not modified or replaced, the computed hash value should + /// usually not change. + /// - If the object is modified or replaced, the computed hash value should + /// usually change. + /// - The inputs to the hash should not be easily computable from the + /// computed hash. + /// + /// However, none of these is required. + @since(version = 0.2.0) + metadata-hash: func() -> result; + /// Return a hash of the metadata associated with a filesystem object referred + /// to by a directory descriptor and a relative path. + /// + /// This performs the same hash computation as `metadata-hash`. + @since(version = 0.2.0) + metadata-hash-at: func(path-flags: path-flags, path: string) -> result; + } + + /// A stream of directory entries. + @since(version = 0.2.0) + resource directory-entry-stream { + /// Read a single directory entry from a `directory-entry-stream`. + @since(version = 0.2.0) + read-directory-entry: func() -> result, error-code>; + } + + /// Attempts to extract a filesystem-related `error-code` from the stream + /// `error` provided. + /// + /// Stream operations which return `stream-error::last-operation-failed` + /// have a payload with more information about the operation that failed. + /// This payload can be passed through to this function to see if there's + /// filesystem-related information about the error to return. + /// + /// Note that this function is fallible because not all stream-related + /// errors are filesystem-related errors. + @since(version = 0.2.0) + filesystem-error-code: func(err: borrow) -> option; +} + +@since(version = 0.2.0) +interface preopens { + @since(version = 0.2.0) + use types.{descriptor}; + + /// Return the set of preopened directories, and their paths. + @since(version = 0.2.0) + get-directories: func() -> list>; +} + +@since(version = 0.2.0) +world imports { + @since(version = 0.2.0) + import wasi:io/error@0.2.6; + @since(version = 0.2.0) + import wasi:io/poll@0.2.6; + @since(version = 0.2.0) + import wasi:io/streams@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/wall-clock@0.2.6; + @since(version = 0.2.0) + import types; + @since(version = 0.2.0) + import preopens; +} diff --git a/sdks/go/wit/deps/filesystem/filesystem.wit b/sdks/go/wit/deps/filesystem/filesystem.wit new file mode 100644 index 0000000000..e4a778f3d2 --- /dev/null +++ b/sdks/go/wit/deps/filesystem/filesystem.wit @@ -0,0 +1,575 @@ +package wasi:filesystem@0.3.0; + +/// WASI filesystem is a filesystem API primarily intended to let users run WASI +/// programs that access their files on their existing filesystems, without +/// significant overhead. +/// +/// Paths are passed as interface-type `string`s, meaning they must consist of +/// a sequence of Unicode Scalar Values (USVs). Some filesystems may contain +/// paths which are not accessible by this API. +/// +/// The directory separator in WASI is always the forward-slash (`/`). +/// +/// All paths in WASI are relative paths, and are interpreted relative to a +/// `descriptor` referring to a base directory. If a `path` argument to any WASI +/// function starts with `/`, or if any step of resolving a `path`, including +/// `..` and symbolic link steps, reaches a directory outside of the base +/// directory, or reaches a symlink to an absolute or rooted path in the +/// underlying filesystem, the function fails with `error-code::not-permitted`. +/// +/// For more information about WASI path resolution and sandboxing, see +/// [WASI filesystem path resolution]. +/// +/// Though this package presents a portable interface modelled on POSIX, it +/// prioritizes compatibility over portability: allowing users to access their +/// files on their machine is more important than exposing a single semantics +/// across all platforms. Notably, depending on the underlying operating system +/// and file system: +/// * Paths may be case-folded or not. +/// * Deleting (unlinking) a file may fail if there are other file descriptors +/// open. +/// * Durability and atomicity of changes to underlying files when there are +/// concurrent writers. +/// +/// Users that need well-defined, portable semantics should use a key-value +/// store or a database instead. +/// +/// [WASI filesystem path resolution]: https://github.com/WebAssembly/wasi-filesystem/blob/main/path-resolution.md +@since(version = 0.3.0) +interface types { + @since(version = 0.3.0) + use wasi:clocks/system-clock@0.3.0.{instant}; + + /// File size or length of a region within a file. + @since(version = 0.3.0) + type filesize = u64; + + /// The type of a filesystem object referenced by a descriptor. + /// + /// Note: This was called `filetype` in earlier versions of WASI. + @since(version = 0.3.0) + variant descriptor-type { + /// The descriptor refers to a block device inode. + block-device, + /// The descriptor refers to a character device inode. + character-device, + /// The descriptor refers to a directory inode. + directory, + /// The descriptor refers to a named pipe. + fifo, + /// The file refers to a symbolic link inode. + symbolic-link, + /// The descriptor refers to a regular file inode. + regular-file, + /// The descriptor refers to a socket. + socket, + /// The type of the descriptor or file is different from any of the + /// other types specified. + other(option), + } + + /// Descriptor flags. + /// + /// Note: This was called `fdflags` in earlier versions of WASI. + @since(version = 0.3.0) + flags descriptor-flags { + /// Read mode: Data can be read. + read, + /// Write mode: Data can be written to. + write, + /// Request that writes be performed according to synchronized I/O file + /// integrity completion. The data stored in the file and the file's + /// metadata are synchronized. This is similar to `O_SYNC` in POSIX. + /// + /// The precise semantics of this operation have not yet been defined for + /// WASI. At this time, it should be interpreted as a request, and not a + /// requirement. + file-integrity-sync, + /// Request that writes be performed according to synchronized I/O data + /// integrity completion. Only the data stored in the file is + /// synchronized. This is similar to `O_DSYNC` in POSIX. + /// + /// The precise semantics of this operation have not yet been defined for + /// WASI. At this time, it should be interpreted as a request, and not a + /// requirement. + data-integrity-sync, + /// Requests that reads be performed at the same level of integrity + /// requested for writes. This is similar to `O_RSYNC` in POSIX. + /// + /// The precise semantics of this operation have not yet been defined for + /// WASI. At this time, it should be interpreted as a request, and not a + /// requirement. + requested-write-sync, + /// Mutating directories mode: Directory contents may be mutated. + /// + /// When this flag is unset on a descriptor, operations using the + /// descriptor which would create, rename, delete, modify the data or + /// metadata of filesystem objects, or obtain another handle which + /// would permit any of those, shall fail with `error-code::read-only` if + /// they would otherwise succeed. + /// + /// This may only be set on directories. + mutate-directory, + } + + /// Flags determining the method of how paths are resolved. + @since(version = 0.3.0) + flags path-flags { + /// As long as the resolved path corresponds to a symbolic link, it is + /// expanded. + symlink-follow, + } + + /// Open flags used by `open-at`. + @since(version = 0.3.0) + flags open-flags { + /// Create file if it does not exist, similar to `O_CREAT` in POSIX. + create, + /// Fail if not a directory, similar to `O_DIRECTORY` in POSIX. + directory, + /// Fail if file already exists, similar to `O_EXCL` in POSIX. + exclusive, + /// Truncate file to size 0, similar to `O_TRUNC` in POSIX. + truncate, + } + + /// Number of hard links to an inode. + @since(version = 0.3.0) + type link-count = u64; + + /// File attributes. + /// + /// Note: This was called `filestat` in earlier versions of WASI. + @since(version = 0.3.0) + record descriptor-stat { + /// File type. + %type: descriptor-type, + /// Number of hard links to the file. + link-count: link-count, + /// For regular files, the file size in bytes. For symbolic links, the + /// length in bytes of the pathname contained in the symbolic link. + size: filesize, + /// Last data access timestamp. + /// + /// If the `option` is none, the platform doesn't maintain an access + /// timestamp for this file. + data-access-timestamp: option, + /// Last data modification timestamp. + /// + /// If the `option` is none, the platform doesn't maintain a + /// modification timestamp for this file. + data-modification-timestamp: option, + /// Last file status-change timestamp. + /// + /// If the `option` is none, the platform doesn't maintain a + /// status-change timestamp for this file. + status-change-timestamp: option, + } + + /// When setting a timestamp, this gives the value to set it to. + @since(version = 0.3.0) + variant new-timestamp { + /// Leave the timestamp set to its previous value. + no-change, + /// Set the timestamp to the current time of the system clock associated + /// with the filesystem. + now, + /// Set the timestamp to the given value. + timestamp(instant), + } + + /// A directory entry. + @since(version = 0.3.0) + record directory-entry { + /// The type of the file referred to by this directory entry. + %type: descriptor-type, + /// The name of the object. + name: string, + } + + /// Error codes returned by functions, similar to `errno` in POSIX. + /// Not all of these error codes are returned by the functions provided by this + /// API; some are used in higher-level library layers, and others are provided + /// merely for alignment with POSIX. + @since(version = 0.3.0) + variant error-code { + /// Permission denied, similar to `EACCES` in POSIX. + access, + /// Connection already in progress, similar to `EALREADY` in POSIX. + already, + /// Bad descriptor, similar to `EBADF` in POSIX. + bad-descriptor, + /// Device or resource busy, similar to `EBUSY` in POSIX. + busy, + /// Resource deadlock would occur, similar to `EDEADLK` in POSIX. + deadlock, + /// Storage quota exceeded, similar to `EDQUOT` in POSIX. + quota, + /// File exists, similar to `EEXIST` in POSIX. + exist, + /// File too large, similar to `EFBIG` in POSIX. + file-too-large, + /// Illegal byte sequence, similar to `EILSEQ` in POSIX. + illegal-byte-sequence, + /// Operation in progress, similar to `EINPROGRESS` in POSIX. + in-progress, + /// Interrupted function, similar to `EINTR` in POSIX. + interrupted, + /// Invalid argument, similar to `EINVAL` in POSIX. + invalid, + /// I/O error, similar to `EIO` in POSIX. + io, + /// Is a directory, similar to `EISDIR` in POSIX. + is-directory, + /// Too many levels of symbolic links, similar to `ELOOP` in POSIX. + loop, + /// Too many links, similar to `EMLINK` in POSIX. + too-many-links, + /// Message too large, similar to `EMSGSIZE` in POSIX. + message-size, + /// Filename too long, similar to `ENAMETOOLONG` in POSIX. + name-too-long, + /// No such device, similar to `ENODEV` in POSIX. + no-device, + /// No such file or directory, similar to `ENOENT` in POSIX. + no-entry, + /// No locks available, similar to `ENOLCK` in POSIX. + no-lock, + /// Not enough space, similar to `ENOMEM` in POSIX. + insufficient-memory, + /// No space left on device, similar to `ENOSPC` in POSIX. + insufficient-space, + /// Not a directory or a symbolic link to a directory, similar to `ENOTDIR` in POSIX. + not-directory, + /// Directory not empty, similar to `ENOTEMPTY` in POSIX. + not-empty, + /// State not recoverable, similar to `ENOTRECOVERABLE` in POSIX. + not-recoverable, + /// Not supported, similar to `ENOTSUP` and `ENOSYS` in POSIX. + unsupported, + /// Inappropriate I/O control operation, similar to `ENOTTY` in POSIX. + no-tty, + /// No such device or address, similar to `ENXIO` in POSIX. + no-such-device, + /// Value too large to be stored in data type, similar to `EOVERFLOW` in POSIX. + overflow, + /// Operation not permitted, similar to `EPERM` in POSIX. + not-permitted, + /// Broken pipe, similar to `EPIPE` in POSIX. + pipe, + /// Read-only file system, similar to `EROFS` in POSIX. + read-only, + /// Invalid seek, similar to `ESPIPE` in POSIX. + invalid-seek, + /// Text file busy, similar to `ETXTBSY` in POSIX. + text-file-busy, + /// Cross-device link, similar to `EXDEV` in POSIX. + cross-device, + /// A catch-all for errors not captured by the existing variants. + /// Implementations can use this to extend the error type without + /// breaking existing code. + other(option), + } + + /// File or memory access pattern advisory information. + @since(version = 0.3.0) + enum advice { + /// The application has no advice to give on its behavior with respect + /// to the specified data. + normal, + /// The application expects to access the specified data sequentially + /// from lower offsets to higher offsets. + sequential, + /// The application expects to access the specified data in a random + /// order. + random, + /// The application expects to access the specified data in the near + /// future. + will-need, + /// The application expects that it will not access the specified data + /// in the near future. + dont-need, + /// The application expects to access the specified data once and then + /// not reuse it thereafter. + no-reuse, + } + + /// A 128-bit hash value, split into parts because wasm doesn't have a + /// 128-bit integer type. + @since(version = 0.3.0) + record metadata-hash-value { + /// 64 bits of a 128-bit hash value. + lower: u64, + /// Another 64 bits of a 128-bit hash value. + upper: u64, + } + + /// A descriptor is a reference to a filesystem object, which may be a file, + /// directory, named pipe, special file, or other object on which filesystem + /// calls may be made. + @since(version = 0.3.0) + resource descriptor { + /// Return a stream for reading from a file. + /// + /// Multiple read, write, and append streams may be active on the same open + /// file and they do not interfere with each other. + /// + /// This function returns a `stream` which provides the data received from the + /// file, and a `future` providing additional error information in case an + /// error is encountered. + /// + /// If no error is encountered, `stream.read` on the `stream` will return + /// `read-status::closed` with no `error-context` and the future resolves to + /// the value `ok`. If an error is encountered, `stream.read` on the + /// `stream` returns `read-status::closed` with an `error-context` and the future + /// resolves to `err` with an `error-code`. + /// + /// Note: This is similar to `pread` in POSIX. + @since(version = 0.3.0) + read-via-stream: func(offset: filesize) -> tuple, future>>; + /// Return a stream for writing to a file, if available. + /// + /// May fail with an error-code describing why the file cannot be written. + /// + /// It is valid to write past the end of a file; the file is extended to the + /// extent of the write, with bytes between the previous end and the start of + /// the write set to zero. + /// + /// This function returns once either full contents of the stream are + /// written or an error is encountered. + /// + /// Note: This is similar to `pwrite` in POSIX. + @since(version = 0.3.0) + write-via-stream: func(data: stream, offset: filesize) -> future>; + /// Return a stream for appending to a file, if available. + /// + /// May fail with an error-code describing why the file cannot be appended. + /// + /// This function returns once either full contents of the stream are + /// written or an error is encountered. + /// + /// Note: This is similar to `write` with `O_APPEND` in POSIX. + @since(version = 0.3.0) + append-via-stream: func(data: stream) -> future>; + /// Provide file advisory information on a descriptor. + /// + /// This is similar to `posix_fadvise` in POSIX. + @since(version = 0.3.0) + advise: async func(offset: filesize, length: filesize, advice: advice) -> result<_, error-code>; + /// Synchronize the data of a file to disk. + /// + /// This function succeeds with no effect if the file descriptor is not + /// opened for writing. + /// + /// Note: This is similar to `fdatasync` in POSIX. + @since(version = 0.3.0) + sync-data: async func() -> result<_, error-code>; + /// Get flags associated with a descriptor. + /// + /// Note: This returns similar flags to `fcntl(fd, F_GETFL)` in POSIX. + /// + /// Note: This returns the value that was the `fs_flags` value returned + /// from `fdstat_get` in earlier versions of WASI. + @since(version = 0.3.0) + get-flags: async func() -> result; + /// Get the dynamic type of a descriptor. + /// + /// Note: This returns the same value as the `type` field of the `fd-stat` + /// returned by `stat`, `stat-at` and similar. + /// + /// Note: This returns similar flags to the `st_mode & S_IFMT` value provided + /// by `fstat` in POSIX. + /// + /// Note: This returns the value that was the `fs_filetype` value returned + /// from `fdstat_get` in earlier versions of WASI. + @since(version = 0.3.0) + get-type: async func() -> result; + /// Adjust the size of an open file. If this increases the file's size, the + /// extra bytes are filled with zeros. + /// + /// Note: This was called `fd_filestat_set_size` in earlier versions of WASI. + @since(version = 0.3.0) + set-size: async func(size: filesize) -> result<_, error-code>; + /// Adjust the timestamps of an open file or directory. + /// + /// Note: This is similar to `futimens` in POSIX. + /// + /// Note: This was called `fd_filestat_set_times` in earlier versions of WASI. + @since(version = 0.3.0) + set-times: async func(data-access-timestamp: new-timestamp, data-modification-timestamp: new-timestamp) -> result<_, error-code>; + /// Read directory entries from a directory. + /// + /// On filesystems where directories contain entries referring to themselves + /// and their parents, often named `.` and `..` respectively, these entries + /// are omitted. + /// + /// This always returns a new stream which starts at the beginning of the + /// directory. Multiple streams may be active on the same directory, and they + /// do not interfere with each other. + /// + /// This function returns a future, which will resolve to an error code if + /// reading full contents of the directory fails. + @since(version = 0.3.0) + read-directory: func() -> tuple, future>>; + /// Synchronize the data and metadata of a file to disk. + /// + /// This function succeeds with no effect if the file descriptor is not + /// opened for writing. + /// + /// Note: This is similar to `fsync` in POSIX. + @since(version = 0.3.0) + sync: async func() -> result<_, error-code>; + /// Create a directory. + /// + /// Note: This is similar to `mkdirat` in POSIX. + @since(version = 0.3.0) + create-directory-at: async func(path: string) -> result<_, error-code>; + /// Return the attributes of an open file or directory. + /// + /// Note: This is similar to `fstat` in POSIX, except that it does not return + /// device and inode information. For testing whether two descriptors refer to + /// the same underlying filesystem object, use `is-same-object`. To obtain + /// additional data that can be used do determine whether a file has been + /// modified, use `metadata-hash`. + /// + /// Note: This was called `fd_filestat_get` in earlier versions of WASI. + @since(version = 0.3.0) + stat: async func() -> result; + /// Return the attributes of a file or directory. + /// + /// Note: This is similar to `fstatat` in POSIX, except that it does not + /// return device and inode information. See the `stat` description for a + /// discussion of alternatives. + /// + /// Note: This was called `path_filestat_get` in earlier versions of WASI. + @since(version = 0.3.0) + stat-at: async func(path-flags: path-flags, path: string) -> result; + /// Adjust the timestamps of a file or directory. + /// + /// Note: This is similar to `utimensat` in POSIX. + /// + /// Note: This was called `path_filestat_set_times` in earlier versions of + /// WASI. + @since(version = 0.3.0) + set-times-at: async func(path-flags: path-flags, path: string, data-access-timestamp: new-timestamp, data-modification-timestamp: new-timestamp) -> result<_, error-code>; + /// Create a hard link. + /// + /// Fails with `error-code::no-entry` if the old path does not exist, + /// with `error-code::exist` if the new path already exists, and + /// `error-code::not-permitted` if the old path is not a file. + /// + /// Note: This is similar to `linkat` in POSIX. + @since(version = 0.3.0) + link-at: async func(old-path-flags: path-flags, old-path: string, new-descriptor: borrow, new-path: string) -> result<_, error-code>; + /// Open a file or directory. + /// + /// If `flags` contains `descriptor-flags::mutate-directory`, and the base + /// descriptor doesn't have `descriptor-flags::mutate-directory` set, + /// `open-at` fails with `error-code::read-only`. + /// + /// If `flags` contains `write` or `mutate-directory`, or `open-flags` + /// contains `truncate` or `create`, and the base descriptor doesn't have + /// `descriptor-flags::mutate-directory` set, `open-at` fails with + /// `error-code::read-only`. + /// + /// Note: This is similar to `openat` in POSIX. + @since(version = 0.3.0) + open-at: async func(path-flags: path-flags, path: string, open-flags: open-flags, %flags: descriptor-flags) -> result; + /// Read the contents of a symbolic link. + /// + /// If the contents contain an absolute or rooted path in the underlying + /// filesystem, this function fails with `error-code::not-permitted`. + /// + /// Note: This is similar to `readlinkat` in POSIX. + @since(version = 0.3.0) + readlink-at: async func(path: string) -> result; + /// Remove a directory. + /// + /// Return `error-code::not-empty` if the directory is not empty. + /// + /// Note: This is similar to `unlinkat(fd, path, AT_REMOVEDIR)` in POSIX. + @since(version = 0.3.0) + remove-directory-at: async func(path: string) -> result<_, error-code>; + /// Rename a filesystem object. + /// + /// Note: This is similar to `renameat` in POSIX. + @since(version = 0.3.0) + rename-at: async func(old-path: string, new-descriptor: borrow, new-path: string) -> result<_, error-code>; + /// Create a symbolic link (also known as a "symlink"). + /// + /// If `old-path` starts with `/`, the function fails with + /// `error-code::not-permitted`. + /// + /// Note: This is similar to `symlinkat` in POSIX. + @since(version = 0.3.0) + symlink-at: async func(old-path: string, new-path: string) -> result<_, error-code>; + /// Unlink a filesystem object that is not a directory. + /// + /// This is similar to `unlinkat(fd, path, 0)` in POSIX. + /// + /// Error returns are as specified by POSIX. + /// + /// If the filesystem object is a directory, `error-code::access` or + /// `error-code::is-directory` may be returned instead of the + /// POSIX-specified `error-code::not-permitted`. + @since(version = 0.3.0) + unlink-file-at: async func(path: string) -> result<_, error-code>; + /// Test whether two descriptors refer to the same filesystem object. + /// + /// In POSIX, this corresponds to testing whether the two descriptors have the + /// same device (`st_dev`) and inode (`st_ino` or `d_ino`) numbers. + /// wasi-filesystem does not expose device and inode numbers, so this function + /// may be used instead. + @since(version = 0.3.0) + is-same-object: async func(other: borrow) -> bool; + /// Return a hash of the metadata associated with a filesystem object referred + /// to by a descriptor. + /// + /// This returns a hash of the last-modification timestamp and file size, and + /// may also include the inode number, device number, birth timestamp, and + /// other metadata fields that may change when the file is modified or + /// replaced. It may also include a secret value chosen by the + /// implementation and not otherwise exposed. + /// + /// Implementations are encouraged to provide the following properties: + /// + /// - If the file is not modified or replaced, the computed hash value should + /// usually not change. + /// - If the object is modified or replaced, the computed hash value should + /// usually change. + /// - The inputs to the hash should not be easily computable from the + /// computed hash. + /// + /// However, none of these is required. + @since(version = 0.3.0) + metadata-hash: async func() -> result; + /// Return a hash of the metadata associated with a filesystem object referred + /// to by a directory descriptor and a relative path. + /// + /// This performs the same hash computation as `metadata-hash`. + @since(version = 0.3.0) + metadata-hash-at: async func(path-flags: path-flags, path: string) -> result; + } +} + +@since(version = 0.3.0) +interface preopens { + @since(version = 0.3.0) + use types.{descriptor}; + + /// Return the set of preopened directories, and their paths. + @since(version = 0.3.0) + get-directories: func() -> list>; +} + +@since(version = 0.3.0) +world imports { + @since(version = 0.3.0) + import wasi:clocks/types@0.3.0; + @since(version = 0.3.0) + import wasi:clocks/system-clock@0.3.0; + @since(version = 0.3.0) + import types; + @since(version = 0.3.0) + import preopens; +} diff --git a/sdks/go/wit/deps/golem-1.x/golem-context.wit b/sdks/go/wit/deps/golem-1.x/golem-context.wit new file mode 100644 index 0000000000..aa3252a487 --- /dev/null +++ b/sdks/go/wit/deps/golem-1.x/golem-context.wit @@ -0,0 +1,93 @@ +package golem:api@1.5.0; + +/// Invocation context support +interface context { + use wasi:clocks/system-clock@0.3.0.{instant as datetime}; + + /// Starts a new `span` with the given name, as a child of the current invocation context + start-span: func(name: string) -> span; + + /// Gets the current invocation context + /// + /// The function call captures the current context; if new spans are started, the returned `invocation-context` instance will not + /// reflect that. + current-context: func() -> invocation-context; + + /// Allows or disallows forwarding of trace context headers in outgoing HTTP requests + /// + /// Returns the previous value of the setting + allow-forwarding-trace-context-headers: func(allow: bool) -> bool; + + /// Represents a unit of work or operation + resource span { + /// Gets the starting time of the span + started-at: func() -> datetime; + + /// Set an attribute on the span + set-attribute: func(name: string, value: attribute-value); + + /// Set multiple attributes on the span + set-attributes: func(attributes: list); + + /// Early finishes the span; otherwise it will be finished when the resource is dropped + finish: func(); + } + + /// Represents an invocation context wich allows querying the stack of attributes + /// created by automatic and user-defined spans. + resource invocation-context { + /// Gets the current trace id + trace-id: func() -> trace-id; + + /// Gets the current span id + span-id: func() -> span-id; + + /// Gets the parent context, if any; allows recursive processing of the invocation context. + /// + /// Alternatively, the attribute query methods can return inherited values without having to + /// traverse the stack manually. + parent: func() -> option; + + /// Gets the value of an attribute `key`. If `inherited` is true, the value is searched in the stack of spans, + /// otherwise only in the current span. + get-attribute: func(key: string, inherited: bool) -> option; + + /// Gets all attributes of the current invocation context. If `inherited` is true, it returns the merged set of attributes, each + /// key associated with the latest value found in the stack of spans. + get-attributes: func(inherited: bool) -> list; + + /// Gets the chain of attribute values associated with the given `key`. If the key does not exist in any of the + /// spans in the invocation context, the list is empty. The chain's first element contains the most recent (innermost) value. + get-attribute-chain: func(key: string) -> list; + + /// Gets all values of all attributes of the current invocation context. + get-attribute-chains: func() -> list; + + /// Gets the W3C Trace Context headers associated with the current invocation context + trace-context-headers: func() -> list>; + } + + /// An attribute of a span + record attribute { + key: string, + value: attribute-value + } + + /// A chain of attribute values, the first element representing the most recent value + record attribute-chain { + key: string, + values: list + } + + /// Possible span attribute value types + variant attribute-value { + /// A string value + %string(string) + } + + /// The trace represented by a 16 bytes hexadecimal string + type trace-id = string; + + /// The span represented by a 8 bytes hexadecimal string + type span-id = string; +} diff --git a/sdks/go/wit/deps/golem-1.x/golem-host.wit b/sdks/go/wit/deps/golem-1.x/golem-host.wit new file mode 100644 index 0000000000..ac94d44384 --- /dev/null +++ b/sdks/go/wit/deps/golem-1.x/golem-host.wit @@ -0,0 +1,340 @@ +package golem:api@1.5.0; + +/// The Golem host API provides low level access to Golem specific features such as promises and control over +/// the durability and transactional guarantees the executor provides. +interface host { + use golem:core/types@2.0.0.{component-id, card-id, uuid, agent-id, promise-id, oplog-index}; + /// Represents a Golem component's version + type component-revision = u64; + + /// Represents a Golem environment + record environment-id { + uuid: uuid, + } + + /// Configurable persistence level for agents + variant persistence-level { + persist-nothing, + persist-remote-side-effects, + smart + } + + /// Describes how to update an agent to a different component version + enum update-mode { + /// Automatic update tries to recover the agent using the new component version + /// and may fail if there is a divergence. + automatic, + + /// Manual, snapshot-based update uses a user-defined implementation of the `save-snapshot` interface + /// to store the agent's state, and a user-defined implementation of the `load-snapshot` interface to + /// load it into the new version. + snapshot-based + } + + /// Operators used in filtering enumerated agents + enum filter-comparator { + equal, + not-equal, + greater-equal, + greater, + less-equal, + less + } + + /// Operators used on strings in filtering enumerated agents + enum string-filter-comparator { + equal, + not-equal, + like, + not-like, + starts-with + } + + /// The current status of an agent + enum agent-status { + /// The agent is running an invoked function + running, + /// The agent is ready to run an invoked function + idle, + /// An invocation is active but waiting for something (sleeping, waiting for a promise) + suspended, + /// The last invocation was interrupted but will be resumed + interrupted, + /// The last invocation failed and a retry was scheduled + retrying, + /// The last invocation failed and the agent can no longer be used + failed, + /// The agent exited after a successful invocation and can no longer be invoked + exited, + } + + /// Describes a filter condition on agent IDs when enumerating agents + record agent-name-filter { + comparator: string-filter-comparator, + value: string + } + + /// Describes a filter condition on the agent status when enumerating agents + record agent-status-filter { + comparator: filter-comparator, + value: agent-status + } + + /// Describes a filter condition on the component version when enumerating agents + record agent-version-filter { + comparator: filter-comparator, + value: u64 + } + + /// Describes a filter condition on the agent's creation time when enumerating agents + record agent-created-at-filter { + comparator: filter-comparator, + value: u64 + } + + /// Describes a filter condition on the agent's environment variables when enumerating agents + record agent-env-filter { + name: string, + comparator: string-filter-comparator, + value: string + } + + /// Describes a filter condition on the agent's configuration variables when enumerating agents + record agent-config-vars-filter { + name: string, + comparator: string-filter-comparator, + value: string + } + + /// Describes one filter condition for enumerating agents + variant agent-property-filter { + name(agent-name-filter), + status(agent-status-filter), + version(agent-version-filter), + created-at(agent-created-at-filter), + env(agent-env-filter), + config(agent-config-vars-filter) + } + + /// Combines multiple filter conditions with an `AND` relationship for enumerating agents + record agent-all-filter { + filters: list + } + + /// Combines multiple groups of filter conditions with an `OR` relationship for enumerating agents + record agent-any-filter { + filters: list + } + + /// Metadata about an agent + record agent-metadata { + /// The agent ID, consists of the component ID, agent type and agent parameters + agent-id: agent-id, + /// Command line arguments seen by the agent + args: list, + /// Environment variables seen by the agent + env: list>, + /// Configuration variables seen by the agent + config: list>, + /// The current agent status + status: agent-status, + /// The component version the agent is running with + component-revision: u64, + /// The agent's current retry count + retry-count: u64, + /// The environment the agent belongs to + environment-id: environment-id + } + + /// Creates an agent enumeration + resource get-agents { + /// Creates an agent enumeration request. It is going to enumerate all agents of all the agent types + /// defined in `component-id`, filtered by the conditions given by `filter`. If `precise` is true, + /// the server will calculate the most recent state of all the returned agents, otherwise the returned + /// metadata will be not guaranteed to be up-to-date. + constructor(component-id: component-id, filter: option, precise: bool); + + /// Retrieves the next batch of agent metadata. + get-next: func() -> option>; + } + + /// Target parameter for the `revert-agent` operation + variant revert-agent-target { + /// Revert to a specific oplog index. The given index will be the last one to be kept. + revert-to-oplog-index(oplog-index), + /// Revert the last N invocations. + revert-last-invocations(u64) + } + + /// Details about the fork result + record fork-details { + forked-phantom-id: uuid, + } + + /// Indicates which agent the code is running on after `fork`. + /// The parameter contains details about the fork result, such as the phantom-ID of the newly + /// created agent. + variant fork-result { + /// The original agent that called `fork` + original(fork-details), + /// The new agent + forked(fork-details) + } + + resource get-promise-result { + /// Awaits the result of the promise. + get: async func() -> list; + } + + /// Plain-data handle to a permission card visible to the guest. + record card { + card-id: card-id, + } + + enum card-install-error { + revoked, + not-found, + not-permitted, + } + + /// Create a new promise + create-promise: func() -> promise-id; + + /// Gets a handle to the result of the promise. Can only be called in the same agent that orignally created the promise. + get-promise: func(promise-id: promise-id) -> get-promise-result; + + /// Completes the given promise with the given payload. Returns true if the promise was completed, false + /// if the promise was already completed. The payload is passed to the agent that is awaiting the promise. + complete-promise: func(promise-id: promise-id, data: list) -> bool; + + /// Returns the current position in the persistent op log + get-oplog-index: func() -> oplog-index; + + /// Makes the current agent travel back in time and continue execution from the given position in the persistent + /// op log. + set-oplog-index: func(oplog-idx: oplog-index); + + /// Blocks the execution until the oplog has been written to at least the specified number of replicas, + /// or the maximum number of replicas if the requested number is higher. + oplog-commit: func(replicas: u8); + + /// Marks the beginning of an atomic operation. + /// In case of a failure within the region selected by `mark-begin-operation` and `mark-end-operation` + /// the whole region will be reexecuted on retry. + /// The end of the region is when `mark-end-operation` is called with the returned oplog-index. + mark-begin-operation: func() -> oplog-index; + + /// Commits this atomic operation. After `mark-end-operation` is called for a given index, further calls + /// with the same parameter will do nothing. + mark-end-operation: func(begin: oplog-index); + + /// Unconditionally traps the current invocation with the given reason. + /// + /// This call never returns: it surfaces as an uncatchable wasm trap on the host side + /// and the worker enters the standard trap-recovery flow. SDK guard helpers use this + /// to guarantee that a failed atomic region always leads to a trap, regardless of + /// whether the guest language could otherwise catch the failure. + trap: func(reason: string); + + /// Gets the agent's current persistence level. + get-oplog-persistence-level: func() -> persistence-level; + + /// Sets the agent's current persistence level. This can increase the performance of execution in cases where durable + /// execution is not required. + set-oplog-persistence-level: func(new-persistence-level: persistence-level); + + /// Gets the current idempotence mode. See `set-idempotence-mode` for details. + get-idempotence-mode: func() -> bool; + + /// Sets the current idempotence mode. The default is true. + /// True means side-effects are treated idempotent and Golem guarantees at-least-once semantics. + /// In case of false the executor provides at-most-once semantics, failing the agent in case it is + /// not known if the side effect was already executed. + set-idempotence-mode: func(idempotent: bool); + + /// Generates an idempotency key. This operation will never be replayed — + /// i.e. not only is this key generated, but it is persisted and committed, such that the key can be used in third-party systems (e.g. payment processing) + /// to introduce idempotence. + generate-idempotency-key: func() -> uuid; + + /// Returns one permission card currently installed in this agent's wallet, if any. + self-card: func() -> option; + + /// Derives a card handle from an installed card. This minimal test-facing form keeps the card as plain data. + derive-card: func(card: card) -> result; + + /// Installs a card into this agent's own wallet. + install-card: func(card: card) -> result<_, card-install-error>; + + /// Initiates an update attempt for the given agent. The function returns immediately once the request has been processed, + /// not waiting for the agent to get updated. + update-agent: func(agent-id: agent-id, target-revision: component-revision, mode: update-mode); + + /// Get the current agent's metadata + get-self-metadata: func() -> agent-metadata; + + /// Get agent metadata + get-agent-metadata: func(agent-id: agent-id) -> option; + + /// Fork an agent to another agent at a given oplog index + fork-agent: func(source-agent-id: agent-id, target-agent-id: agent-id, oplog-idx-cut-off: oplog-index); + + /// Revert an agent to a previous state + revert-agent: func(agent-id: agent-id, revert-target: revert-agent-target); + + /// Get the component-id for a given component reference. + /// Returns none when no component with the specified reference exists. + /// The syntax of the component reference is implementation dependent. + /// + /// Golem OSS: "{component_name}" + /// Golem Cloud: + /// 1: "{component_name}" -> will resolve in current account and project + /// 2: "{project_name}/{component_name}" -> will resolve in current account + /// 3: "{account_id}/{project_name}/{component_name}" + resolve-component-id: func(component-reference: string) -> option; + + /// Get the agent-id for a given component and agent name. + /// Returns none when no component for the specified reference exists. + resolve-agent-id: func(component-reference: string, agent-name: string) -> option; + + /// Get the agent-id for a given component and agent-name. + /// Returns none when no component for the specified component-reference or no agent with the specified agent-name exists. + resolve-agent-id-strict: func(component-reference: string, agent-name: string) -> option; + + /// Forks the current agent at the current execution point. The new agent gets the same base agent ID but + /// with a new unique phantom ID. The phantom ID of the forked agent is returned in `fork-result` on + /// both sides. The newly created agent continues running from the same point, but the return value is + /// going to be different in this agent and the forked agent. + fork: func() -> fork-result; + + /// Snapshot payload + record snapshot { + payload: list, + mime-type: string + } +} + +/// Interface providing user-defined snapshotting capability. This can be used to perform manual update of agents +/// when the new component incompatible with the old one. +interface save-snapshot { + use host.{snapshot}; + + /// Saves the component's state into a user-defined snapshot + save: async func() -> snapshot; +} + +/// Interface providing user-defined snapshotting capability. This can be used to perform manual update of agents +/// when the new component incompatible with the old one. +interface load-snapshot { + use host.{snapshot}; + + /// Tries to load a user-defined snapshot, setting up the agent's state based on it. + /// The function can return with a failure to indicate that the update is not possible. + load: async func(snapshot: snapshot) -> result<_, string>; +} + +world golem-host { + import host; + import save-snapshot; + import load-snapshot; +} diff --git a/sdks/go/wit/deps/golem-1.x/golem-oplog-processor.wit b/sdks/go/wit/deps/golem-1.x/golem-oplog-processor.wit new file mode 100644 index 0000000000..2478c3fdeb --- /dev/null +++ b/sdks/go/wit/deps/golem-1.x/golem-oplog-processor.wit @@ -0,0 +1,27 @@ +package golem:api@1.5.0; + +interface oplog-processor { + use wasi:clocks/system-clock@0.3.0.{instant as datetime}; + use golem:core/types@2.0.0.{account-id, component-id, agent-id}; + + use host.{oplog-index, agent-metadata}; + use oplog.{oplog-entry}; + + record account-info { + account-id: account-id + } + + /// Called when one of the agents the plugin is activated on has written new entries to its oplog. + /// + /// There are no guarantees for the number of processors running at the same time, and different entries from the same agent + /// may be sent to different processor instances. + /// + /// The `account-info` parameters contains details of the account the installation belongs to. + /// The `config` parameter contains the configuration parameters for the plugin, as specified in the plugin installation + /// The `component-id` parameter contains the identifier of the component the plugin was installed to. + /// The `agent-id` parameter identifies the agent. + /// The `metadata` parameter contains the latest metadata of the agent. + /// The `first-entry-index` parameter contains the index of the first entry in the list of `entries`. + /// The `entries` parameter always contains at least one element. + process: async func(account-info: account-info, config: list>, component-id: component-id, agent-id: agent-id, metadata: agent-metadata, first-entry-index: oplog-index, entries: list) -> result<_, string>; +} diff --git a/sdks/go/wit/deps/golem-1.x/golem-oplog.wit b/sdks/go/wit/deps/golem-1.x/golem-oplog.wit new file mode 100644 index 0000000000..96aa399631 --- /dev/null +++ b/sdks/go/wit/deps/golem-1.x/golem-oplog.wit @@ -0,0 +1,977 @@ +package golem:api@1.5.0; + +/// Host interface for enumerating and searching for agent oplogs +interface oplog { + use wasi:clocks/system-clock@0.3.0.{instant as datetime}; + use golem:core/types@2.0.0.{account-id, card-id, schema-value-tree, typed-schema-value}; + + use host.{component-revision, oplog-index, persistence-level, environment-id, uuid, agent-id, snapshot}; + use wasi:clocks/types@0.3.0.{duration}; + + /// Whether an agent is durable (persistent oplog) or ephemeral. + /// This mirrors the agent-mode enum in golem:agent/common@1.5.0; it is duplicated here to avoid + /// a circular WIT package dependency between golem:api and golem:agent. + enum agent-mode { + durable, + ephemeral + } + + use context.{attribute, attribute-value, span-id, trace-id}; + use retry.{retry-predicate, retry-policy, named-retry-policy}; + + /// Index into a retry-policy-state's node list + type state-node-index = s32; + + /// Persistent state of a retry policy across retry attempts. + /// Root is nodes[0]. Children referenced by state-node-index. + record retry-policy-state { + nodes: list, + } + + variant state-node { + /// Counter-based state (e.g. periodic, exponential, fibonacci). + counter(u32), + /// Terminal state — policy has given up. + terminal, + /// Wrapper state delegating to an inner policy state. + wrapper(state-node-index), + /// Count-box state with attempt tracking. + count-box(count-box-state), + /// And-then sequential composition state. + and-then(and-then-state), + /// Pair state for union/intersect composition. + pair(pair-state), + } + + record count-box-state { + attempts: u32, + inner: state-node-index, + } + + record and-then-state { + left: state-node-index, + right: state-node-index, + on-right: bool, + } + + record pair-state { + left: state-node-index, + right: state-node-index, + } + + record environment-plugin-grant-id { + uuid: uuid, + } + + variant wrapped-function-type { + /// The side-effect reads from the agent's local state (for example local file system, + /// random generator, etc.) + read-local, + /// The side-effect writes to the agent's local state (for example local file system) + write-local, + /// The side-effect reads from external state (for example a key-value store) + read-remote, + /// The side-effect manipulates external state (for example an RPC call) + write-remote, + /// The side-effect manipulates external state through multiple invoked functions (for example + /// a HTTP request where reading the response involves multiple host function calls) + /// + /// On the first invocation of the batch, the parameter should be `None` - this triggers + /// writing a scope `Start` entry in the oplog. Followup invocations should contain this + /// entry's index as the parameter so their host-call `Start` entries can point back to the + /// scope. In batched remote writes it is the caller's responsibility to manually write the + /// matching scope `End` entry (using `end_function`) when the operation is completed. + write-remote-batched(option), + write-remote-transaction(option) + } + + record plugin-installation-description { + environment-plugin-grant-id: environment-plugin-grant-id, + plugin-priority: s32, + plugin-name: string, + plugin-version: string, + parameters: list> + } + + record raw-local-agent-config-entry { + path: list, + value: schema-value-tree + } + + record local-agent-config-entry { + path: list, + value: typed-schema-value + } + + record create-parameters { + timestamp: datetime, + agent-id: agent-id, + agent-mode: agent-mode, + component-revision: component-revision, + env: list>, + created-by: account-id, + environment-id: environment-id, + parent: option, + component-size: u64, + initial-total-linear-memory-size: u64, + initial-active-plugins: list, + local-agent-config: list, + original-phantom-id: option, + instance-id: uuid + } + + /// Parameters of an enriched durable host-call `start` entry. + /// + /// The recorded `request` payload of every durable host call — including + /// durable P3 async calls such as HTTP send/consume-body, sockets, keyvalue, + /// and blobstore operations — surfaces as a generic `typed-schema-value` + /// tree, identified by `function-name`; there are no per-interface named WIT + /// variants for the payload shapes. + record start-parameters { + timestamp: datetime, + parent-start-index: option, + function-name: string, + request: option, + durable-function-type: wrapped-function-type, + } + + /// Parameters of an enriched durable host-call `end` entry. Like the + /// `start` `request`, the recorded `response` payload surfaces as a generic + /// `typed-schema-value` tree (no per-interface named WIT variants). + record end-parameters { + timestamp: datetime, + start-index: oplog-index, + response: option, + forced-commit: bool, + } + + /// Parameters of an enriched durable host-call `cancelled` entry. Like the + /// `start` `request`, the optional recorded `partial` result surfaces as a + /// generic `typed-schema-value` tree (no per-interface named WIT variants). + record cancelled-parameters { + timestamp: datetime, + start-index: oplog-index, + partial: option, + } + + /// Parameters of a `completion-discarded` entry: the durable host call started at + /// `start-index` completed successfully (its `end` entry was persisted) but the response + /// was never delivered to the agent, because the agent dropped the call's completion + /// future after the `end` was already recorded. + record completion-discarded-parameters { + timestamp: datetime, + start-index: oplog-index, + } + + record local-span-data { + span-id: span-id, + start: datetime, + parent: option, + /// Optionally an index of the invocation-context field within agent-invocation + linked-context: option, + attributes: list, + inherited: bool + } + + record external-span-data { + span-id: span-id + } + + variant span-data { + local-span(local-span-data), + external-span(external-span-data) + } + + record agent-invocation-started-parameters { + timestamp: datetime, + invocation: agent-invocation, + } + + record agent-invocation-finished-parameters { + timestamp: datetime, + %result: agent-invocation-result, + method-name: option, + consumed-fuel: s64, + component-revision: u64, + } + + record error-parameters { + timestamp: datetime, + error: string, + retry-from: oplog-index, + inside-atomic-region: bool, + /// Persistent retry policy state, if a semantic retry policy is active. + retry-policy-state: option, + } + + record oplog-region { + start: oplog-index, + end: oplog-index + } + + record jump-parameters { + timestamp: datetime, + jump: oplog-region + } + + /// Parameters for a set-retry-policy oplog entry. + record set-retry-policy-parameters { + timestamp: datetime, + policy: named-retry-policy, + } + + /// Parameters for a remove-retry-policy oplog entry. + record remove-retry-policy-parameters { + timestamp: datetime, + name: string, + } + + record queued-card-event-install { + card-id: card-id, + } + + record queued-card-event-revoke { + card-id: card-id, + } + + variant queued-card-event { + install(queued-card-event-install), + revoke(queued-card-event-revoke), + } + + /// Parameters for a card-event-queued oplog entry. + record card-event-queued-parameters { + timestamp: datetime, + event: queued-card-event, + } + + /// Parameters for a card-installed oplog entry. + record card-installed-parameters { + timestamp: datetime, + queued-event-index: option, + card-id: card-id, + } + + /// Raw parameters for a card-installed oplog entry. + record raw-card-installed-parameters { + timestamp: datetime, + queued-event-index: option, + card: list, + } + + enum card-install-failure { + card-revoked, + not-found, + recipient-mismatch, + not-permitted, + } + + /// Parameters for a card-install-failed oplog entry. + record card-install-failed-parameters { + timestamp: datetime, + queued-event-index: oplog-index, + card-id: card-id, + reason: card-install-failure, + } + + /// Parameters for a card-revoked oplog entry. + record card-revoked-parameters { + timestamp: datetime, + queued-event-index: oplog-index, + card-id: card-id, + } + + /// Parameters for a card-expired oplog entry. + record card-expired-parameters { + timestamp: datetime, + card-id: card-id, + } + + /// Identifies which host-owned stream a host-stream-frame oplog entry belongs to. + /// The kind determines how the entry's payload is interpreted. + enum host-stream-kind { + /// A frame of the outgoing request body of a P3 HTTP client send. + p3-http-request-body, + } + + /// Parameters for a host-stream-frame oplog entry: a durably recorded frame of a + /// host-owned stream (e.g. the outgoing request body of a P3 HTTP client send), + /// attached to the durable host call identified by its start entry's index. + record host-stream-frame-parameters { + timestamp: datetime, + parent-start-index: oplog-index, + kind: host-stream-kind, + payload: typed-schema-value, + } + + record end-atomic-region-parameters { + timestamp: datetime, + begin-index: oplog-index + } + + record agent-initialization-parameters { + idempotency-key: string, + constructor-parameters: typed-schema-value, + trace-id: string, + trace-states: list, + invocation-context: list>, + } + + record agent-method-invocation-parameters { + idempotency-key: string, + method-name: string, + function-input: typed-schema-value, + trace-id: string, + trace-states: list, + invocation-context: list>, + } + + record load-snapshot-parameters { + snapshot: snapshot-data, + } + + record process-oplog-entries-parameters { + idempotency-key: string, + } + + record manual-update-parameters { + target-revision: component-revision, + } + + variant agent-invocation { + agent-initialization(agent-initialization-parameters), + agent-method-invocation(agent-method-invocation-parameters), + save-snapshot, + load-snapshot(load-snapshot-parameters), + process-oplog-entries(process-oplog-entries-parameters), + manual-update(manual-update-parameters), + } + + variant agent-invocation-result { + agent-initialization(agent-invocation-output-parameters), + agent-method(agent-invocation-output-parameters), + manual-update, + load-snapshot(fallible-result-parameters), + save-snapshot(save-snapshot-result-parameters), + process-oplog-entries(fallible-result-parameters), + } + + record agent-invocation-output-parameters { + output: typed-schema-value, + } + + record fallible-result-parameters { + error: option, + } + + record save-snapshot-result-parameters { + snapshot: snapshot-data, + } + + record pending-agent-invocation-parameters { + timestamp: datetime, + invocation: agent-invocation + } + + variant update-description { + /// Automatic update by replaying the oplog on the new version + auto-update, + /// Custom update by loading a given snapshot on the new version + snapshot-based(snapshot) + } + + record pending-update-parameters { + timestamp: datetime, + target-revision: component-revision, + description: update-description + } + + record successful-update-parameters { + timestamp: datetime, + target-revision: component-revision, + new-component-size: u64, + new-active-plugins: list + } + + record failed-update-parameters { + timestamp: datetime, + target-revision: component-revision, + details: option + } + + record grow-memory-parameters { + timestamp: datetime, + delta: u64 + } + + record filesystem-storage-usage-update-parameters { + timestamp: datetime, + delta: s64 + } + + type agent-resource-id = u64; + + record create-resource-parameters { + timestamp: datetime, + id: agent-resource-id, + name: string, + owner: string + } + + record drop-resource-parameters { + timestamp: datetime, + id: agent-resource-id, + name: string, + owner: string + } + + enum log-level { + stdout, + stderr, + trace, + debug, + info, + warn, + error, + critical + } + + record log-parameters { + timestamp: datetime, + level: log-level, + context: string, + message: string + } + + record activate-plugin-parameters { + timestamp: datetime, + plugin: plugin-installation-description + } + + record deactivate-plugin-parameters { + timestamp: datetime, + plugin: plugin-installation-description + } + + record revert-parameters { + timestamp: datetime, + dropped-region: oplog-region + } + + record cancel-pending-invocation-parameters { + timestamp: datetime, + idempotency-key: string + } + + record start-span-parameters { + timestamp: datetime, + span-id: span-id, + parent: option, + linked-context-id: option, + attributes: list, + } + + record finish-span-parameters { + timestamp: datetime, + span-id: span-id + } + + record set-span-attribute-parameters { + timestamp: datetime, + span-id: span-id, + key: string, + value: attribute-value + } + + record change-persistence-level-parameters { + timestamp: datetime, + persistence-level: persistence-level + } + + record begin-remote-transaction-parameters { + timestamp: datetime, + transaction-id: string + } + + record remote-transaction-parameters { + timestamp: datetime, + begin-index: oplog-index + } + + record snapshot-data { + data: list, + mime-type: string, + } + + record snapshot-parameters { + timestamp: datetime, + data: snapshot-data, + } + + record oplog-processor-checkpoint-parameters { + timestamp: datetime, + plugin: plugin-installation-description, + target-agent-id: agent-id, + confirmed-up-to: oplog-index, + sending-up-to: oplog-index, + last-batch-start: oplog-index, + } + + record timestamp { + timestamp: datetime + } + + /// Opaque oplog payload, which can either be serialized inline or stored externally + variant oplog-payload { + inline(list), + external(oplog-external-payload) + } + + record oplog-external-payload { + payload-id: uuid, + md5-hash: list + } + + record agent-terminated-by-quota-error { + environment-id: environment-id, + resource-name: string + } + + record ephemeral-sleep-too-long { + requested-nanos: u64, + max-nanos: u64 + } + + record ephemeral-fuel-exhausted { + overdraft-limit: u64 + } + + record ephemeral-cannot-suspend { + reason: string + } + + record read-only-violation { + method: string, + host-function: string + } + + /// Describes the error that occurred in the agent + variant worker-error { + unknown(string), + invalid-request(string), + stack-overflow, + out-of-memory, + exceeded-memory-limit, + internal-error(string), + deterministic-trap(string), + transient-error(string), + permanent-error(string), + exceeded-table-limit, + exceeded-http-call-limit, + exceeded-rpc-call-limit, + node-out-of-filesystem-storage, + agent-exceeded-filesystem-storage-limit, + agent-terminated-by-quota(agent-terminated-by-quota-error), + ephemeral-sleep-too-long(ephemeral-sleep-too-long), + ephemeral-fuel-exhausted(ephemeral-fuel-exhausted), + ephemeral-cannot-suspend(ephemeral-cannot-suspend), + read-only-violation(read-only-violation) + } + + record raw-create-parameters { + timestamp: datetime, + agent-id: agent-id, + agent-mode: agent-mode, + component-revision: component-revision, + env: list>, + environment-id: environment-id, + created-by: account-id, + parent: option, + component-size: u64, + initial-total-linear-memory-size: u64, + initial-active-plugins: list, + local-agent-config: list, + original-phantom-id: option, + instance-id: uuid + } + + record raw-start-parameters { + timestamp: datetime, + parent-start-index: option, + function-name: string, + request: option, + durable-function-type: wrapped-function-type, + } + + record raw-end-parameters { + timestamp: datetime, + start-index: oplog-index, + response: option, + forced-commit: bool, + } + + record raw-cancelled-parameters { + timestamp: datetime, + start-index: oplog-index, + partial: option, + } + + record raw-completion-discarded-parameters { + timestamp: datetime, + start-index: oplog-index, + } + + /// Parameters for a host-stream-frame oplog entry, with the frame payload in raw + /// (possibly externally stored) form. + record raw-host-stream-frame-parameters { + timestamp: datetime, + parent-start-index: oplog-index, + kind: host-stream-kind, + payload: oplog-payload, + } + + record raw-agent-invocation-started-parameters { + timestamp: datetime, + idempotency-key: string, + payload: oplog-payload, + trace-id: string, + trace-states: list, + invocation-context: list, + } + + record raw-agent-invocation-finished-parameters { + timestamp: datetime, + %result: oplog-payload, + method-name: option, + consumed-fuel: s64, + component-revision: u64, + } + + record raw-error-parameters { + timestamp: datetime, + error: worker-error, + retry-from: oplog-index, + inside-atomic-region: bool, + /// Persistent retry policy state, if a semantic retry policy is active. + retry-policy-state: option, + } + + record raw-pending-agent-invocation-parameters { + timestamp: datetime, + idempotency-key: string, + payload: oplog-payload, + trace-id: string, + trace-states: list, + invocation-context: list, + } + + /// Raw update description used in oplog entries + variant raw-update-description { + /// Automatic update by replaying the oplog on the new version + automatic(component-revision), + /// Custom update by loading a given snapshot on the new version + snapshot-based(raw-snapshot-based-update) + } + + record raw-snapshot-based-update { + target-revision: component-revision, + payload: oplog-payload, + mime-type: string + } + + record raw-pending-update-parameters { + timestamp: datetime, + description: raw-update-description + } + + record raw-successful-update-parameters { + timestamp: datetime, + target-revision: component-revision, + new-component-size: u64, + new-active-plugins: list + } + + record resource-type-id { + name: string, + owner: string, + } + + record raw-create-resource-parameters { + timestamp: datetime, + id: agent-resource-id, + resource-type-id: resource-type-id, + } + + record raw-drop-resource-parameters { + timestamp: datetime, + id: agent-resource-id, + resource-type-id: resource-type-id, + } + + record raw-activate-plugin-parameters { + timestamp: datetime, + plugin-grant-id: environment-plugin-grant-id + } + + record raw-deactivate-plugin-parameters { + timestamp: datetime, + plugin-grant-id: environment-plugin-grant-id + } + + record raw-begin-remote-transaction-parameters { + timestamp: datetime, + transaction-id: string, + original-begin-index: option + } + + record raw-snapshot-parameters { + timestamp: datetime, + data: oplog-payload, + mime-type: string + } + + record raw-oplog-processor-checkpoint-parameters { + timestamp: datetime, + plugin-grant-id: environment-plugin-grant-id, + target-agent-id: agent-id, + confirmed-up-to: oplog-index, + sending-up-to: oplog-index, + last-batch-start: oplog-index, + } + + variant oplog-entry { + /// The initial agent oplog entry + create(raw-create-parameters), + /// Marks the start of a durable host call (or scope such as a batched-write). + start(raw-start-parameters), + /// Marks the successful completion of a durable host call (or scope) started by a matching `Start`. + end(raw-end-parameters), + /// Marks that a durable host call started by a matching `Start` was cancelled + /// (e.g. dropped from a `select!`) before producing a final response. + cancelled(raw-cancelled-parameters), + /// The agent has been invoked + agent-invocation-started(raw-agent-invocation-started-parameters), + /// The agent has completed an invocation + agent-invocation-finished(raw-agent-invocation-finished-parameters), + /// Agent suspended + suspend(timestamp), + /// Agent failed + error(raw-error-parameters), + /// Marker entry added when get-oplog-index is called from the agent, to make the jumping behavior + /// more predictable. + no-op(timestamp), + /// The agent needs to recover up to the given target oplog index and continue running from + /// the source oplog index from there + /// `jump` is an oplog region representing that from the end of that region we want to go back to the start and + /// ignore all recorded operations in between. + jump(jump-parameters), + /// Indicates that the agent has been interrupted at this point. + /// Only used to recompute the agent's (cached) status, has no effect on execution. + interrupted(timestamp), + /// Indicates that the agent has been exited using WASI's exit function. + exited(timestamp), + /// Begins an atomic region. All oplog entries after `BeginAtomicRegion` are to be ignored during + /// recovery except if there is a corresponding `EndAtomicRegion` entry. + begin-atomic-region(timestamp), + /// Ends an atomic region. All oplog entries between the corresponding `BeginAtomicRegion` and this + /// entry are to be considered during recovery, and the begin/end markers can be removed during oplog + /// compaction. + end-atomic-region(end-atomic-region-parameters), + /// An invocation request arrived while the agent was busy + pending-agent-invocation(raw-pending-agent-invocation-parameters), + /// An update request arrived and will be applied as soon the agent restarts + pending-update(raw-pending-update-parameters), + /// An update was successfully applied + successful-update(raw-successful-update-parameters), + /// An update failed to be applied + failed-update(failed-update-parameters), + /// Increased total linear memory size + grow-memory(grow-memory-parameters), + /// Updated filesystem usage by a signed delta + filesystem-storage-usage-update(filesystem-storage-usage-update-parameters), + /// Created a resource instance + create-resource(raw-create-resource-parameters), + /// Dropped a resource instance + drop-resource(raw-drop-resource-parameters), + /// The agent emitted a log message + log(log-parameters), + /// The agent has been restarted, forgetting all its history + restart(timestamp), + /// Activates a plugin + activate-plugin(raw-activate-plugin-parameters), + /// Deactivates a plugin + deactivate-plugin(raw-deactivate-plugin-parameters), + /// Revert an agent to a previous state + revert(revert-parameters), + /// Cancel a pending invocation + cancel-pending-invocation(cancel-pending-invocation-parameters), + /// Start a new span in the invocation context + start-span(start-span-parameters), + /// Finish an open span in the invocation context + finish-span(finish-span-parameters), + /// Set an attribute on an open span in the invocation context + set-span-attribute(set-span-attribute-parameters), + /// Change the current persistence level + change-persistence-level(change-persistence-level-parameters), + /// Begins a transaction operation + begin-remote-transaction(raw-begin-remote-transaction-parameters), + /// Pre-Commit of the transaction, indicating that the transaction will be committed + pre-commit-remote-transaction(remote-transaction-parameters), + /// Pre-Rollback of the transaction, indicating that the transaction will be rolled back + pre-rollback-remote-transaction(remote-transaction-parameters), + /// Committed transaction operation, indicating that the transaction was committed + committed-remote-transaction(remote-transaction-parameters), + /// Rolled back transaction operation, indicating that the transaction was rolled back + rolled-back-remote-transaction(remote-transaction-parameters), + /// A snapshot of the agent's state + snapshot(raw-snapshot-parameters), + /// Checkpoint for oplog processor plugin delivery tracking + oplog-processor-checkpoint(raw-oplog-processor-checkpoint-parameters), + /// Sets or overwrites a named retry policy + set-retry-policy(set-retry-policy-parameters), + /// Removes a named retry policy by name + remove-retry-policy(remove-retry-policy-parameters), + /// Durable queue entry for pending permission-card work + card-event-queued(card-event-queued-parameters), + /// Records successful installation of a permission card into the agent wallet + card-installed(raw-card-installed-parameters), + /// Records failed installation of a permission card into the agent wallet + card-install-failed(card-install-failed-parameters), + /// Records that a permission card used by the agent has been revoked + card-revoked(card-revoked-parameters), + /// Records that a permission card used by the agent has expired + card-expired(card-expired-parameters), + /// A durably recorded frame of a host-owned stream (e.g. an outgoing HTTP request body), + /// attached to the durable host call identified by its start entry's index + host-stream-frame(raw-host-stream-frame-parameters), + /// The successful completion of the durable host call started by the matching `start` + /// was persisted, but its response was never delivered to the agent (the agent dropped + /// the completion future after the `end` was recorded) + completion-discarded(raw-completion-discarded-parameters) + } + + variant public-oplog-entry { + /// The initial agent oplog entry + create(create-parameters), + /// Marks the start of a durable host call (or scope such as a batched-write). + start(start-parameters), + /// Marks the successful completion of a durable host call (or scope) started by a matching `Start`. + end(end-parameters), + /// Marks that a durable host call started by a matching `Start` was cancelled + /// (e.g. dropped from a `select!`) before producing a final response. + cancelled(cancelled-parameters), + /// The agent has been invoked + agent-invocation-started(agent-invocation-started-parameters), + /// The agent has completed an invocation + agent-invocation-finished(agent-invocation-finished-parameters), + /// Agent suspended + suspend(timestamp), + /// Agent failed + error(error-parameters), + /// Marker entry added when get-oplog-index is called from the agent, to make the jumping behavior + /// more predictable. + no-op(timestamp), + /// The agent needs to recover up to the given target oplog index and continue running from + /// the source oplog index from there + /// `jump` is an oplog region representing that from the end of that region we want to go back to the start and + /// ignore all recorded operations in between. + jump(jump-parameters), + /// Indicates that the agent has been interrupted at this point. + /// Only used to recompute the agent's (cached) status, has no effect on execution. + interrupted(timestamp), + /// Indicates that the agent has been exited using WASI's exit function. + exited(timestamp), + /// Begins an atomic region. All oplog entries after `BeginAtomicRegion` are to be ignored during + /// recovery except if there is a corresponding `EndAtomicRegion` entry. + begin-atomic-region(timestamp), + /// Ends an atomic region. All oplog entries between the corresponding `BeginAtomicRegion` and this + /// entry are to be considered during recovery, and the begin/end markers can be removed during oplog + /// compaction. + end-atomic-region(end-atomic-region-parameters), + /// An invocation request arrived while the agent was busy + pending-agent-invocation(pending-agent-invocation-parameters), + /// An update request arrived and will be applied as soon the agent restarts + pending-update(pending-update-parameters), + /// An update was successfully applied + successful-update(successful-update-parameters), + /// An update failed to be applied + failed-update(failed-update-parameters), + /// Increased total linear memory size + grow-memory(grow-memory-parameters), + /// Updated filesystem usage by a signed delta + filesystem-storage-usage-update(filesystem-storage-usage-update-parameters), + /// Created a resource instance + create-resource(create-resource-parameters), + /// Dropped a resource instance + drop-resource(drop-resource-parameters), + /// The agent emitted a log message + log(log-parameters), + /// The agent's has been restarted, forgetting all its history + restart(timestamp), + /// Activates a plugin + activate-plugin(activate-plugin-parameters), + /// Deactivates a plugin + deactivate-plugin(deactivate-plugin-parameters), + /// Revert an agent to a previous state + revert(revert-parameters), + /// Cancel a pending invocation + cancel-pending-invocation(cancel-pending-invocation-parameters), + /// Start a new span in the invocation context + start-span(start-span-parameters), + /// Finish an open span in the invocation context + finish-span(finish-span-parameters), + /// Set an attribute on an open span in the invocation context + set-span-attribute(set-span-attribute-parameters), + /// Change the current persistence level + change-persistence-level(change-persistence-level-parameters), + /// Begins a transaction operation + begin-remote-transaction(begin-remote-transaction-parameters), + /// Pre-Commit of the transaction, indicating that the transaction will be committed + pre-commit-remote-transaction(remote-transaction-parameters), + /// Pre-Rollback of the transaction, indicating that the transaction will be rolled back + pre-rollback-remote-transaction(remote-transaction-parameters), + /// Committed transaction operation, indicating that the transaction was committed + committed-remote-transaction(remote-transaction-parameters), + /// Rolled back transaction operation, indicating that the transaction was rolled back + rolled-back-remote-transaction(remote-transaction-parameters), + /// A snapshot of the worker's state + snapshot(snapshot-parameters), + /// Checkpoint for oplog processor plugin delivery tracking + oplog-processor-checkpoint(oplog-processor-checkpoint-parameters), + /// Sets or overwrites a named retry policy + set-retry-policy(set-retry-policy-parameters), + /// Removes a named retry policy by name + remove-retry-policy(remove-retry-policy-parameters), + /// Durable queue entry for pending permission-card work + card-event-queued(card-event-queued-parameters), + /// Records successful installation of a permission card into the agent wallet + card-installed(card-installed-parameters), + /// Records failed installation of a permission card into the agent wallet + card-install-failed(card-install-failed-parameters), + /// Records that a permission card used by the agent has been revoked + card-revoked(card-revoked-parameters), + /// Records that a permission card used by the agent has expired + card-expired(card-expired-parameters), + /// A durably recorded frame of a host-owned stream (e.g. an outgoing HTTP request body), + /// attached to the durable host call identified by its start entry's index + host-stream-frame(host-stream-frame-parameters), + /// The successful completion of the durable host call started by the matching `start` + /// was persisted, but its response was never delivered to the agent (the agent dropped + /// the completion future after the `end` was recorded) + completion-discarded(completion-discarded-parameters) + } + + /// Enriches raw oplog entries into public oplog entries by resolving oplog payloads + /// and augmenting entries with component metadata. + enrich-oplog-entries: func(environment-id: environment-id, agent-id: agent-id, entries: list>, component-revision: component-revision) -> result, string>; + + resource get-oplog { + constructor(agent-id: agent-id, start: oplog-index); + get-next: func() -> option>; + } + + resource search-oplog { + constructor(agent-id: agent-id, text: string); + get-next: func() -> option>>; + } +} diff --git a/sdks/go/wit/deps/golem-1.x/golem-retry.wit b/sdks/go/wit/deps/golem-1.x/golem-retry.wit new file mode 100644 index 0000000000..c585bbdbe0 --- /dev/null +++ b/sdks/go/wit/deps/golem-1.x/golem-retry.wit @@ -0,0 +1,165 @@ +package golem:api@1.5.0; + +interface retry { + use wasi:clocks/types@0.3.0.{duration}; + + // ── Predicate value ────────────────────────────────────────────── + + /// Dynamic value for property comparisons in retry predicates + variant predicate-value { + text(string), + integer(s64), + boolean(bool), + } + + // ── Predicate tree (flattened) ─────────────────────────────────── + + /// Index into a retry-predicate's node list + type predicate-node-index = s32; + + /// A composable predicate tree for matching retry contexts. + /// Root is nodes[0]. Children referenced by predicate-node-index. + record retry-predicate { + nodes: list, + } + + variant predicate-node { + prop-eq(property-comparison), + prop-neq(property-comparison), + prop-gt(property-comparison), + prop-gte(property-comparison), + prop-lt(property-comparison), + prop-lte(property-comparison), + prop-exists(string), + prop-in(property-set-check), + prop-matches(property-pattern), + prop-starts-with(property-pattern), + prop-contains(property-pattern), + pred-and(tuple), + pred-or(tuple), + pred-not(predicate-node-index), + pred-true, + pred-false, + } + + record property-comparison { + property-name: string, + value: predicate-value, + } + + record property-set-check { + property-name: string, + values: list, + } + + record property-pattern { + property-name: string, + pattern: string, + } + + // ── Policy tree (flattened) ────────────────────────────────────── + + /// Index into a retry-policy's node list + type policy-node-index = s32; + + /// A composable retry policy tree. + /// Root is nodes[0]. Children referenced by policy-node-index. + record retry-policy { + nodes: list, + } + + variant policy-node { + periodic(duration), + exponential(exponential-config), + fibonacci(fibonacci-config), + immediate, + never, + count-box(count-box-config), + time-box(time-box-config), + clamp-delay(clamp-config), + add-delay(add-delay-config), + jitter(jitter-config), + filtered-on(filtered-config), + and-then(tuple), + policy-union(tuple), + policy-intersect(tuple), + } + + record exponential-config { + base-delay: duration, + factor: f64, + } + + record fibonacci-config { + first: duration, + second: duration, + } + + record count-box-config { + max-retries: u32, + inner: policy-node-index, + } + + record time-box-config { + limit: duration, + inner: policy-node-index, + } + + record clamp-config { + min-delay: duration, + max-delay: duration, + inner: policy-node-index, + } + + record add-delay-config { + delay: duration, + inner: policy-node-index, + } + + record jitter-config { + factor: f64, + inner: policy-node-index, + } + + /// filtered-config embeds a full retry-predicate inline (self-contained) + record filtered-config { + predicate: retry-predicate, + inner: policy-node-index, + } + + // ── Named policy rule ──────────────────────────────────────────── + + /// A named retry policy rule: predicate selects when it applies, + /// policy defines the retry strategy, priority controls evaluation order + /// (higher = checked first). + record named-retry-policy { + name: string, + priority: u32, + predicate: retry-predicate, + policy: retry-policy, + } + + // ── Host functions ─────────────────────────────────────────────── + + /// Get all retry policies active for this agent + get-retry-policies: func() -> list; + + /// Get a specific retry policy by name + get-retry-policy-by-name: func(name: string) -> option; + + /// Resolve the matching retry policy for a given operation context. + /// Evaluates named policies in descending priority order; returns the + /// policy from the first rule whose predicate matches, or none. + resolve-retry-policy: func( + verb: string, + noun-uri: string, + properties: list>, + ) -> option; + + /// Add or overwrite a named retry policy (persisted to oplog). + /// If a policy with the same name exists, it is replaced. + set-retry-policy: func(policy: named-retry-policy); + + /// Remove a named retry policy by name (persisted to oplog). + remove-retry-policy: func(name: string); +} diff --git a/sdks/go/wit/deps/golem-agent/common.wit b/sdks/go/wit/deps/golem-agent/common.wit new file mode 100644 index 0000000000..28b257612c --- /dev/null +++ b/sdks/go/wit/deps/golem-agent/common.wit @@ -0,0 +1,237 @@ +package golem:agent@2.0.0; + +interface common { + use golem:core/types@2.0.0.{schema-graph, type-node-index, typed-schema-value, + metadata-envelope, agent-id, account-id, component-id}; + use wasi:clocks/types@0.3.0.{duration}; + + enum agent-mode { + durable, + ephemeral + } + + /// Full agent type declaration. + /// + /// `schema` is the per-agent type-node pool. Constructor / method / config + /// schema roots below are `type-node-index` values into `schema`. The + /// `schema.root` field is a structurally-required placeholder and is not the + /// semantic root of the agent type. + record agent-type { + type-name: string, + description: string, + source-language: string, + schema: schema-graph, + %constructor: agent-constructor, + methods: list, + dependencies: list, + mode: agent-mode, + http-mount: option, + snapshotting: snapshotting, + config: list, + } + + /// Associates an agent type with a component that implements it + record registered-agent-type { + agent-type: agent-type, + implemented-by: component-id + } + + /// Dependent agent type. All schema roots inside it resolve against its own + /// `schema`, not against the parent agent-type's graph. + record agent-dependency { + type-name: string, + description: option, + schema: schema-graph, + %constructor: agent-constructor, + methods: list, + } + + /// Ordered, named input parameters with per-field source annotation. + variant input-schema { + parameters(list), + } + + record named-field { + name: string, + source: field-source, + /// Index into the owning agent-type / dependency `schema` graph. + schema: type-node-index, + metadata: metadata-envelope, + } + + variant field-source { + user-supplied, + auto-injected(auto-injected-kind), + } + + enum auto-injected-kind { + principal, + } + + /// Output is either unit (no value) or a single value of the given type. + variant output-schema { + unit, + /// Index into the owning agent-type / dependency `schema` graph. + single(type-node-index), + } + + record agent-method { + name: string, + description: string, + http-endpoint: list, + prompt-hint: option, + input-schema: input-schema, + output-schema: output-schema, + read-only: option, + } + + record read-only-config { + cache-policy: cache-policy, + uses-principal: bool, + } + + variant cache-policy { + no-cache, + until-write, + ttl(duration), + } + + record http-mount-details { + path-prefix: list, + auth-details: option, + phantom-agent: bool, + cors-options: cors-options, + webhook-suffix: list, + } + + record cors-options { + allowed-patterns: list, + } + + record http-endpoint-details { + http-method: http-method, + path-suffix: list, + header-vars: list, + query-vars: list, + auth-details: option, + cors-options: cors-options, + } + + variant http-method { + get, + head, + post, + put, + delete, + connect, + options, + trace, + patch, + custom(string), + } + + variant path-segment { + literal(string), + system-variable(system-variable), + path-variable(path-variable), + // only allowed as the last segment + remaining-path-variable(path-variable) + } + + enum system-variable { + agent-type, + agent-version + } + + record path-variable { + variable-name: string, + } + + record header-variable { + header-name: string, + variable-name: string, + } + + record query-variable { + query-param-name: string, + variable-name: string, + } + + record auth-details { + required: bool, + } + + variant principal { + oidc(oidc-principal), + agent(agent-principal), + golem-user(golem-user-principal), + anonymous + } + + record oidc-principal { + sub: string, + issuer: string, + + email: option, + name: option, + email-verified: option, + given-name: option, + family-name: option, + picture: option, + preferred-username: option, + + claims: string, + } + + record agent-principal { + agent-id: agent-id, + } + + record golem-user-principal { + account-id: account-id + } + + record agent-constructor { + name: option, + description: string, + prompt-hint: option, + input-schema: input-schema, + } + + variant snapshotting { + disabled, + enabled(snapshotting-config) + } + + variant snapshotting-config { + default, // current default in the server + periodic(duration), + every-n-invocation(u16) + } + + enum agent-config-source { + local, + secret + } + + record agent-config-declaration { + source: agent-config-source, + path: list, + /// Index into the owning agent-type `schema` graph. + value-type: type-node-index, + } + + record typed-agent-config-value { + path: list, + value: typed-schema-value, + } + + /// Agent-level failures + variant agent-error { + invalid-input(string), + invalid-method(string), + invalid-type(string), + invalid-agent-id(string), + custom-error(typed-schema-value), + } +} diff --git a/sdks/go/wit/deps/golem-agent/guest.wit b/sdks/go/wit/deps/golem-agent/guest.wit new file mode 100644 index 0000000000..dbe97ff310 --- /dev/null +++ b/sdks/go/wit/deps/golem-agent/guest.wit @@ -0,0 +1,37 @@ +package golem:agent@2.0.0; + +interface guest { + use golem:core/types@2.0.0.{schema-value-tree}; + use common.{agent-error, agent-type, principal}; + + /// Initializes the agent of a given type with the given constructor parameters. + /// If called a second time, it fails. + /// + /// `input` is a value tree whose root encodes the constructor's parameter + /// list (one record field per declared `named-field`, in declaration order). + /// The guest interprets it against its own constructor `input-schema`. + initialize: async func(agent-type: string, input: schema-value-tree, principal: principal) -> result<_, agent-error>; + + /// Invokes an agent. If create was not called before, it fails. + /// + /// `input` is a value tree whose root encodes the method's parameter list. + /// The result is `none` when the method's `output-schema` is `unit`, and + /// `some(value)` for a `single` output. + invoke: async func(method-name: string, input: schema-value-tree, principal: principal) -> result, agent-error>; + + /// Gets the agent type. If create was not called before, it fails + get-definition: func() -> agent-type; + + /// Gets the agent types defined by this component + discover-agent-types: func() -> result, agent-error>; +} + +world agent-guest { + import golem:api/host@1.5.0; + import common; + export guest; +} + +world agent-host { + export host; +} diff --git a/sdks/go/wit/deps/golem-agent/host.wit b/sdks/go/wit/deps/golem-agent/host.wit new file mode 100644 index 0000000000..345fa12b02 --- /dev/null +++ b/sdks/go/wit/deps/golem-agent/host.wit @@ -0,0 +1,143 @@ +package golem:agent@2.0.0; + +interface host { + use golem:core/types@2.0.0.{component-id, uuid, promise-id, schema-graph, schema-value-tree, typed-schema-value}; + use wasi:clocks/system-clock@0.3.0.{instant as datetime}; + use common.{agent-error, agent-type, registered-agent-type, typed-agent-config-value}; + + /// Gets all the registered agent types + get-all-agent-types: func() -> list; + + /// Get a specific registered agent type by name + get-agent-type: func(agent-type-name: string) -> option; + + /// Constructs a string agent-id from the agent type and its constructor parameters + /// and an optional phantom ID. + /// + /// `input` is a value tree whose root encodes the constructor's parameter list. + make-agent-id: func(agent-type-name: string, input: schema-value-tree, phantom-id: option) -> result; + + /// Parses an agent-id (created by `make-agent-id`) into an agent type name and its constructor parameters + /// and an optional phantom ID. + /// + /// The constructor parameters are returned as a self-contained typed value + /// (graph + value tree) so the receiver can interpret them without an + /// external schema registry. + parse-agent-id: func(agent-id: string) -> result>, agent-error>; + + /// Creates a webhook that can be used to integrate with webhook driven apis. + /// When the created url is called with a post request, the provided promise-id is completed with the body of the post request. + /// Note the following behaviours: + /// * Only agents whoose agent types are _currently_ deployed via an http api are allowed to create a webhook. Calling this function while the agent + /// is not deployed via an http api will trap. + /// * Only the agent type that created the promise is allowed to create a webhook for it. Using this host function + /// from a different agent type will trap. + create-webhook: func(promise-id: promise-id) -> string; + + /// Possible failures of an RPC call + variant rpc-error { + /// Protocol level error + protocol-error(string), + /// Access denied + denied(string), + /// Target agent or function not found + not-found(string), + /// Internal error on the remote side + remote-internal-error(string), + /// The remote endpoint returned an agent-domain error + remote-agent-error(agent-error) + } + + /// Final identity allocated for one remote invocation. For an ephemeral + /// target, `agent-id` contains the generated one-shot phantom ID. + record invocation-metadata { + agent-id: string, + idempotency-key: string, + } + + /// Result of an awaited invocation together with its final identity. + record invocation-result-with-metadata { + metadata: invocation-metadata, + %result: option, + } + + /// Asynchronous invocation handle together with its final identity. + record async-invocation-with-metadata { + metadata: invocation-metadata, + %future: future-invoke-result, + } + + /// Receipt returned when an invocation has been scheduled. + record scheduled-invocation-receipt { + metadata: invocation-metadata, + } + + /// Receipt for a scheduled invocation that can still be cancelled. + record cancelable-scheduled-invocation-receipt { + metadata: invocation-metadata, + cancellation-token: cancellation-token, + } + + /// An RPC client for invoking remote agents + resource wasm-rpc { + /// Constructs the RPC client connecting to the given target agent. + /// + /// `constructor` is a value tree whose root encodes the target agent + /// constructor's parameter list. + constructor(agent-type-name: string, %constructor: schema-value-tree, phantom-id: option, agent-config: list); + + /// Invokes a remote method with the given parameters, and awaits the result. + /// + /// `input` encodes the method's parameter list. The returned result is + /// `none` for a `unit` output and `some(value)` for a `single` output. + invoke-and-await: func(method-name: string, input: schema-value-tree) -> result; + + /// Triggers the invocation of a remote method with the given parameters, + /// and returns its final identity immediately. + invoke: func(method-name: string, input: schema-value-tree) -> result; + + /// Invokes a remote method with the given parameters, and returns a `future-invoke-result` value which can + /// be polled for the result together with the final invocation identity. + /// + /// With this function it is possible to call multiple (different) agents simultaneously. + async-invoke-and-await: func(method-name: string, input: schema-value-tree) -> async-invocation-with-metadata; + + /// Schedules an invocation for later and returns its final identity. + schedule-invocation: func(scheduled-time: datetime, method-name: string, input: schema-value-tree) -> scheduled-invocation-receipt; + + /// Schedules an invocation for later and returns its final identity and + /// cancellation capability. Call cancel on the returned resource to + /// cancel the invocation before the scheduled time. + schedule-cancelable-invocation: func(scheduled-time: datetime, method-name: string, input: schema-value-tree) -> cancelable-scheduled-invocation-receipt; + } + + /// Represents an asynchronous invocation result + resource future-invoke-result { + /// Awaits the result of the invocation. + get: async func() -> result, rpc-error>; + /// Best-effort attempt to cancel the remote invocation by idempotency key. + /// If the invocation has already started or completed, this is a no-op. + cancel: func(); + } + + /// Cancellation token for scheduled invocations + resource cancellation-token { + /// Cancel the scheduled invocation + cancel: func(); + } + + /// Get the current value of the config key. + /// + /// The expected schema is a hint to the host what type of value is expected by the guest and can be used + /// by the host to automatically migrate config values to fit the expected schema. + /// + /// Only keys that are declared by the agent-type are allowed to be accessed. Trying + /// to access an undeclared key will trap, unless the expected type is an option. In that case + /// none is returned. + /// + /// Getting a local key will get values defined as part of the current + /// component revision + overrides declared during agent creation. + /// + /// Getting a shared key will get the current value of the key in the environment. + get-config-value: func(key: list, expected: schema-graph) -> schema-value-tree; +} diff --git a/sdks/go/wit/deps/golem-core-v2/golem-core-v2.wit b/sdks/go/wit/deps/golem-core-v2/golem-core-v2.wit new file mode 100644 index 0000000000..bb7dda191e --- /dev/null +++ b/sdks/go/wit/deps/golem-core-v2/golem-core-v2.wit @@ -0,0 +1,587 @@ +// Language-independent value and type model used by Golem agents and the +// platform's typed I/O surfaces. +// +// Recursive schema types and values are represented flat-with-indices because +// WIT does not support recursive types. The matching in-memory forms in each +// SDK (e.g., a recursive `SchemaType` / `SchemaValue` / `SchemaGraph` in Rust) +// convert to and from this flat form mechanically. +// +// Design notes: +// - Graph-with-root: a `schema-graph` owns a `defs` list of named type +// definitions, a flat `type-nodes` list, and a root index. +// `schema-type-node::ref-type` references entries in `defs` by index. A +// `schema-graph` is always self-contained — there is no implicit external +// registry that consumers must look up. +// - `quantity-value` is a fixed-point decimal `mantissa * 10^(-scale)` with +// a unit string; mantissa fits in `s64` and scale fits in `s32`. + +package golem:core@2.0.0; + +interface types { + // ============================================================ + // Carrier indices + // ============================================================ + + /// Index into a `schema-graph`'s `type-nodes` list. + type type-node-index = s32; + + /// Index into a `schema-value-tree`'s `value-nodes` list. + type value-node-index = s32; + + /// Index into a `schema-graph`'s `defs` list. + type def-index = s32; + + /// Stable, language-independent identifier for a named type definition. + /// Must be unique within the enclosing `schema-graph`. Conventional format + /// is a dot-separated namespace path (e.g., `"myapp.users.user"`). Each + /// SDK provides a default derivation rule (typically based on the local + /// language's type name); cross-language interop requires the same + /// `type-id` on every side, which users can pin via the SDK's `named` + /// attribute. + type type-id = string; + + // ============================================================ + // Common embedded value types + // ============================================================ + + record uuid { + high-bits: u64, + low-bits: u64, + } + + /// Parses a UUID from a string + parse-uuid: func(uuid: string) -> result; + + /// Converts a UUID to a string + uuid-to-string: func(uuid: uuid) -> string; + + record datetime { + /// Seconds since the Unix epoch (UTC). + seconds: s64, + /// Nanoseconds since `seconds`, in `[0, 1_000_000_000)`. + nanoseconds: u32, + } + + record environment-id { + uuid: uuid, + } + + // ============================================================ + // Platform identifiers + // ============================================================ + // + // Platform identifiers used by the schema-native surfaces. Keeping them + // here lets migrated interfaces depend on a single core version. + + /// Represents a Golem component + record component-id { + uuid: uuid, + } + + /// Represents a Golem agent + record agent-id { + /// Identifies the component the agent belongs to + component-id: component-id, + /// String representation of the agent ID (agent type and constructor parameters) + agent-id: string, + } + + /// Represents a Golem account + record account-id { + uuid: uuid, + } + + /// Represents a Golem permission card + record card-id { + uuid: uuid + } + + /// An index into the persistent log storing all performed operations of an agent + type oplog-index = u64; + + /// A promise ID is a value that can be passed to an external Golem API to + /// complete that promise from an arbitrary external source, while Golem + /// agents can await for this completion. + record promise-id { + agent-id: agent-id, + oplog-idx: oplog-index, + } + + // ============================================================ + // Capability resources + // ============================================================ + + /// An unforgeable capability granting the right to consume a named + /// resource. The handle is opaque: a guest can only obtain one from the + /// host (e.g. via `golem:quota`) and can never inspect or fabricate its + /// internal state. When carried in a `schema-value-tree` (see + /// `schema-value-node::quota-token-handle`) the handle is transferred by + /// ownership; the host converts it to/from its internal trusted + /// representation at the boundary. + resource quota-token; + + /// An unforgeable handle to sensitive material held by the runtime. The + /// handle is opaque to guests: components can pass it through schema values + /// and reveal it only through capability-gated host interfaces. + resource secret; + + // ============================================================ + // Schema graph (self-contained type carrier) + // ============================================================ + + /// A self-contained schema graph. Anywhere a schema travels with a value + /// (typed pair, oplog `custom` payload, REST/RPC envelope, public oplog + /// rendering), the payload owns its own `schema-graph` — there is no + /// implicit external registry that consumers must look up. + record schema-graph { + /// All schema-type nodes used in this graph. Reachable from `root` + /// directly (anonymous types) or transitively via `defs`. + type-nodes: list, + /// Named type definitions in this graph. Indices into this list are + /// the targets of `schema-type-node::ref-type`. Ordering is + /// deterministic (sorted by `id`). + defs: list, + /// Index into `type-nodes` of the root schema type. + root: type-node-index, + } + + /// A named type definition inside a `schema-graph`. + /// + /// The def itself does not carry metadata; metadata lives on the + /// referenced `schema-type-node` so there is one source of truth for + /// docs / aliases / examples / deprecation / role on each type. + record schema-type-def { + /// Stable identifier; unique within the enclosing graph. + id: type-id, + /// Optional human-readable qualified name (display only). + name: option, + /// Index into the enclosing graph's `type-nodes` for this def's body. + body: type-node-index, + } + + /// Typed metadata envelope. Holds non-validation, non-rendering-critical + /// information (docs, aliases, examples, deprecation, role). Per-scalar + /// validation constraints live on the relevant scalar's typed substructure, + /// not here. + record metadata-envelope { + doc: option, + aliases: list, + /// Canonical-encoded example values (JSON strings). Empty = no examples. + /// Kept as strings so metadata is self-contained on the type side and + /// does not have to cross-reference an accompanying value tree. + examples: list, + /// Deprecation message; `none` means not deprecated. + deprecated: option, + /// Optional role annotation tagging a type with a consumer-facing intent. + role: option, + } + + /// Open registry; unknown roles fall back to structural handling. + variant role { + /// `list>` whose elements are interchangeable modalities. + multimodal, + /// `variant { inline: text, url: url }` ergonomic unstructured-text wrapper. + unstructured-text, + /// `variant { inline: binary, url: url }` ergonomic unstructured-binary wrapper. + unstructured-binary, + /// Any other producer-defined role, preserved verbatim. + other(string), + } + + // ============================================================ + // Schema type + // ============================================================ + + /// One node in a `schema-graph`. Carries the type body and a per-node + /// metadata envelope (docs, aliases, examples, deprecation, role). + /// Recursive positions reference other nodes (or named definitions) by + /// index inside the body. + record schema-type-node { + body: schema-type-body, + metadata: metadata-envelope, + } + + /// The structural body of a `schema-type-node`. + /// + /// Closed sum types come in two shapes that differ by how the decoder + /// learns which branch a value belongs to: + /// + /// - `variant-type` is a **carried-tag** sum: the value explicitly + /// carries its case (`variant-value.case` index). Zero-inference + /// decoding. Natural mapping for language-level algebraic data types + /// (Rust `enum`, Scala `sealed trait`, WIT `variant`, etc.). + /// + /// - `union-type` is an **inferred-tag** sum: the value does not carry + /// its tag. Each branch declares a `discriminator-rule` (prefix / + /// suffix / contains / regex on string-shaped bodies, or + /// field-equals / field-absent on record-shaped bodies) and the + /// decoder picks the branch whose rule matches the raw value. + /// Natural mapping for inputs where the producer writes an unadorned + /// value (a URL whose scheme picks the handler, a JSON object whose + /// `"kind"` field picks the variant, an MCP content block whose + /// `"type"` field picks the part shape, …). + variant schema-type-body { + // --- Reference to a named definition in the same `schema-graph` --- + ref-type(def-index), + + // --- Primitives --- + bool-type, + s8-type(option), + s16-type(option), + s32-type(option), + s64-type(option), + u8-type(option), + u16-type(option), + u32-type(option), + u64-type(option), + f32-type(option), + f64-type(option), + char-type, + string-type, + + // --- Structural composites --- + record-type(list), + variant-type(list), + enum-type(list), + flags-type(list), + tuple-type(list), + list-type(type-node-index), + fixed-list-type(fixed-list-spec), + map-type(map-spec), + option-type(type-node-index), + result-type(result-spec), + + // --- Rich semantic types --- + text-type(text-restrictions), + binary-type(binary-restrictions), + path-type(path-spec), + url-type(url-restrictions), + datetime-type, + duration-type, + quantity-type(quantity-spec), + + // --- Discriminated union (closed, inferred-tag) --- + union-type(union-spec), + + // --- Capability nodes --- + secret-type(secret-spec), + quota-token-type(quota-token-spec), + + // --- WASI P3 stubs (parseable only; no semantics yet) --- + future-type(option), + stream-type(option), + } + + record named-field-type { + name: string, + body: type-node-index, + metadata: metadata-envelope, + } + + record variant-case-type { + name: string, + payload: option, + metadata: metadata-envelope, + } + + record fixed-list-spec { + element: type-node-index, + length: u32, + } + + /// Map key types are restricted to primitives. Enforced at schema + /// construction time, not by the WIT type itself. + record map-spec { + key: type-node-index, + value: type-node-index, + } + + record result-spec { + ok: option, + err: option, + } + + // --- Numeric restrictions --- + + /// A numeric bound usable across every numeric representation. Float bounds + /// carry canonical IEEE-754 `f64` bits (NaN/inf rejected, -0.0 normalized); + /// comparisons decode the bits to `f64` and compare numerically. + variant numeric-bound { + signed(s64), + unsigned(u64), + float-bits(u64), + } + + /// Inline numeric refinement. `none` on a numeric type means unconstrained + /// (the common case). The empty restriction set is never encoded as `some`: + /// producers normalize it to `none`, decoders normalize a decoded empty to + /// `none`. `unit` is schema/help metadata only. + record numeric-restrictions { + min: option, + max: option, + unit: option, + } + + // --- Text / Binary restrictions --- + + record text-restrictions { + /// Optional set of allowed BCP-47 language codes. `none` = unrestricted. + languages: option>, + min-length: option, + max-length: option, + regex: option, + } + + record binary-restrictions { + /// Optional set of allowed MIME types. `none` = unrestricted. + mime-types: option>, + min-bytes: option, + max-bytes: option, + } + + // --- Path --- + + enum path-direction { + input, + output, + in-out, + } + + enum path-kind { + file, + directory, + any, + } + + record path-spec { + direction: path-direction, + kind: path-kind, + allowed-mime-types: option>, + allowed-extensions: option>, + } + + // --- URL --- + + record url-restrictions { + allowed-schemes: option>, + allowed-hosts: option>, + } + + // --- Quantity --- + + /// Fixed-point decimal value with unit: numeric value = `mantissa * 10^(-scale)`. + /// `unit` is a free-form string at the value level; the schema's + /// `quantity-spec` constrains the accepted set. + record quantity-value { + mantissa: s64, + scale: s32, + unit: string, + } + + record quantity-spec { + /// Canonical base unit (e.g., `"kg"`, `"m"`, `"s"`, `"B"`). + base-unit: string, + /// Suffixes accepted on input and rendered on output (e.g., `["kg","g","mg"]`). + allowed-suffixes: list, + /// Optional inclusive range, expressed in canonical fixed-point form. + min: option, + max: option, + } + + // --- Discriminated union --- + // + // Inferred-tag sum. Each branch declares a rule that the decoder uses to + // identify values belonging to that branch from the raw underlying value. + // + // Rules enforced at schema-construction time: + // - branch `tag`s are unique within the union, + // - string-pattern discriminators (`prefix` / `suffix` / `contains` / + // `regex`) require a string-shaped branch body (`string-type`, + // `text-type`, `url-type`, `path-type`, or a `ref` resolving to one), + // - record-shaped discriminators (`field-equals` / `field-absent`) + // require a record-shaped branch body that declares the referenced + // field (with the matching literal type, if any), + // - the discriminator set must be unambiguous: no value matches more + // than one branch. Overlap is checked structurally where decidable + // (e.g., `prefix("a")` and `prefix("ab")` overlap) and best-effort + // for `regex`. + + record union-spec { + branches: list, + } + + record union-branch { + /// Logical branch name. Carried in `union-value.tag` after the + /// decoder resolves the branch; used by renderers, codegen, docs. + tag: string, + /// Branch body type. Any schema type compatible with the + /// discriminator rule (see schema-construction validation above). + body: type-node-index, + /// Rule the decoder uses to pick this branch from a raw value. + discriminator: discriminator-rule, + metadata: metadata-envelope, + } + + /// How the decoder identifies that a value belongs to a given union branch. + variant discriminator-rule { + /// String value starts with this prefix (e.g. `"ssh://"`). + prefix(string), + /// String value ends with this suffix (e.g. `".tar.gz"`). + suffix(string), + /// String value contains this substring. + contains(string), + /// String value matches this anchored regex. + regex(string), + /// Record-shaped value where the named field is present, and — if + /// `literal` is set — has the given literal string value. The common + /// JSON-discriminated-object case (`{"kind":"circle",…}`) is + /// `field-equals { field-name: "kind", literal: some("circle") }`. + field-equals(field-discriminator), + /// Record-shaped value where the named field is absent. + field-absent(string), + } + + record field-discriminator { + field-name: string, + /// Optional required literal value for the field. + literal: option, + } + + // --- Capability nodes --- + + record secret-spec { + /// Revealed payload type carried by this secret handle. + inner: type-node-index, + /// Optional categorisation (e.g., `"api-key"`, `"oauth-token"`). + category: option, + } + + record quota-token-spec { + /// Resource name this token covers (e.g., declared in the agent manifest). + /// `none` = any resource permitted. + resource-name: option, + } + + // ============================================================ + // Schema value (always paired with a schema-graph) + // ============================================================ + + /// A flat schema-value tree. Always travels paired with a `schema-graph` + /// (see `typed-schema-value`). Indices refer to entries in `value-nodes` + /// within this same tree. + /// + /// The value tree is structurally driven by the schema: record-value + /// payload order matches the schema's field order, variant-value carries a + /// case index, enum-value carries a case index, union-value carries the + /// discriminator's literal tag. The value side does not redundantly carry + /// field names, case names, or named-ref identifiers — those come from the + /// schema. + record schema-value-tree { + value-nodes: list, + root: value-node-index, + } + + variant schema-value-node { + // Primitives + bool-value(bool), + s8-value(s8), + s16-value(s16), + s32-value(s32), + s64-value(s64), + u8-value(u8), + u16-value(u16), + u32-value(u32), + u64-value(u64), + f32-value(f32), + f64-value(f64), + char-value(char), + string-value(string), + + // Structural composites + record-value(list), + variant-value(variant-value-payload), + enum-value(u32), + flags-value(list), + tuple-value(list), + list-value(list), + fixed-list-value(list), + map-value(list), + option-value(option), + result-value(result-value-payload), + + // Rich semantic + text-value(text-value-payload), + binary-value(binary-value-payload), + path-value(string), + url-value(string), + datetime-value(datetime), + duration-value(duration-value-payload), + quantity-value-node(quantity-value), + + // Discriminated union: tag is matched against schema branches. + union-value(union-value-payload), + + // Capability nodes + secret-value(own), + quota-token-handle(own), + + // WASI P3 stubs (parseable only in the schema; no constructible values). + } + + record variant-value-payload { + case: u32, + payload: option, + } + + record map-entry { + key: value-node-index, + value: value-node-index, + } + + /// Result payload: exactly one of `ok-value` / `err-value` is set. Each + /// inner option allows `result<_, _>` cases whose ok/err type is unit (no + /// payload). + variant result-value-payload { + ok-value(option), + err-value(option), + } + + record text-value-payload { + text: string, + /// BCP-47 language tag, when known. + language: option, + } + + record binary-value-payload { + bytes: list, + mime-type: option, + } + + /// Signed duration as total nanoseconds. + record duration-value-payload { + nanoseconds: s64, + } + + record union-value-payload { + /// Tag of the branch the decoder resolved, matching one of the + /// `union-spec::branches[*].tag` values. Carried so receivers do not + /// have to re-run discriminator rules to know which branch was + /// matched; encoders must ensure it agrees with the body. + tag: string, + /// Underlying value. Its shape matches the resolved branch's body + /// type and (by construction) satisfies the branch's discriminator + /// rule. + body: value-node-index, + } + + // ============================================================ + // Wire carriers + // ============================================================ + + /// A typed value: a self-contained schema graph paired with a value tree + /// built against that schema. + record typed-schema-value { + graph: schema-graph, + value: schema-value-tree, + } +} diff --git a/sdks/go/wit/deps/golem-durability/golem-durability.wit b/sdks/go/wit/deps/golem-durability/golem-durability.wit new file mode 100644 index 0000000000..c23c70ceae --- /dev/null +++ b/sdks/go/wit/deps/golem-durability/golem-durability.wit @@ -0,0 +1,85 @@ +package golem:durability@1.5.0; + +interface durability { + use golem:api/host@1.5.0.{persistence-level}; + use golem:api/oplog@1.5.0.{oplog-index, wrapped-function-type}; + use wasi:clocks/system-clock@0.3.0.{instant as datetime}; + use golem:core/types@2.0.0.{typed-schema-value}; + + type durable-function-type = wrapped-function-type; + + /// Represents the current durable execution state + record durable-execution-state { + /// If true, the executor is in live mode, side-effects should be performed and persisted. + /// If false, the executor is in replay mode, side-effects should be replayed from the persisted data. + is-live: bool, + /// The currently active persistence level + persistence-level: persistence-level, + } + + /// Represents the oplog entry version; this is for backward compatibility and most use cases should always use + /// (and expect) the latest version. + enum oplog-entry-version { + v1, + v2 + } + + /// Represents a persisted durable function invocation. The `response` field + /// contains a value and its schema graph together, making the user-defined payload observable by external tools. + record persisted-durable-function-invocation { + /// The timestamp of the invocation. + timestamp: datetime, + /// The invoked function's unique name + function-name: string, + /// Arbitrary structured value and schema graph describing the invocation's result + response: typed-schema-value, + /// Type of the durable function invocation + function-type: durable-function-type, + /// Oplog entry version + entry-version: oplog-entry-version + } + + /// Observes a function call (produces logs and metrics) + observe-function-call: func(iface: string, function: string); + + /// Marks the beginning of a durable function. + /// + /// There must be a corresponding call to `end-durable-function` after the function has + /// performed its work (it can be ended in a different context, for example after an async + /// pollable operation has been completed) + begin-durable-function: func(function-type: durable-function-type) -> oplog-index; + + /// Marks the end of a durable function + /// + /// This is a pair of `begin-durable-function` and should be called after the durable function + /// has performed and persisted or replayed its work. The `begin-index` should be the index + /// returned by `begin-durable-function`. + /// + /// Normally commit behavior is decided by the executor based on the `function-type`. However, in special + /// cases the `forced-commit` parameter can be used to force commit the oplog in an efficient way. + end-durable-function: func(function-type: durable-function-type, begin-index: oplog-index, forced-commit: bool); + + /// Gets the current durable execution state + current-durable-execution-state: func() -> durable-execution-state; + + /// Writes a record to the agent's oplog representing a durable function invocation + /// + /// The request and response are defined as schema-carrying values, which makes it + /// self-describing for observers of oplogs. + persist-durable-function-invocation: func( + function-name: string, + request: typed-schema-value, + response: typed-schema-value, + function-type: durable-function-type, + ); + + /// Reads the next persisted durable function invocation from the oplog during replay + read-persisted-durable-function-invocation: func() -> persisted-durable-function-invocation; + + // The p2 version of this interface had a `lazy-initialized-pollable` resource: a + // host-owned pollable that was ready while unattached (during replay) and could later + // be re-bound to a real pollable when execution went live. It has no p3 equivalent + // and none is needed: p3 `future`/`stream` handles are one-shot and guest-creatable, + // so durable stream wrappers express the replay-to-live transition by resolving + // replayed results immediately and directly awaiting the live source afterwards. +} diff --git a/sdks/go/wit/deps/golem-quota/types.wit b/sdks/go/wit/deps/golem-quota/types.wit new file mode 100644 index 0000000000..a6acaec556 --- /dev/null +++ b/sdks/go/wit/deps/golem-quota/types.wit @@ -0,0 +1,76 @@ +package golem:quota@1.5.0; + +/// Host interface for the Golem quota system. +/// +/// Agents use quota-tokens to declare intent to consume a named resource and to +/// reserve / commit actual usage. +/// +/// The `quota-token` capability itself is defined in `golem:core/types` so that +/// it can travel inside a `schema-value-tree` as an opaque, unforgeable handle. +/// This interface only exposes the operations that act on such a handle. +interface types { + use golem:core/types@2.0.0.{quota-token}; + + /// Error returned when a reservation cannot be satisfied because the + /// resource's enforcement policy is `reject`. + /// + /// The inner value is an optional estimate in nanoseconds of how long + /// the caller would need to wait for capacity (only available for + /// rate-limited resources). + record failed-reservation { + estimated-wait-nanos: option, + } + + /// A short-lived capability that represents a pending or committed + /// resource consumption. Drop without committing is equivalent to + /// committing zero usage. + resource reservation { + /// Commit actual usage, consuming the reservation. + /// + /// If `used` < reserved — unused capacity is returned to the pool. + /// If `used` > reserved — the excess is deducted from the token's + /// remaining allocation as "debt". + commit: static func(this: reservation, used: u64); + } + + /// Request a quota capability for the given resource. + /// - `resource-name` : the resource name (as declared in the manifest). + /// - `expected-use` : expected units per reservation; used to derive + /// credit rate and max-credit for fair scheduling. + new-token: func( + resource-name: string, + expected-use: u64, + ) -> quota-token; + + /// Reserve `amount` units from the token's local allocation. + /// + /// Blocks internally until capacity is available or the resource's + /// enforcement action fires. Returns a `reservation` handle that + /// must be committed (or dropped) to release unused capacity. + reserve: func( + token: borrow, + amount: u64, + ) -> result; + + /// Split off a child token with `child-expected-use` units from `token`. + /// + /// The parent's `expected-use` is reduced by `child-expected-use`. + /// Credits are divided proportionally between parent and child. + /// + /// Traps if `child-expected-use` exceeds the parent's current `expected-use`. + split: func( + token: borrow, + child-expected-use: u64, + ) -> quota-token; + + /// Merge `other` back into `token`. + /// + /// The two tokens must refer to the same resource (same resource-name + /// and environment). `other` is consumed. + /// + /// Traps if the tokens refer to different resources. + merge: func( + token: borrow, + other: quota-token, + ); +} diff --git a/sdks/go/wit/deps/golem-rdbms/ignite.wit b/sdks/go/wit/deps/golem-rdbms/ignite.wit new file mode 100644 index 0000000000..505988023d --- /dev/null +++ b/sdks/go/wit/deps/golem-rdbms/ignite.wit @@ -0,0 +1,81 @@ +// Copyright 2024-2025 Golem Cloud +// +// Licensed under the Golem Source License v1.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem:rdbms@1.5.0; + +interface ignite2 { + // ── Error ────────────────────────────────────────────────────────────────── + variant error { + connection-failure(string), + query-parameter-failure(string), + query-execution-failure(string), + query-response-failure(string), + other(string), + } + + // ── Value types (maps 1-to-1 onto ignite_client::IgniteValue) ───────────── + variant db-value { + db-null, + db-boolean(bool), + db-byte(s8), + db-short(s16), + db-int(s32), + db-long(s64), + db-float(f32), + db-double(f64), + /// 16-bit Unicode code unit (Java char). + db-char(u16), + db-string(string), + db-uuid(tuple), + /// Milliseconds since Unix epoch (UTC). + db-date(s64), + /// (milliseconds since epoch, sub-millisecond nanoseconds 0..999_999). + db-timestamp(tuple), + /// Nanoseconds since midnight. + db-time(s64), + db-decimal(string), + db-byte-array(list), + } + + // ── Metadata ─────────────────────────────────────────────────────────────── + record db-column { ordinal: u64, name: string } + record db-row { values: list } + record db-result { columns: list, rows: list } + + // ── Resources ────────────────────────────────────────────────────────────── + resource db-result-stream { + get-columns: func() -> result, error>; + get-next: func() -> result>, error>; + } + + resource db-transaction { + query: func(statement: string, params: list) -> result; + query-stream: func(statement: string, params: list) -> result; + execute: func(statement: string, params: list) -> result; + commit: func() -> result<_, error>; + rollback: func() -> result<_, error>; + } + + resource db-connection { + /// Open a connection to an Apache Ignite 2.x node. + /// + /// Address format: `ignite://[user:pass@]host:port[?pool_size=N&tls=true]` + /// Default port: 10800. + open: static func(address: string) -> result; + query: func(statement: string, params: list) -> result; + query-stream: func(statement: string, params: list) -> result; + execute: func(statement: string, params: list) -> result; + begin-transaction: func() -> result; + } +} diff --git a/sdks/go/wit/deps/golem-rdbms/mysql.wit b/sdks/go/wit/deps/golem-rdbms/mysql.wit new file mode 100644 index 0000000000..49247006d9 --- /dev/null +++ b/sdks/go/wit/deps/golem-rdbms/mysql.wit @@ -0,0 +1,138 @@ +package golem:rdbms@1.5.0; + +interface mysql { + use types.{date, time, timestamp}; + + variant error { + connection-failure(string), + query-parameter-failure(string), + query-execution-failure(string), + query-response-failure(string), + other(string) + } + + variant db-column-type { + boolean, + tinyint, + smallint, + mediumint, + int, + bigint, + tinyint-unsigned, + smallint-unsigned, + mediumint-unsigned, + int-unsigned, + bigint-unsigned, + float, + double, + decimal, + date, + datetime, + timestamp, + time, + year, + fixchar, + varchar, + tinytext, + text, + mediumtext, + longtext, + binary, + varbinary, + tinyblob, + blob, + mediumblob, + longblob, + enumeration, + set, + bit, + json + } + + record db-column { + ordinal: u64, + name: string, + db-type: db-column-type, + db-type-name: string + } + + /// Value descriptor for a single database value + variant db-value { + boolean(bool), + tinyint(s8), + smallint(s16), + mediumint(s32), + int(s32), + bigint(s64), + tinyint-unsigned(u8), + smallint-unsigned(u16), + mediumint-unsigned(u32), + int-unsigned(u32), + bigint-unsigned(u64), + float(f32), + double(f64), + decimal(string), + date(date), + datetime(timestamp), + timestamp(timestamp), + time(time), + year(u16), + fixchar(string), + varchar(string), + tinytext(string), + text(string), + mediumtext(string), + longtext(string), + binary(list), + varbinary(list), + tinyblob(list), + blob(list), + mediumblob(list), + longblob(list), + enumeration(string), + set(string), + bit(list), + json(string), + null + } + + /// A single row of values + record db-row { + values: list + } + + record db-result { + columns: list, + rows: list + } + + /// A potentially very large and lazy stream of rows: + resource db-result-stream { + get-columns: func() -> list; + get-next: func() -> option>; + } + + resource db-connection { + open: static func(address: string) -> result; + + query: func(statement: string, params: list) -> result; + + query-stream: func(statement: string, params: list) -> result; + + execute: func(statement: string, params: list) -> result; + + begin-transaction: func() -> result; + } + + resource db-transaction { + query: func(statement: string, params: list) -> result; + + query-stream: func(statement: string, params: list) -> result; + + execute: func(statement: string, params: list) -> result; + + commit: func() -> result<_, error>; + + rollback: func() -> result<_, error>; + } +} diff --git a/sdks/go/wit/deps/golem-rdbms/postgres.wit b/sdks/go/wit/deps/golem-rdbms/postgres.wit new file mode 100644 index 0000000000..b68b7ab148 --- /dev/null +++ b/sdks/go/wit/deps/golem-rdbms/postgres.wit @@ -0,0 +1,293 @@ +package golem:rdbms@1.5.0; + +interface postgres { + use types.{date, time, timetz, timestamp, timestamptz, uuid, ip-address, mac-address}; + + variant error { + connection-failure(string), + query-parameter-failure(string), + query-execution-failure(string), + query-response-failure(string), + other(string) + } + + record interval { + months: s32, + days: s32, + microseconds: s64 + } + + variant int4bound { + included(s32), + excluded(s32), + unbounded + } + + variant int8bound { + included(s64), + excluded(s64), + unbounded + } + + variant numbound { + included(string), + excluded(string), + unbounded + } + + variant tsbound { + included(timestamp), + excluded(timestamp), + unbounded + } + + variant tstzbound { + included(timestamptz), + excluded(timestamptz), + unbounded + } + + variant datebound { + included(date), + excluded(date), + unbounded + } + + record int4range { + start: int4bound, + end: int4bound + } + + record int8range { + start: int8bound, + end: int8bound + } + + record numrange { + start: numbound, + end: numbound + } + + record tsrange { + start: tsbound, + end: tsbound + } + + record tstzrange { + start: tstzbound, + end: tstzbound + } + + record daterange { + start: datebound, + end: datebound + } + + record enumeration-type { + name: string + } + + record enumeration { + name: string, + value: string + } + + record composite-type { + name: string, + attributes: list> + } + + record composite { + name: string, + values: list + } + + record domain-type { + name: string, + base-type: lazy-db-column-type + } + + record domain { + name: string, + value: lazy-db-value + } + + record range-type { + name: string, + base-type: lazy-db-column-type + } + + variant value-bound { + included(lazy-db-value), + excluded(lazy-db-value), + unbounded + } + + record values-range { + start: value-bound, + end: value-bound + } + + record range { + name: string, + value: values-range + } + + record sparse-vec { + dim: s32, + indices: list, + values: list + } + + variant db-column-type { + character, + int2, + int4, + int8, + float4, + float8, + numeric, + boolean, + text, + varchar, + bpchar, + timestamp, + timestamptz, + date, + time, + timetz, + interval, + bytea, + uuid, + xml, + json, + jsonb, + jsonpath, + inet, + cidr, + macaddr, + bit, + varbit, + int4range, + int8range, + numrange, + tsrange, + tstzrange, + daterange, + money, + oid, + enumeration(enumeration-type), + composite(composite-type), + domain(domain-type), + array(lazy-db-column-type), + range(range-type), + vector, + halfvec, + sparsevec + } + + variant db-value { + character(s8), + int2(s16), + int4(s32), + int8(s64), + float4(f32), + float8(f64), + numeric(string), + boolean(bool), + text(string), + varchar(string), + bpchar(string), + timestamp(timestamp), + timestamptz(timestamptz), + date(date), + time(time), + timetz(timetz), + interval(interval), + bytea(list), + json(string), + jsonb(string), + jsonpath(string), + xml(string), + uuid(uuid), + inet(ip-address), + cidr(ip-address), + macaddr(mac-address), + bit(list), + varbit(list), + int4range(int4range), + int8range(int8range), + numrange(numrange), + tsrange(tsrange), + tstzrange(tstzrange), + daterange(daterange), + money(s64), + oid(u32), + enumeration(enumeration), + composite(composite), + domain(domain), + array(list), + range(range), + null, + vector(list), + halfvec(list), + sparsevec(sparse-vec) + } + + resource lazy-db-value { + constructor(value: db-value); + get: func() -> db-value; + } + + resource lazy-db-column-type { + constructor(value: db-column-type); + get: func() -> db-column-type; + } + + record db-column { + ordinal: u64, + name: string, + db-type: db-column-type, + db-type-name: string + } + + /// A single row of values + record db-row { + values: list + } + + record db-result { + columns: list, + rows: list + } + + /// A potentially very large and lazy stream of rows: + resource db-result-stream { + get-columns: func() -> list; + get-next: func() -> option>; + } + + resource db-connection { + open: static func(address: string) -> result; + + query: func(statement: string, params: list) -> result; + + query-stream: func(statement: string, params: list) -> result; + + execute: func(statement: string, params: list) -> result; + + begin-transaction: func() -> result; + } + + resource db-transaction { + query: func(statement: string, params: list) -> result; + + query-stream: func(statement: string, params: list) -> result; + + execute: func(statement: string, params: list) -> result; + + commit: func() -> result<_, error>; + + rollback: func() -> result<_, error>; + } +} diff --git a/sdks/go/wit/deps/golem-rdbms/types.wit b/sdks/go/wit/deps/golem-rdbms/types.wit new file mode 100644 index 0000000000..36af8b1fde --- /dev/null +++ b/sdks/go/wit/deps/golem-rdbms/types.wit @@ -0,0 +1,47 @@ +package golem:rdbms@1.5.0; + +interface types { + + record uuid { + high-bits: u64, + low-bits: u64 + } + + variant ip-address { + ipv4(tuple), + ipv6(tuple), + } + + record mac-address { + octets: tuple + } + + record date { + year: s32, + month: u8, + day: u8 + } + + record time { + hour: u8, + minute: u8, + second: u8, + nanosecond: u32 + } + + record timestamp { + date: date, + time: time + } + + record timestamptz { + timestamp: timestamp, + offset: s32 + } + + record timetz { + time: time, + offset: s32 + } + +} diff --git a/sdks/go/wit/deps/golem-rdbms/world.wit b/sdks/go/wit/deps/golem-rdbms/world.wit new file mode 100644 index 0000000000..f8702cbf16 --- /dev/null +++ b/sdks/go/wit/deps/golem-rdbms/world.wit @@ -0,0 +1,7 @@ +package golem:rdbms@1.5.0; + +world imports { + import postgres; + import mysql; + import ignite2; +} diff --git a/sdks/go/wit/deps/golem-secrets/reveal.wit b/sdks/go/wit/deps/golem-secrets/reveal.wit new file mode 100644 index 0000000000..76a81735f6 --- /dev/null +++ b/sdks/go/wit/deps/golem-secrets/reveal.wit @@ -0,0 +1,31 @@ +package golem:secrets@0.1.0; + +/// Capability-gated escape hatch: convert a secret resource back +/// to plaintext. The capability is the import — components that +/// do not import this interface cannot reveal secrets. v1 grants +/// reveal at the import-or-not level only; v2 introduces +/// per-(agent, tool, tool-middleware) manifest binding axes that narrow +/// reveal even when imported (§5.6). +/// +/// Every successful reveal is recorded in the calling agent's +/// oplog as `(calling-agent, secret-id, timestamp)`. The +/// plaintext bytes are not part of the audit record. +/// +/// Tools that consume secrets at the wire boundary (HTTP +/// authorization headers, signing operations, encryption) SHOULD +/// prefer host-mediated substitution over reveal — host +/// capabilities accepting `borrow` directly let the +/// runtime substitute plaintext at the syscall boundary, never +/// crossing into guest linear memory at all. Reveal is the +/// fallback for genuinely custom protocols the host doesn't +/// natively support; its use is loud by design. +interface reveal { + use types.{secret-error}; + use golem:core/types@2.0.0.{secret, schema-graph, schema-value-tree}; + + /// Unpack a secret resource to its inner typed value. `expected` is the + /// guest's inner-type graph; the host validates it against the secret's + /// pinned inner type and returns the stored value as a schema-value-tree. + reveal: func(s: borrow, expected: schema-graph) + -> result; +} diff --git a/sdks/go/wit/deps/golem-secrets/types.wit b/sdks/go/wit/deps/golem-secrets/types.wit new file mode 100644 index 0000000000..1e10ce9e10 --- /dev/null +++ b/sdks/go/wit/deps/golem-secrets/types.wit @@ -0,0 +1,73 @@ +package golem:secrets@0.1.0; + +/// The secret resource, plus the metadata records other interfaces +/// reference. Components that only need to *receive and pass* +/// secrets — most tools, audit middleware, MCP-import bridges — +/// import only this interface. +interface types { + use wasi:clocks/system-clock@0.3.0.{instant as datetime}; + use golem:core/types@2.0.0.{secret}; + + /// The opaque handle to a sensitive value is defined in + /// `golem:core/types` so it can travel inside a `schema-value-tree` as an + /// unforgeable owned handle. This interface exposes only safe metadata + /// operations over that handle. + /// + /// Resource handles are scoped to a component instance's + /// resource table. When a secret is passed across a component + /// boundary (e.g., agent → tool via `tool-rpc.invoke`'s + /// `value-tree`), the runtime issues a fresh handle in the + /// receiving instance's table that points at the same + /// host-side state. The wire form carries only the + /// `secret-id`, never plaintext. + + /// Stable, opaque identifier scoped to the deployment. + record secret-id { + bytes: list, + } + + record secret-metadata { + /// Config-key path the secret resolved from, when applicable. + /// `none` for secrets returned in tool-result position. + config-key: option>, + /// Pinned version captured at resolve-time. `none` for + /// dynamic-origin secrets (e.g. returned from a tool that + /// didn't itself have a versioned source). + version: option, + /// Time of resolution. + resolved-at: datetime, + /// The semantic category declared on the secret's schema type, when + /// known. Mirrors `secret-spec.category` in `golem:core/types`. + category: option, + } + + /// A secret-store-assigned, monotonic version identifier. The + /// secret-store backend defines the ordering and the format; + /// the type-tree treats it as opaque. + record secret-version { + bytes: list, + } + + /// Stable opaque identifier. Comparing equal across two `secret` handles + /// means "same secret material, same version" — useful for caching and audit + /// correlation. Safe to log, oplog, and emit in traces. + id: func(s: borrow) -> secret-id; + + /// Immutable metadata captured at resolve-time. Includes the config-key + /// path, the resolved version, and the resolution timestamp. No plaintext. + metadata: func(s: borrow) -> secret-metadata; + + /// Errors common to operations on secrets. + variant secret-error { + /// The secret was bound but its current resolution failed + /// (e.g., the secret-store entry was deleted between binding + /// and reveal, or the network to the store is partitioned). + unavailable(string), + /// The secret was version-pinned and the pinned version no + /// longer exists (administratively destroyed). + version-not-found(secret-version), + /// Internal runtime error (carries an opaque message; never + /// includes plaintext). + internal(string), + } +} diff --git a/sdks/go/wit/deps/golem-tool/common.wit b/sdks/go/wit/deps/golem-tool/common.wit new file mode 100644 index 0000000000..7e3dba1d14 --- /dev/null +++ b/sdks/go/wit/deps/golem-tool/common.wit @@ -0,0 +1,379 @@ +package golem:tool@0.1.0; + +/// Data model for Golem tool metadata. +/// +/// A "tool" is a callable unit declared from a single piece of +/// metadata. From that metadata the SDKs project two delivered +/// surfaces — typed function signatures in TypeScript / Rust / +/// Python / Scala / MoonBit for programmatic invocation, and +/// help-text rendering for any node in the command tree — and the +/// same metadata is sufficient to drive a future full-CLI +/// projection (parseable args, shell completions, exit codes, +/// terminal-runnable as a Unix utility) without further authoring. +/// The CLI projection is a future possibility enabled by the model; +/// it is not part of the current specification's deliverable. +/// +/// The model is CLI-native: commands, subcommands, options, flags, and +/// positionals are primary — not a generic data schema with CLI mappings +/// layered on top. Constraint-by-construction is preferred over runtime +/// validation: variadic-only-at-tail is structural; mutual exclusion is +/// expressed by subcommand choice or by an explicit `mutex-groups` +/// constraint; co-occurrence is structural via sub-records or via +/// `all-or-none`. +/// +/// Types and values are not modeled by this package: every input/output +/// type and every metadata-time or runtime value is expressed with the +/// shared `golem:core/types@2.0.0` schema model. A tool owns a single +/// `schema-graph` type-node pool (the `tool.schema` field); command bodies +/// reference entries in it by `type-node-index`, exactly the same way the +/// agent model (`golem:agent/common`) references its per-agent +/// `schema-graph`. Metadata-time values (option/positional defaults, the +/// literal side of `value-is` constraint refs) are `schema-value-tree`s +/// interpreted against the referenced type node in `tool.schema`; runtime +/// invocation inputs, results, and custom-error payloads are self-contained +/// `typed-schema-value`s. +/// +/// The remaining tool-specific recursion site is the command tree: a +/// flattened command hierarchy with the root at index 0 and children +/// referenced by `command-index`. +/// +/// Construction invariants (validated by the producer; the WIT shape +/// alone does not enforce them): +/// +/// • All identifier-like strings (command names, option/flag long +/// names, positional names, error names, formatter names) match +/// `^[a-z][a-z0-9]*(-[a-z0-9]+)*$`. +/// • Subcommand names + aliases are pairwise unique among siblings. +/// • Within a `command-body`: option long-names + flag long-names + +/// positional names + aliases + short forms are pairwise unique, +/// AND unique against globals inherited from any ancestor command. +/// • Constraint `ref` names resolve against body-declared options / +/// flags / positionals AND globals inherited from any ancestor. +/// • For `ref::value-is(name, lit)`, the literal must be a valid value +/// for the declared type node of `name` in `tool.schema`. +/// • `default-formatter` resolves to a name in `formatters`. +/// • `tail-positional`: if `verbatim` is true, `separator` must be +/// `some`; `separator` with `min = 0` is legal (the separator alone, +/// no items, is valid). +/// • A `positional` / `option` / `result` / `error` `type-node-index` +/// resolves to a node in `tool.schema`. +/// • A `repeatable-list` option's `default`, if present, is a `list` +/// whose elements are values of the `repeatable-list-shape.item-type` +/// node. A `repeatable-map` option's `default`, if present, is a `map` +/// value of the `repeatable-map-shape.map-type` node. +/// • A `value-is` ref naming a `repeatable-list` option, tail positional, +/// or otherwise list-shaped target means "any occurrence / element +/// equals this literal"; the literal is a value of the element type. For +/// a `repeatable-map` option the literal is a value of the map's value +/// type (any entry's value equals this literal). +/// • The tool's identity is its root command name +/// (`commands.nodes[0].name`); `get-tool(name)` and +/// `guest.invoke(tool-name, …)` match against it. `commands.nodes` +/// is always non-empty. +/// +/// Capability scoping (WASI preopens, env masking, outbound-socket +/// filters, subprocess-exec capability, and `golem:agent/host`'s +/// `get-config-value` resolution) is performed by the host by inspecting +/// the component's WIT imports — what a component *can* do is already +/// declared structurally by which interfaces it imports — not by reading +/// a declarative metadata record. +interface common { + use golem:core/types@2.0.0.{schema-graph, type-node-index, schema-value-tree, + typed-schema-value}; + + // Top level + record tool { + version: string, + commands: command-tree, + /// Self-contained type-node pool holding every type referenced from + /// this tool's commands. Command bodies reference entries by + /// `type-node-index`. `schema.root` is a structurally-required + /// placeholder and is not the semantic root of the tool (mirrors + /// `golem:agent/common`'s `agent-type.schema`). + schema: schema-graph, + } + + // Command tree + type command-index = s32; + + record command-tree { + /// Always non-empty; the root command is at index 0. + nodes: list, + } + + /// A command may dispatch to subcommands, run its own body, or both. + /// Globals declared here apply to this command's own body and to + /// every descendant subcommand body (recursive globals — "this level + /// and downward"). + record command-node { + name: string, + aliases: list, + doc: doc, + globals: globals, + subcommands: list, + body: option, + } + + record globals { + options: list, + %flags: list, + } + + record command-body { + positionals: positionals, + options: list, + %flags: list, + constraints: list, + stdin: option, + stdout: option, + %result: option, + errors: list, + annotations: option, + } + + /// Behavioral hints surfaced to MCP and other LLM-facing + /// surfaces. All four follow the MCP convention. When absent + /// the surface treats them as untrusted defaults + /// (`destructive: true`, `open-world: true`, `read-only: false`, + /// `idempotent: false`), per MCP guidance. + record command-annotations { + /// Tool performs no destructive updates; safe to call freely. + read-only: bool, + /// Tool may delete or overwrite (default true per MCP semantics). + destructive: bool, + /// Repeated calls with the same input have the same effect. + idempotent: bool, + /// Tool reaches outside the host's controlled environment + /// (network calls, external APIs, the open world). + open-world: bool, + } + + // Positionals (variadic only at the tail, structurally) + record positionals { + fixed: list, + tail: option, + } + + record positional { + name: string, + doc: doc, + value-name: option, + /// Index into `tool.schema`. + %type: type-node-index, + /// Default value, interpreted against `%type` in `tool.schema`. + default: option, + required: bool, + /// If true, the positional's value may be read from standard input + /// (e.g. grep's trailing `files` accepting piped input). + accepts-stdio: bool, + } + + record tail-positional { + name: string, + doc: doc, + value-name: option, + /// Index into `tool.schema`. + item-type: type-node-index, + min: u32, + max: option, + /// Token required before tail items (e.g. "--" for `git log -- `). + separator: option, + /// If true, tokens after `separator` are not flag-parsed (for + /// `kubectl exec -- CMD ARGS...`). + verbatim: bool, + /// If true, the tail items may be read from standard input + /// (e.g. grep's trailing `files` accepting piped input). + accepts-stdio: bool, + } + + // Options and flags + record option-spec { + long: string, + short: option, + aliases: list, + doc: doc, + value-name: option, + shape: option-shape, + /// Default value, interpreted against the option's type node in + /// `tool.schema`. + default: option, + required: bool, + env-var: option, + } + + variant option-shape { + /// Required value: --opt VALUE or --opt=VALUE. Index into `tool.schema`. + scalar(type-node-index), + /// Bare presence collapses to `default`; with value parses normally + /// (--decorate, --signed[=mode], --force-with-lease[=ref]). Index into + /// `tool.schema`. + optional-scalar(type-node-index), + /// Repeatable scalar option (`-e a -e b`); the collected value is a + /// `list` of the element type. + repeatable-list(repeatable-list-shape), + /// Repeatable key-value option (`-c a=1 -c b=2`); the collected value is a + /// `golem:core` `map` node, never a `list`. + repeatable-map(repeatable-map-shape), + } + + record repeatable-list-shape { + repetition: repetition, + /// Index into `tool.schema`; the element type of the collected `list`. + item-type: type-node-index, + } + + record repeatable-map-shape { + repetition: repetition, + /// Index into `tool.schema`; a `golem:core` `map` (key + value) node. The + /// collected value is this map. + map-type: type-node-index, + /// What happens when the same key is supplied more than once. + duplicate-key-policy: duplicate-key-policy, + } + + /// Resolution policy for a repeated key in a `repeatable-map` option. + enum duplicate-key-policy { + /// A repeated key is a usage error. + reject, + /// A repeated key takes the last supplied value. + last-wins, + } + + variant repetition { + /// --inc a --inc b + repeated, + /// --inc=a,b + delimited(char), + /// Both surface forms accepted. + either(char), + } + + record flag-spec { + long: string, + short: option, + aliases: list, + doc: doc, + shape: flag-shape, + env-var: option, + } + + variant flag-shape { + bool-flag(bool-flag-shape), + /// Counted flag (-vvv); optional max count. + count-flag(option), + } + + record bool-flag-shape { + default: bool, + /// If true, --no- is auto-synthesized. + negatable: bool, + } + + // Constraints + variant ref { + present(string), + value-is(value-is-ref), + } + + record value-is-ref { + name: string, + /// Literal value, interpreted against the declared type node of `name` + /// in `tool.schema`. + value: schema-value-tree, + } + + variant constraint { + requires-all(list), + all-or-none(list), + requires-any(list), + mutex-groups(list), + implies(implies-c), + forbids(forbids-c), + } + + record ref-group { + refs: list, + } + + record implies-c { + lhs-quant: quantifier, + lhs: list, + rhs-quant: quantifier, + rhs: list, + } + + record forbids-c { + lhs-quant: quantifier, + lhs: list, + rhs: list, + } + + enum quantifier { all, any } + + // Streams, structured results, errors + record stream-spec { + doc: doc, + mime: list, + required: bool, + } + + record result-spec { + /// Index into `tool.schema`. + %type: type-node-index, + doc: doc, + formatters: list, + default-formatter: string, + } + + record formatter { + name: string, + doc: doc, + } + + record error-case { + name: string, + doc: doc, + kind: error-kind, + exit-code: u8, + /// Index into `tool.schema`. + payload: option, + } + + enum error-kind { usage-error, runtime-error } + + // Documentation, examples + record doc { + summary: string, + description: string, + examples: list, + } + + record example { + title: string, + body: string, + } + + // Invocation contract — shared between guest and host + variant tool-error { + invalid-tool-name(string), + invalid-command-path(list), + invalid-input(string), + constraint-violation(string), + /// Returned `invocation-result` does not match the body's + /// declared `result-spec` (e.g., the returned value's root type + /// does not match the body's declared result schema; see §6.1 + /// transparency invariant). + invalid-result(string), + /// Tool-defined failure. Mirrors `golem:agent/common`'s + /// `agent-error::custom-error`: the payload is a self-contained + /// `typed-schema-value` carrying the error value. Producers SHOULD + /// shape it so its root type matches one of the body's declared + /// `error-case` payload types. + custom-error(typed-schema-value), + } + + record invocation-result { + %result: option, + stdout: option>, + } +} diff --git a/sdks/go/wit/deps/golem-tool/guest.wit b/sdks/go/wit/deps/golem-tool/guest.wit new file mode 100644 index 0000000000..5de7d91af6 --- /dev/null +++ b/sdks/go/wit/deps/golem-tool/guest.wit @@ -0,0 +1,58 @@ +package golem:tool@0.1.0; + +/// Interface exported by a component that provides tools. The component +/// declares which tools it exposes, supplies their metadata, and accepts +/// invocations against a chosen leaf command of any tool. +/// +/// Tools are stateless from the host's perspective: each invocation is +/// independent. State accumulated by the underlying agent (file-system +/// writes, config-store updates, etc.) persists per the agent's normal +/// rules and is independent of the tool calling convention. +interface guest { + use common.{tool, tool-error, invocation-result}; + use golem:core/types@2.0.0.{typed-schema-value}; + use golem:agent/common@2.0.0.{principal}; + + /// Enumerate the tools this component exposes. The returned metadata + /// is complete (full command tree and schema graph). + discover-tools: func() -> result, tool-error>; + + /// Look up a single tool by name. + get-tool: func(name: string) -> result; + + /// Invoke a command of a tool. + /// + /// `command-path` selects the command body to execute. An empty list + /// targets the root command's body; non-empty lists walk the + /// `subcommands` field, each segment matching a `command-node.name` + /// or alias. + /// + /// `input` is a self-contained `typed-schema-value` whose root must + /// structurally match the selected body's input schema — a record with + /// one field per positional, option, flag, and inherited global declared + /// on or above the body, each field typed by the matching type node in + /// the body's schema. + /// + /// `stdin` is supplied when the selected body declared a stdin + /// `stream-spec`. The callee consumes the stream for the duration of the + /// call; dropping its reader closes further consumption. + /// + /// `principal` carries the caller's authenticated identity for + /// authorization and audit, identical in semantics to the parameter + /// of the same name in `golem:agent/guest.invoke`. + invoke: async func( + tool-name: string, + command-path: list, + input: typed-schema-value, + stdin: option>, + principal: principal, + ) -> result; +} + +world tool-guest { + import golem:api/host@1.5.0; + import golem:agent/host@2.0.0; + import host; + import common; + export guest; +} diff --git a/sdks/go/wit/deps/golem-tool/host.wit b/sdks/go/wit/deps/golem-tool/host.wit new file mode 100644 index 0000000000..961b51831c --- /dev/null +++ b/sdks/go/wit/deps/golem-tool/host.wit @@ -0,0 +1,85 @@ +package golem:tool@0.1.0; + +/// Interface the runtime exposes to agents and tools for discovering and +/// invoking ambient tools — tools registered by other components in the +/// same Golem environment. +/// +/// Mirrors the structure of `golem:agent/host`, but keyed on tool name +/// (rather than agent-id), and without the agent-instance constructor +/// step (tools are stateless invocables). +interface host { + use common.{tool, tool-error, invocation-result}; + use golem:core/types@2.0.0.{typed-schema-value, component-id}; + + /// A tool registered in the environment, addressable by name from + /// any agent or other tool. `definition` carries the full metadata; + /// `implemented-by` identifies the component that registers the + /// tool with the runtime — a Golem component exporting + /// `golem:tool/guest` for native tools, the runtime-internal + /// MCP-import bridge component for tools projected from + /// `mcp.imports` (§5.7.2), or the runtime itself (a synthesized + /// component-id) for host-implemented privileged tools (§4.6). + record registered-tool { + definition: tool, + implemented-by: component-id, + } + + /// Returns every tool **the calling agent has access to** in + /// the current environment, per the manifest's per-env and + /// per-agent binding rules (§5.6 / §6.4.3). The set returned + /// is exactly the set the calling agent could `tool-rpc.invoke` + /// against; tools the calling agent has no binding for are + /// excluded. Mirrors the *function shape* of + /// `golem:agent/host`'s `get-all-agent-types`, with the + /// addition of per-caller access filtering. Order is + /// unspecified; callers that + /// want a stable ordering should sort by + /// `definition.commands.nodes[0].name`. + get-all-tools: func() -> list; + + /// Returns the registered tool with the given name iff the + /// calling agent has access to it (per the same per-env and + /// per-agent binding rules as `get-all-tools`). Returns `none` + /// either if the tool is not registered or if the calling agent + /// has no binding for it; the two cases are not distinguished. + get-tool: func(name: string) -> option; + + variant rpc-error { + protocol-error(string), + denied(string), + not-found(string), + remote-internal-error(string), + remote-tool-error(tool-error), + } + + resource tool-rpc { + constructor(tool-name: string); + + invoke-and-await: async func( + command-path: list, + input: typed-schema-value, + stdin: option>, + ) -> result; + + invoke: func( + command-path: list, + input: typed-schema-value, + stdin: option>, + ) -> result<_, rpc-error>; + + async-invoke-and-await: func( + command-path: list, + input: typed-schema-value, + stdin: option>, + ) -> future-invoke-result; + } + + resource future-invoke-result { + get: async func() -> result; + cancel: func(); + } +} + +world tool-host { + export host; +} diff --git a/sdks/go/wit/deps/golem-websocket/websocket.wit b/sdks/go/wit/deps/golem-websocket/websocket.wit new file mode 100644 index 0000000000..b1ea481ef4 --- /dev/null +++ b/sdks/go/wit/deps/golem-websocket/websocket.wit @@ -0,0 +1,46 @@ +package golem:websocket@1.5.0; + +interface client { + variant error { + connection-failure(string), + send-failure(string), + receive-failure(string), + protocol-error(string), + closed(option), + other(string), + } + + record close-info { + code: u16, + reason: string, + } + + /// A WebSocket message — text or binary + variant message { + text(string), + binary(list), + } + + /// A WebSocket connection resource + resource websocket-connection { + /// Connect to a WebSocket server at the given URL (ws:// or wss://) + /// Optional headers for auth, subprotocols, etc. + connect: static func( + url: string, + headers: option>> + ) -> result; + + /// Send a message (text or binary) + send: func(message: message) -> result<_, error>; + + /// Receive the next message (blocks until available) + receive: async func() -> result; + + /// Receive the next message with a timeout in milliseconds. + /// Returns none if the timeout expires before a message arrives. + receive-with-timeout: async func(timeout-ms: u64) -> result, error>; + + /// Send a close frame with optional code and reason + close: func(code: option, reason: option) -> result<_, error>; + } +} diff --git a/sdks/go/wit/deps/http-0.2.6/http.wit b/sdks/go/wit/deps/http-0.2.6/http.wit new file mode 100644 index 0000000000..eb1b25f024 --- /dev/null +++ b/sdks/go/wit/deps/http-0.2.6/http.wit @@ -0,0 +1,733 @@ +package wasi:http@0.2.6; + +/// This interface defines all of the types and methods for implementing +/// HTTP Requests and Responses, both incoming and outgoing, as well as +/// their headers, trailers, and bodies. +@since(version = 0.2.0) +interface types { + @since(version = 0.2.0) + use wasi:clocks/monotonic-clock@0.2.6.{duration}; + @since(version = 0.2.0) + use wasi:io/streams@0.2.6.{input-stream, output-stream}; + @since(version = 0.2.0) + use wasi:io/error@0.2.6.{error as io-error}; + @since(version = 0.2.0) + use wasi:io/poll@0.2.6.{pollable}; + + /// This type corresponds to HTTP standard Methods. + @since(version = 0.2.0) + variant method { + get, + head, + post, + put, + delete, + connect, + options, + trace, + patch, + other(string), + } + + /// This type corresponds to HTTP standard Related Schemes. + @since(version = 0.2.0) + variant scheme { + HTTP, + HTTPS, + other(string), + } + + /// Defines the case payload type for `DNS-error` above: + @since(version = 0.2.0) + record DNS-error-payload { + rcode: option, + info-code: option, + } + + /// Defines the case payload type for `TLS-alert-received` above: + @since(version = 0.2.0) + record TLS-alert-received-payload { + alert-id: option, + alert-message: option, + } + + /// Defines the case payload type for `HTTP-response-{header,trailer}-size` above: + @since(version = 0.2.0) + record field-size-payload { + field-name: option, + field-size: option, + } + + /// These cases are inspired by the IANA HTTP Proxy Error Types: + /// + @since(version = 0.2.0) + variant error-code { + DNS-timeout, + DNS-error(DNS-error-payload), + destination-not-found, + destination-unavailable, + destination-IP-prohibited, + destination-IP-unroutable, + connection-refused, + connection-terminated, + connection-timeout, + connection-read-timeout, + connection-write-timeout, + connection-limit-reached, + TLS-protocol-error, + TLS-certificate-error, + TLS-alert-received(TLS-alert-received-payload), + HTTP-request-denied, + HTTP-request-length-required, + HTTP-request-body-size(option), + HTTP-request-method-invalid, + HTTP-request-URI-invalid, + HTTP-request-URI-too-long, + HTTP-request-header-section-size(option), + HTTP-request-header-size(option), + HTTP-request-trailer-section-size(option), + HTTP-request-trailer-size(field-size-payload), + HTTP-response-incomplete, + HTTP-response-header-section-size(option), + HTTP-response-header-size(field-size-payload), + HTTP-response-body-size(option), + HTTP-response-trailer-section-size(option), + HTTP-response-trailer-size(field-size-payload), + HTTP-response-transfer-coding(option), + HTTP-response-content-coding(option), + HTTP-response-timeout, + HTTP-upgrade-failed, + HTTP-protocol-error, + loop-detected, + configuration-error, + /// This is a catch-all error for anything that doesn't fit cleanly into a + /// more specific case. It also includes an optional string for an + /// unstructured description of the error. Users should not depend on the + /// string for diagnosing errors, as it's not required to be consistent + /// between implementations. + internal-error(option), + } + + /// This type enumerates the different kinds of errors that may occur when + /// setting or appending to a `fields` resource. + @since(version = 0.2.0) + variant header-error { + /// This error indicates that a `field-name` or `field-value` was + /// syntactically invalid when used with an operation that sets headers in a + /// `fields`. + invalid-syntax, + /// This error indicates that a forbidden `field-name` was used when trying + /// to set a header in a `fields`. + forbidden, + /// This error indicates that the operation on the `fields` was not + /// permitted because the fields are immutable. + immutable, + } + + /// Field keys are always strings. + /// + /// Field keys should always be treated as case insensitive by the `fields` + /// resource for the purposes of equality checking. + /// + /// # Deprecation + /// + /// This type has been deprecated in favor of the `field-name` type. + @since(version = 0.2.0) + @deprecated(version = 0.2.2) + type field-key = string; + + /// Field names are always strings. + /// + /// Field names should always be treated as case insensitive by the `fields` + /// resource for the purposes of equality checking. + @since(version = 0.2.1) + type field-name = field-key; + + /// Field values should always be ASCII strings. However, in + /// reality, HTTP implementations often have to interpret malformed values, + /// so they are provided as a list of bytes. + @since(version = 0.2.0) + type field-value = list; + + /// This following block defines the `fields` resource which corresponds to + /// HTTP standard Fields. Fields are a common representation used for both + /// Headers and Trailers. + /// + /// A `fields` may be mutable or immutable. A `fields` created using the + /// constructor, `from-list`, or `clone` will be mutable, but a `fields` + /// resource given by other means (including, but not limited to, + /// `incoming-request.headers`, `outgoing-request.headers`) might be + /// immutable. In an immutable fields, the `set`, `append`, and `delete` + /// operations will fail with `header-error.immutable`. + @since(version = 0.2.0) + resource fields { + /// Construct an empty HTTP Fields. + /// + /// The resulting `fields` is mutable. + @since(version = 0.2.0) + constructor(); + /// Construct an HTTP Fields. + /// + /// The resulting `fields` is mutable. + /// + /// The list represents each name-value pair in the Fields. Names + /// which have multiple values are represented by multiple entries in this + /// list with the same name. + /// + /// The tuple is a pair of the field name, represented as a string, and + /// Value, represented as a list of bytes. + /// + /// An error result will be returned if any `field-name` or `field-value` is + /// syntactically invalid, or if a field is forbidden. + @since(version = 0.2.0) + from-list: static func(entries: list>) -> result; + /// Get all of the values corresponding to a name. If the name is not present + /// in this `fields` or is syntactically invalid, an empty list is returned. + /// However, if the name is present but empty, this is represented by a list + /// with one or more empty field-values present. + @since(version = 0.2.0) + get: func(name: field-name) -> list; + /// Returns `true` when the name is present in this `fields`. If the name is + /// syntactically invalid, `false` is returned. + @since(version = 0.2.0) + has: func(name: field-name) -> bool; + /// Set all of the values for a name. Clears any existing values for that + /// name, if they have been set. + /// + /// Fails with `header-error.immutable` if the `fields` are immutable. + /// + /// Fails with `header-error.invalid-syntax` if the `field-name` or any of + /// the `field-value`s are syntactically invalid. + @since(version = 0.2.0) + set: func(name: field-name, value: list) -> result<_, header-error>; + /// Delete all values for a name. Does nothing if no values for the name + /// exist. + /// + /// Fails with `header-error.immutable` if the `fields` are immutable. + /// + /// Fails with `header-error.invalid-syntax` if the `field-name` is + /// syntactically invalid. + @since(version = 0.2.0) + delete: func(name: field-name) -> result<_, header-error>; + /// Append a value for a name. Does not change or delete any existing + /// values for that name. + /// + /// Fails with `header-error.immutable` if the `fields` are immutable. + /// + /// Fails with `header-error.invalid-syntax` if the `field-name` or + /// `field-value` are syntactically invalid. + @since(version = 0.2.0) + append: func(name: field-name, value: field-value) -> result<_, header-error>; + /// Retrieve the full set of names and values in the Fields. Like the + /// constructor, the list represents each name-value pair. + /// + /// The outer list represents each name-value pair in the Fields. Names + /// which have multiple values are represented by multiple entries in this + /// list with the same name. + /// + /// The names and values are always returned in the original casing and in + /// the order in which they will be serialized for transport. + @since(version = 0.2.0) + entries: func() -> list>; + /// Make a deep copy of the Fields. Equivalent in behavior to calling the + /// `fields` constructor on the return value of `entries`. The resulting + /// `fields` is mutable. + @since(version = 0.2.0) + clone: func() -> fields; + } + + /// Headers is an alias for Fields. + @since(version = 0.2.0) + type headers = fields; + + /// Trailers is an alias for Fields. + @since(version = 0.2.0) + type trailers = fields; + + /// Represents an incoming HTTP Request. + @since(version = 0.2.0) + resource incoming-request { + /// Returns the method of the incoming request. + @since(version = 0.2.0) + method: func() -> method; + /// Returns the path with query parameters from the request, as a string. + @since(version = 0.2.0) + path-with-query: func() -> option; + /// Returns the protocol scheme from the request. + @since(version = 0.2.0) + scheme: func() -> option; + /// Returns the authority of the Request's target URI, if present. + @since(version = 0.2.0) + authority: func() -> option; + /// Get the `headers` associated with the request. + /// + /// The returned `headers` resource is immutable: `set`, `append`, and + /// `delete` operations will fail with `header-error.immutable`. + /// + /// The `headers` returned are a child resource: it must be dropped before + /// the parent `incoming-request` is dropped. Dropping this + /// `incoming-request` before all children are dropped will trap. + @since(version = 0.2.0) + headers: func() -> headers; + /// Gives the `incoming-body` associated with this request. Will only + /// return success at most once, and subsequent calls will return error. + @since(version = 0.2.0) + consume: func() -> result; + } + + /// Represents an outgoing HTTP Request. + @since(version = 0.2.0) + resource outgoing-request { + /// Construct a new `outgoing-request` with a default `method` of `GET`, and + /// `none` values for `path-with-query`, `scheme`, and `authority`. + /// + /// * `headers` is the HTTP Headers for the Request. + /// + /// It is possible to construct, or manipulate with the accessor functions + /// below, an `outgoing-request` with an invalid combination of `scheme` + /// and `authority`, or `headers` which are not permitted to be sent. + /// It is the obligation of the `outgoing-handler.handle` implementation + /// to reject invalid constructions of `outgoing-request`. + @since(version = 0.2.0) + constructor(headers: headers); + /// Returns the resource corresponding to the outgoing Body for this + /// Request. + /// + /// Returns success on the first call: the `outgoing-body` resource for + /// this `outgoing-request` can be retrieved at most once. Subsequent + /// calls will return error. + @since(version = 0.2.0) + body: func() -> result; + /// Get the Method for the Request. + @since(version = 0.2.0) + method: func() -> method; + /// Set the Method for the Request. Fails if the string present in a + /// `method.other` argument is not a syntactically valid method. + @since(version = 0.2.0) + set-method: func(method: method) -> result; + /// Get the combination of the HTTP Path and Query for the Request. + /// When `none`, this represents an empty Path and empty Query. + @since(version = 0.2.0) + path-with-query: func() -> option; + /// Set the combination of the HTTP Path and Query for the Request. + /// When `none`, this represents an empty Path and empty Query. Fails is the + /// string given is not a syntactically valid path and query uri component. + @since(version = 0.2.0) + set-path-with-query: func(path-with-query: option) -> result; + /// Get the HTTP Related Scheme for the Request. When `none`, the + /// implementation may choose an appropriate default scheme. + @since(version = 0.2.0) + scheme: func() -> option; + /// Set the HTTP Related Scheme for the Request. When `none`, the + /// implementation may choose an appropriate default scheme. Fails if the + /// string given is not a syntactically valid uri scheme. + @since(version = 0.2.0) + set-scheme: func(scheme: option) -> result; + /// Get the authority of the Request's target URI. A value of `none` may be used + /// with Related Schemes which do not require an authority. The HTTP and + /// HTTPS schemes always require an authority. + @since(version = 0.2.0) + authority: func() -> option; + /// Set the authority of the Request's target URI. A value of `none` may be used + /// with Related Schemes which do not require an authority. The HTTP and + /// HTTPS schemes always require an authority. Fails if the string given is + /// not a syntactically valid URI authority. + @since(version = 0.2.0) + set-authority: func(authority: option) -> result; + /// Get the headers associated with the Request. + /// + /// The returned `headers` resource is immutable: `set`, `append`, and + /// `delete` operations will fail with `header-error.immutable`. + /// + /// This headers resource is a child: it must be dropped before the parent + /// `outgoing-request` is dropped, or its ownership is transferred to + /// another component by e.g. `outgoing-handler.handle`. + @since(version = 0.2.0) + headers: func() -> headers; + } + + /// Parameters for making an HTTP Request. Each of these parameters is + /// currently an optional timeout applicable to the transport layer of the + /// HTTP protocol. + /// + /// These timeouts are separate from any the user may use to bound a + /// blocking call to `wasi:io/poll.poll`. + @since(version = 0.2.0) + resource request-options { + /// Construct a default `request-options` value. + @since(version = 0.2.0) + constructor(); + /// The timeout for the initial connect to the HTTP Server. + @since(version = 0.2.0) + connect-timeout: func() -> option; + /// Set the timeout for the initial connect to the HTTP Server. An error + /// return value indicates that this timeout is not supported. + @since(version = 0.2.0) + set-connect-timeout: func(duration: option) -> result; + /// The timeout for receiving the first byte of the Response body. + @since(version = 0.2.0) + first-byte-timeout: func() -> option; + /// Set the timeout for receiving the first byte of the Response body. An + /// error return value indicates that this timeout is not supported. + @since(version = 0.2.0) + set-first-byte-timeout: func(duration: option) -> result; + /// The timeout for receiving subsequent chunks of bytes in the Response + /// body stream. + @since(version = 0.2.0) + between-bytes-timeout: func() -> option; + /// Set the timeout for receiving subsequent chunks of bytes in the Response + /// body stream. An error return value indicates that this timeout is not + /// supported. + @since(version = 0.2.0) + set-between-bytes-timeout: func(duration: option) -> result; + } + + /// Represents the ability to send an HTTP Response. + /// + /// This resource is used by the `wasi:http/incoming-handler` interface to + /// allow a Response to be sent corresponding to the Request provided as the + /// other argument to `incoming-handler.handle`. + @since(version = 0.2.0) + resource response-outparam { + /// Send an HTTP 1xx response. + /// + /// Unlike `response-outparam.set`, this does not consume the + /// `response-outparam`, allowing the guest to send an arbitrary number of + /// informational responses before sending the final response using + /// `response-outparam.set`. + /// + /// This will return an `HTTP-protocol-error` if `status` is not in the + /// range [100-199], or an `internal-error` if the implementation does not + /// support informational responses. + @unstable(feature = informational-outbound-responses) + send-informational: func(status: u16, headers: headers) -> result<_, error-code>; + /// Set the value of the `response-outparam` to either send a response, + /// or indicate an error. + /// + /// This method consumes the `response-outparam` to ensure that it is + /// called at most once. If it is never called, the implementation + /// will respond with an error. + /// + /// The user may provide an `error` to `response` to allow the + /// implementation determine how to respond with an HTTP error response. + @since(version = 0.2.0) + set: static func(param: response-outparam, response: result); + } + + /// This type corresponds to the HTTP standard Status Code. + @since(version = 0.2.0) + type status-code = u16; + + /// Represents an incoming HTTP Response. + @since(version = 0.2.0) + resource incoming-response { + /// Returns the status code from the incoming response. + @since(version = 0.2.0) + status: func() -> status-code; + /// Returns the headers from the incoming response. + /// + /// The returned `headers` resource is immutable: `set`, `append`, and + /// `delete` operations will fail with `header-error.immutable`. + /// + /// This headers resource is a child: it must be dropped before the parent + /// `incoming-response` is dropped. + @since(version = 0.2.0) + headers: func() -> headers; + /// Returns the incoming body. May be called at most once. Returns error + /// if called additional times. + @since(version = 0.2.0) + consume: func() -> result; + } + + /// Represents an incoming HTTP Request or Response's Body. + /// + /// A body has both its contents - a stream of bytes - and a (possibly + /// empty) set of trailers, indicating that the full contents of the + /// body have been received. This resource represents the contents as + /// an `input-stream` and the delivery of trailers as a `future-trailers`, + /// and ensures that the user of this interface may only be consuming either + /// the body contents or waiting on trailers at any given time. + @since(version = 0.2.0) + resource incoming-body { + /// Returns the contents of the body, as a stream of bytes. + /// + /// Returns success on first call: the stream representing the contents + /// can be retrieved at most once. Subsequent calls will return error. + /// + /// The returned `input-stream` resource is a child: it must be dropped + /// before the parent `incoming-body` is dropped, or consumed by + /// `incoming-body.finish`. + /// + /// This invariant ensures that the implementation can determine whether + /// the user is consuming the contents of the body, waiting on the + /// `future-trailers` to be ready, or neither. This allows for network + /// backpressure is to be applied when the user is consuming the body, + /// and for that backpressure to not inhibit delivery of the trailers if + /// the user does not read the entire body. + @since(version = 0.2.0) + %stream: func() -> result; + /// Takes ownership of `incoming-body`, and returns a `future-trailers`. + /// This function will trap if the `input-stream` child is still alive. + @since(version = 0.2.0) + finish: static func(this: incoming-body) -> future-trailers; + } + + /// Represents a future which may eventually return trailers, or an error. + /// + /// In the case that the incoming HTTP Request or Response did not have any + /// trailers, this future will resolve to the empty set of trailers once the + /// complete Request or Response body has been received. + @since(version = 0.2.0) + resource future-trailers { + /// Returns a pollable which becomes ready when either the trailers have + /// been received, or an error has occurred. When this pollable is ready, + /// the `get` method will return `some`. + @since(version = 0.2.0) + subscribe: func() -> pollable; + /// Returns the contents of the trailers, or an error which occurred, + /// once the future is ready. + /// + /// The outer `option` represents future readiness. Users can wait on this + /// `option` to become `some` using the `subscribe` method. + /// + /// The outer `result` is used to retrieve the trailers or error at most + /// once. It will be success on the first call in which the outer option + /// is `some`, and error on subsequent calls. + /// + /// The inner `result` represents that either the HTTP Request or Response + /// body, as well as any trailers, were received successfully, or that an + /// error occurred receiving them. The optional `trailers` indicates whether + /// or not trailers were present in the body. + /// + /// When some `trailers` are returned by this method, the `trailers` + /// resource is immutable, and a child. Use of the `set`, `append`, or + /// `delete` methods will return an error, and the resource must be + /// dropped before the parent `future-trailers` is dropped. + @since(version = 0.2.0) + get: func() -> option, error-code>>>; + } + + /// Represents an outgoing HTTP Response. + @since(version = 0.2.0) + resource outgoing-response { + /// Construct an `outgoing-response`, with a default `status-code` of `200`. + /// If a different `status-code` is needed, it must be set via the + /// `set-status-code` method. + /// + /// * `headers` is the HTTP Headers for the Response. + @since(version = 0.2.0) + constructor(headers: headers); + /// Get the HTTP Status Code for the Response. + @since(version = 0.2.0) + status-code: func() -> status-code; + /// Set the HTTP Status Code for the Response. Fails if the status-code + /// given is not a valid http status code. + @since(version = 0.2.0) + set-status-code: func(status-code: status-code) -> result; + /// Get the headers associated with the Request. + /// + /// The returned `headers` resource is immutable: `set`, `append`, and + /// `delete` operations will fail with `header-error.immutable`. + /// + /// This headers resource is a child: it must be dropped before the parent + /// `outgoing-request` is dropped, or its ownership is transferred to + /// another component by e.g. `outgoing-handler.handle`. + @since(version = 0.2.0) + headers: func() -> headers; + /// Returns the resource corresponding to the outgoing Body for this Response. + /// + /// Returns success on the first call: the `outgoing-body` resource for + /// this `outgoing-response` can be retrieved at most once. Subsequent + /// calls will return error. + @since(version = 0.2.0) + body: func() -> result; + } + + /// Represents an outgoing HTTP Request or Response's Body. + /// + /// A body has both its contents - a stream of bytes - and a (possibly + /// empty) set of trailers, inducating the full contents of the body + /// have been sent. This resource represents the contents as an + /// `output-stream` child resource, and the completion of the body (with + /// optional trailers) with a static function that consumes the + /// `outgoing-body` resource, and ensures that the user of this interface + /// may not write to the body contents after the body has been finished. + /// + /// If the user code drops this resource, as opposed to calling the static + /// method `finish`, the implementation should treat the body as incomplete, + /// and that an error has occurred. The implementation should propagate this + /// error to the HTTP protocol by whatever means it has available, + /// including: corrupting the body on the wire, aborting the associated + /// Request, or sending a late status code for the Response. + @since(version = 0.2.0) + resource outgoing-body { + /// Returns a stream for writing the body contents. + /// + /// The returned `output-stream` is a child resource: it must be dropped + /// before the parent `outgoing-body` resource is dropped (or finished), + /// otherwise the `outgoing-body` drop or `finish` will trap. + /// + /// Returns success on the first call: the `output-stream` resource for + /// this `outgoing-body` may be retrieved at most once. Subsequent calls + /// will return error. + @since(version = 0.2.0) + write: func() -> result; + /// Finalize an outgoing body, optionally providing trailers. This must be + /// called to signal that the response is complete. If the `outgoing-body` + /// is dropped without calling `outgoing-body.finalize`, the implementation + /// should treat the body as corrupted. + /// + /// Fails if the body's `outgoing-request` or `outgoing-response` was + /// constructed with a Content-Length header, and the contents written + /// to the body (via `write`) does not match the value given in the + /// Content-Length. + @since(version = 0.2.0) + finish: static func(this: outgoing-body, trailers: option) -> result<_, error-code>; + } + + /// Represents a future which may eventually return an incoming HTTP + /// Response, or an error. + /// + /// This resource is returned by the `wasi:http/outgoing-handler` interface to + /// provide the HTTP Response corresponding to the sent Request. + @since(version = 0.2.0) + resource future-incoming-response { + /// Returns a pollable which becomes ready when either the Response has + /// been received, or an error has occurred. When this pollable is ready, + /// the `get` method will return `some`. + @since(version = 0.2.0) + subscribe: func() -> pollable; + /// Returns the incoming HTTP Response, or an error, once one is ready. + /// + /// The outer `option` represents future readiness. Users can wait on this + /// `option` to become `some` using the `subscribe` method. + /// + /// The outer `result` is used to retrieve the response or error at most + /// once. It will be success on the first call in which the outer option + /// is `some`, and error on subsequent calls. + /// + /// The inner `result` represents that either the incoming HTTP Response + /// status and headers have received successfully, or that an error + /// occurred. Errors may also occur while consuming the response body, + /// but those will be reported by the `incoming-body` and its + /// `output-stream` child. + @since(version = 0.2.0) + get: func() -> option>>; + } + + /// Attempts to extract a http-related `error` from the wasi:io `error` + /// provided. + /// + /// Stream operations which return + /// `wasi:io/stream/stream-error::last-operation-failed` have a payload of + /// type `wasi:io/error/error` with more information about the operation + /// that failed. This payload can be passed through to this function to see + /// if there's http-related information about the error to return. + /// + /// Note that this function is fallible because not all io-errors are + /// http-related errors. + @since(version = 0.2.0) + http-error-code: func(err: borrow) -> option; +} + +/// This interface defines a handler of incoming HTTP Requests. It should +/// be exported by components which can respond to HTTP Requests. +@since(version = 0.2.0) +interface incoming-handler { + @since(version = 0.2.0) + use types.{incoming-request, response-outparam}; + + /// This function is invoked with an incoming HTTP Request, and a resource + /// `response-outparam` which provides the capability to reply with an HTTP + /// Response. The response is sent by calling the `response-outparam.set` + /// method, which allows execution to continue after the response has been + /// sent. This enables both streaming to the response body, and performing other + /// work. + /// + /// The implementor of this function must write a response to the + /// `response-outparam` before returning, or else the caller will respond + /// with an error on its behalf. + @since(version = 0.2.0) + handle: func(request: incoming-request, response-out: response-outparam); +} + +/// This interface defines a handler of outgoing HTTP Requests. It should be +/// imported by components which wish to make HTTP Requests. +@since(version = 0.2.0) +interface outgoing-handler { + @since(version = 0.2.0) + use types.{outgoing-request, request-options, future-incoming-response, error-code}; + + /// This function is invoked with an outgoing HTTP Request, and it returns + /// a resource `future-incoming-response` which represents an HTTP Response + /// which may arrive in the future. + /// + /// The `options` argument accepts optional parameters for the HTTP + /// protocol's transport layer. + /// + /// This function may return an error if the `outgoing-request` is invalid + /// or not allowed to be made. Otherwise, protocol errors are reported + /// through the `future-incoming-response`. + @since(version = 0.2.0) + handle: func(request: outgoing-request, options: option) -> result; +} + +/// The `wasi:http/imports` world imports all the APIs for HTTP proxies. +/// It is intended to be `include`d in other worlds. +@since(version = 0.2.0) +world imports { + @since(version = 0.2.0) + import wasi:io/poll@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/monotonic-clock@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/wall-clock@0.2.6; + @since(version = 0.2.0) + import wasi:random/random@0.2.6; + @since(version = 0.2.0) + import wasi:io/error@0.2.6; + @since(version = 0.2.0) + import wasi:io/streams@0.2.6; + @since(version = 0.2.0) + import wasi:cli/stdout@0.2.6; + @since(version = 0.2.0) + import wasi:cli/stderr@0.2.6; + @since(version = 0.2.0) + import wasi:cli/stdin@0.2.6; + @since(version = 0.2.0) + import types; + @since(version = 0.2.0) + import outgoing-handler; +} +/// The `wasi:http/proxy` world captures a widely-implementable intersection of +/// hosts that includes HTTP forward and reverse proxies. Components targeting +/// this world may concurrently stream in and out any number of incoming and +/// outgoing HTTP requests. +@since(version = 0.2.0) +world proxy { + @since(version = 0.2.0) + import wasi:io/poll@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/monotonic-clock@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/wall-clock@0.2.6; + @since(version = 0.2.0) + import wasi:random/random@0.2.6; + @since(version = 0.2.0) + import wasi:io/error@0.2.6; + @since(version = 0.2.0) + import wasi:io/streams@0.2.6; + @since(version = 0.2.0) + import wasi:cli/stdout@0.2.6; + @since(version = 0.2.0) + import wasi:cli/stderr@0.2.6; + @since(version = 0.2.0) + import wasi:cli/stdin@0.2.6; + @since(version = 0.2.0) + import types; + @since(version = 0.2.0) + import outgoing-handler; + + @since(version = 0.2.0) + export incoming-handler; +} diff --git a/sdks/go/wit/deps/http/http.wit b/sdks/go/wit/deps/http/http.wit new file mode 100644 index 0000000000..08458f7c68 --- /dev/null +++ b/sdks/go/wit/deps/http/http.wit @@ -0,0 +1,509 @@ +package wasi:http@0.3.0; + +/// This interface defines all of the types and methods for implementing HTTP +/// Requests and Responses, as well as their headers, trailers, and bodies. +@since(version = 0.3.0) +interface types { + use wasi:clocks/types@0.3.0.{duration}; + + /// This type corresponds to HTTP standard Methods. + @since(version = 0.3.0) + variant method { + get, + head, + post, + put, + delete, + connect, + options, + trace, + patch, + other(string), + } + + /// This type corresponds to HTTP standard Related Schemes. + @since(version = 0.3.0) + variant scheme { + HTTP, + HTTPS, + other(string), + } + + /// Defines the case payload type for `DNS-error` above: + @since(version = 0.3.0) + record DNS-error-payload { + rcode: option, + info-code: option, + } + + /// Defines the case payload type for `TLS-alert-received` above: + @since(version = 0.3.0) + record TLS-alert-received-payload { + alert-id: option, + alert-message: option, + } + + /// Defines the case payload type for `HTTP-response-{header,trailer}-size` above: + @since(version = 0.3.0) + record field-size-payload { + field-name: option, + field-size: option, + } + + /// These cases are inspired by the IANA HTTP Proxy Error Types: + /// + @since(version = 0.3.0) + variant error-code { + DNS-timeout, + DNS-error(DNS-error-payload), + destination-not-found, + destination-unavailable, + destination-IP-prohibited, + destination-IP-unroutable, + connection-refused, + connection-terminated, + connection-timeout, + connection-read-timeout, + connection-write-timeout, + connection-limit-reached, + TLS-protocol-error, + TLS-certificate-error, + TLS-alert-received(TLS-alert-received-payload), + HTTP-request-denied, + HTTP-request-length-required, + HTTP-request-body-size(option), + HTTP-request-method-invalid, + HTTP-request-URI-invalid, + HTTP-request-URI-too-long, + HTTP-request-header-section-size(option), + HTTP-request-header-size(option), + HTTP-request-trailer-section-size(option), + HTTP-request-trailer-size(field-size-payload), + HTTP-response-incomplete, + HTTP-response-header-section-size(option), + HTTP-response-header-size(field-size-payload), + HTTP-response-body-size(option), + HTTP-response-trailer-section-size(option), + HTTP-response-trailer-size(field-size-payload), + HTTP-response-transfer-coding(option), + HTTP-response-content-coding(option), + HTTP-response-timeout, + HTTP-upgrade-failed, + HTTP-protocol-error, + loop-detected, + configuration-error, + /// This is a catch-all error for anything that doesn't fit cleanly into a + /// more specific case. It also includes an optional string for an + /// unstructured description of the error. Users should not depend on the + /// string for diagnosing errors, as it's not required to be consistent + /// between implementations. + internal-error(option), + } + + /// This type enumerates the different kinds of errors that may occur when + /// setting or appending to a `fields` resource. + @since(version = 0.3.0) + variant header-error { + /// This error indicates that a `field-name` or `field-value` was + /// syntactically invalid when used with an operation that sets headers in a + /// `fields`. + invalid-syntax, + /// This error indicates that a forbidden `field-name` was used when trying + /// to set a header in a `fields`. + forbidden, + /// This error indicates that the operation on the `fields` was not + /// permitted because the fields are immutable. + immutable, + /// This error indicates that the operation would exceed an + /// implementation-defined limit on field sizes. This may apply to + /// an individual `field-value`, a single `field-name` plus all its + /// values, or the total aggregate size of all fields. + size-exceeded, + /// This is a catch-all error for anything that doesn't fit cleanly into a + /// more specific case. Implementations can use this to extend the error + /// type without breaking existing code. It also includes an optional + /// string for an unstructured description of the error. Users should not + /// depend on the string for diagnosing errors, as it's not required to be + /// consistent between implementations. + other(option), + } + + /// This type enumerates the different kinds of errors that may occur when + /// setting fields of a `request-options` resource. + @since(version = 0.3.0) + variant request-options-error { + /// Indicates the specified field is not supported by this implementation. + not-supported, + /// Indicates that the operation on the `request-options` was not permitted + /// because it is immutable. + immutable, + /// This is a catch-all error for anything that doesn't fit cleanly into a + /// more specific case. Implementations can use this to extend the error + /// type without breaking existing code. It also includes an optional + /// string for an unstructured description of the error. Users should not + /// depend on the string for diagnosing errors, as it's not required to be + /// consistent between implementations. + other(option), + } + + /// Field names are always strings. + /// + /// Field names should always be treated as case insensitive by the `fields` + /// resource for the purposes of equality checking. + @since(version = 0.3.0) + type field-name = string; + + /// Field values should always be ASCII strings. However, in + /// reality, HTTP implementations often have to interpret malformed values, + /// so they are provided as a list of bytes. + @since(version = 0.3.0) + type field-value = list; + + /// This following block defines the `fields` resource which corresponds to + /// HTTP standard Fields. Fields are a common representation used for both + /// Headers and Trailers. + /// + /// A `fields` may be mutable or immutable. A `fields` created using the + /// constructor, `from-list`, or `clone` will be mutable, but a `fields` + /// resource given by other means (including, but not limited to, + /// `request.headers`) might be be immutable. In an immutable fields, the + /// `set`, `append`, and `delete` operations will fail with + /// `header-error.immutable`. + /// + /// A `fields` resource should store `field-name`s and `field-value`s in their + /// original casing used to construct or mutate the `fields` resource. The `fields` + /// resource should use that original casing when serializing the fields for + /// transport or when returning them from a method. + /// + /// Implementations may impose limits on individual field values and on total + /// aggregate field section size. Operations that would exceed these limits + /// fail with `header-error.size-exceeded` + @since(version = 0.3.0) + resource fields { + /// Construct an empty HTTP Fields. + /// + /// The resulting `fields` is mutable. + constructor(); + /// Construct an HTTP Fields. + /// + /// The resulting `fields` is mutable. + /// + /// The list represents each name-value pair in the Fields. Names + /// which have multiple values are represented by multiple entries in this + /// list with the same name. + /// + /// The tuple is a pair of the field name, represented as a string, and + /// Value, represented as a list of bytes. In a valid Fields, all names + /// and values are valid UTF-8 strings. However, values are not always + /// well-formed, so they are represented as a raw list of bytes. + /// + /// An error result will be returned if any header or value was + /// syntactically invalid, if a header was forbidden, or if the + /// entries would exceed an implementation size limit. + from-list: static func(entries: list>) -> result; + /// Get all of the values corresponding to a name. If the name is not present + /// in this `fields`, an empty list is returned. However, if the name is + /// present but empty, this is represented by a list with one or more + /// empty field-values present. + get: func(name: field-name) -> list; + /// Returns `true` when the name is present in this `fields`. If the name is + /// syntactically invalid, `false` is returned. + has: func(name: field-name) -> bool; + /// Set all of the values for a name. Clears any existing values for that + /// name, if they have been set. + /// + /// Fails with `header-error.immutable` if the `fields` are immutable. + /// + /// Fails with `header-error.size-exceeded` if the name or values would + /// exceed an implementation-defined size limit. + set: func(name: field-name, value: list) -> result<_, header-error>; + /// Delete all values for a name. Does nothing if no values for the name + /// exist. + /// + /// Fails with `header-error.immutable` if the `fields` are immutable. + delete: func(name: field-name) -> result<_, header-error>; + /// Delete all values for a name. Does nothing if no values for the name + /// exist. + /// + /// Returns all values previously corresponding to the name, if any. + /// + /// Fails with `header-error.immutable` if the `fields` are immutable. + get-and-delete: func(name: field-name) -> result, header-error>; + /// Append a value for a name. Does not change or delete any existing + /// values for that name. + /// + /// Fails with `header-error.immutable` if the `fields` are immutable. + /// + /// Fails with `header-error.size-exceeded` if the value would exceed + /// an implementation-defined size limit. + append: func(name: field-name, value: field-value) -> result<_, header-error>; + /// Retrieve the full set of names and values in the Fields. Like the + /// constructor, the list represents each name-value pair. + /// + /// The outer list represents each name-value pair in the Fields. Names + /// which have multiple values are represented by multiple entries in this + /// list with the same name. + /// + /// The names and values are always returned in the original casing and in + /// the order in which they will be serialized for transport. + copy-all: func() -> list>; + /// Make a deep copy of the Fields. Equivalent in behavior to calling the + /// `fields` constructor on the return value of `copy-all`. The resulting + /// `fields` is mutable. + clone: func() -> fields; + } + + /// Headers is an alias for Fields. + @since(version = 0.3.0) + type headers = fields; + + /// Trailers is an alias for Fields. + @since(version = 0.3.0) + type trailers = fields; + + /// Represents an HTTP Request. + @since(version = 0.3.0) + resource request { + /// Construct a new `request` with a default `method` of `GET`, and + /// `none` values for `path-with-query`, `scheme`, and `authority`. + /// + /// `headers` is the HTTP Headers for the Request. + /// + /// `contents` is the optional body content stream with `none` + /// representing a zero-length content stream. + /// Once it is closed, `trailers` future must resolve to a result. + /// If `trailers` resolves to an error, underlying connection + /// will be closed immediately. + /// + /// `options` is optional `request-options` resource to be used + /// if the request is sent over a network connection. + /// + /// It is possible to construct, or manipulate with the accessor functions + /// below, a `request` with an invalid combination of `scheme` + /// and `authority`, or `headers` which are not permitted to be sent. + /// It is the obligation of the `handler.handle` implementation + /// to reject invalid constructions of `request`. + /// + /// The returned future resolves to result of transmission of this request. + new: static func(headers: headers, contents: option>, trailers: future, error-code>>, options: option) -> tuple>>; + /// Get the Method for the Request. + get-method: func() -> method; + /// Set the Method for the Request. Fails if the string present in a + /// `method.other` argument is not a syntactically valid method. + set-method: func(method: method) -> result; + /// Get the combination of the HTTP Path and Query for the Request. When + /// `none`, this represents an empty Path and empty Query. + get-path-with-query: func() -> option; + /// Set the combination of the HTTP Path and Query for the Request. When + /// `none`, this represents an empty Path and empty Query. Fails is the + /// string given is not a syntactically valid path and query uri component. + set-path-with-query: func(path-with-query: option) -> result; + /// Get the HTTP Related Scheme for the Request. When `none`, the + /// implementation may choose an appropriate default scheme. + get-scheme: func() -> option; + /// Set the HTTP Related Scheme for the Request. When `none`, the + /// implementation may choose an appropriate default scheme. Fails if the + /// string given is not a syntactically valid uri scheme. + set-scheme: func(scheme: option) -> result; + /// Get the authority of the Request's target URI. A value of `none` may be used + /// with Related Schemes which do not require an authority. The HTTP and + /// HTTPS schemes always require an authority. + get-authority: func() -> option; + /// Set the authority of the Request's target URI. A value of `none` may be used + /// with Related Schemes which do not require an authority. The HTTP and + /// HTTPS schemes always require an authority. Fails if the string given is + /// not a syntactically valid URI authority. + set-authority: func(authority: option) -> result; + /// Get the `request-options` to be associated with this request + /// + /// The returned `request-options` resource is immutable: `set-*` operations + /// will fail if invoked. + /// + /// This `request-options` resource is a child: it must be dropped before + /// the parent `request` is dropped, or its ownership is transferred to + /// another component by e.g. `handler.handle`. + get-options: func() -> option; + /// Get the headers associated with the Request. + /// + /// The returned `headers` resource is immutable: `set`, `append`, and + /// `delete` operations will fail with `header-error.immutable`. + get-headers: func() -> headers; + /// Get body of the Request. + /// + /// Stream returned by this method represents the contents of the body. + /// Once the stream is reported as closed, callers should await the returned + /// future to determine whether the body was received successfully. + /// The future will only resolve after the stream is reported as closed. + /// + /// This function takes a `res` future as a parameter, which can be used to + /// communicate an error in handling of the request. + /// + /// Note that function will move the `request`, but references to headers or + /// request options acquired from it previously will remain valid. + consume-body: static func(this: request, res: future>) -> tuple, future, error-code>>>; + } + + /// Parameters for making an HTTP Request. Each of these parameters is + /// currently an optional timeout applicable to the transport layer of the + /// HTTP protocol. + /// + /// These timeouts are separate from any the user may use to bound an + /// asynchronous call. + @since(version = 0.3.0) + resource request-options { + /// Construct a default `request-options` value. + constructor(); + /// The timeout for the initial connect to the HTTP Server. + get-connect-timeout: func() -> option; + /// Set the timeout for the initial connect to the HTTP Server. An error + /// return value indicates that this timeout is not supported or that this + /// handle is immutable. + set-connect-timeout: func(duration: option) -> result<_, request-options-error>; + /// The timeout for receiving the first byte of the Response body. + get-first-byte-timeout: func() -> option; + /// Set the timeout for receiving the first byte of the Response body. An + /// error return value indicates that this timeout is not supported or that + /// this handle is immutable. + set-first-byte-timeout: func(duration: option) -> result<_, request-options-error>; + /// The timeout for receiving subsequent chunks of bytes in the Response + /// body stream. + get-between-bytes-timeout: func() -> option; + /// Set the timeout for receiving subsequent chunks of bytes in the Response + /// body stream. An error return value indicates that this timeout is not + /// supported or that this handle is immutable. + set-between-bytes-timeout: func(duration: option) -> result<_, request-options-error>; + /// Make a deep copy of the `request-options`. + /// The resulting `request-options` is mutable. + clone: func() -> request-options; + } + + /// This type corresponds to the HTTP standard Status Code. + @since(version = 0.3.0) + type status-code = u16; + + /// Represents an HTTP Response. + @since(version = 0.3.0) + resource response { + /// Construct a new `response`, with a default `status-code` of `200`. + /// If a different `status-code` is needed, it must be set via the + /// `set-status-code` method. + /// + /// `headers` is the HTTP Headers for the Response. + /// + /// `contents` is the optional body content stream with `none` + /// representing a zero-length content stream. + /// Once it is closed, `trailers` future must resolve to a result. + /// If `trailers` resolves to an error, underlying connection + /// will be closed immediately. + /// + /// The returned future resolves to result of transmission of this response. + new: static func(headers: headers, contents: option>, trailers: future, error-code>>) -> tuple>>; + /// Get the HTTP Status Code for the Response. + get-status-code: func() -> status-code; + /// Set the HTTP Status Code for the Response. Fails if the status-code + /// given is not a valid http status code. + set-status-code: func(status-code: status-code) -> result; + /// Get the headers associated with the Response. + /// + /// The returned `headers` resource is immutable: `set`, `append`, and + /// `delete` operations will fail with `header-error.immutable`. + get-headers: func() -> headers; + /// Get body of the Response. + /// + /// Stream returned by this method represents the contents of the body. + /// Once the stream is reported as closed, callers should await the returned + /// future to determine whether the body was received successfully. + /// The future will only resolve after the stream is reported as closed. + /// + /// This function takes a `res` future as a parameter, which can be used to + /// communicate an error in handling of the response. + /// + /// Note that function will move the `response`, but references to headers + /// acquired from it previously will remain valid. + consume-body: static func(this: response, res: future>) -> tuple, future, error-code>>>; + } +} + +/// This interface defines a handler of HTTP Requests. +/// +/// In a `wasi:http/service` this interface is exported to respond to an +/// incoming HTTP Request with a Response. +/// +/// In `wasi:http/middleware` this interface is both exported and imported as +/// the "downstream" and "upstream" directions of the middleware chain. +@since(version = 0.3.0) +interface handler { + use types.{request, response, error-code}; + + /// This function may be called with either an incoming request read from the + /// network or a request synthesized or forwarded by another component. + handle: async func(request: request) -> result; +} + +/// This interface defines an HTTP client for sending "outgoing" requests. +/// +/// Most components are expected to import this interface to provide the +/// capability to send HTTP requests to arbitrary destinations on a network. +/// +/// The type signature of `client.send` is the same as `handler.handle`. This +/// duplication is currently necessary because some Component Model tooling +/// (including WIT itself) is unable to represent a component importing two +/// instances of the same interface. A `client.send` import may be linked +/// directly to a `handler.handle` export to bypass the network. +@since(version = 0.3.0) +interface client { + use types.{request, response, error-code}; + + /// This function may be used to either send an outgoing request over the + /// network or to forward it to another component. + send: async func(request: request) -> result; +} + +/// The `wasi:http/service` world captures a broad category of HTTP services +/// including web applications, API servers, and proxies. It may be `include`d +/// in more specific worlds such as `wasi:http/middleware`. +@since(version = 0.3.0) +world service { + import wasi:cli/types@0.3.0; + import wasi:cli/stdout@0.3.0; + import wasi:cli/stderr@0.3.0; + import wasi:cli/stdin@0.3.0; + import wasi:clocks/types@0.3.0; + import types; + import client; + import wasi:clocks/monotonic-clock@0.3.0; + import wasi:clocks/system-clock@0.3.0; + @unstable(feature = clocks-timezone) + import wasi:clocks/timezone@0.3.0; + import wasi:random/random@0.3.0; + import wasi:random/insecure@0.3.0; + import wasi:random/insecure-seed@0.3.0; + + export handler; +} +/// The `wasi:http/middleware` world captures HTTP services that forward HTTP +/// Requests to another handler. +/// +/// Components may implement this world to allow them to participate in handler +/// "chains" where a `request` flows through handlers on its way to some terminal +/// `service` and corresponding `response` flows in the opposite direction. +@since(version = 0.3.0) +world middleware { + import wasi:clocks/types@0.3.0; + import types; + import handler; + import wasi:cli/types@0.3.0; + import wasi:cli/stdout@0.3.0; + import wasi:cli/stderr@0.3.0; + import wasi:cli/stdin@0.3.0; + import client; + import wasi:clocks/monotonic-clock@0.3.0; + import wasi:clocks/system-clock@0.3.0; + @unstable(feature = clocks-timezone) + import wasi:clocks/timezone@0.3.0; + import wasi:random/random@0.3.0; + import wasi:random/insecure@0.3.0; + import wasi:random/insecure-seed@0.3.0; + + export handler; +} diff --git a/sdks/go/wit/deps/io-0.2.6/io.wit b/sdks/go/wit/deps/io-0.2.6/io.wit new file mode 100644 index 0000000000..08ad78e6b7 --- /dev/null +++ b/sdks/go/wit/deps/io-0.2.6/io.wit @@ -0,0 +1,331 @@ +package wasi:io@0.2.6; + +@since(version = 0.2.0) +interface error { + /// A resource which represents some error information. + /// + /// The only method provided by this resource is `to-debug-string`, + /// which provides some human-readable information about the error. + /// + /// In the `wasi:io` package, this resource is returned through the + /// `wasi:io/streams/stream-error` type. + /// + /// To provide more specific error information, other interfaces may + /// offer functions to "downcast" this error into more specific types. For example, + /// errors returned from streams derived from filesystem types can be described using + /// the filesystem's own error-code type. This is done using the function + /// `wasi:filesystem/types/filesystem-error-code`, which takes a `borrow` + /// parameter and returns an `option`. + /// + /// The set of functions which can "downcast" an `error` into a more + /// concrete type is open. + @since(version = 0.2.0) + resource error { + /// Returns a string that is suitable to assist humans in debugging + /// this error. + /// + /// WARNING: The returned string should not be consumed mechanically! + /// It may change across platforms, hosts, or other implementation + /// details. Parsing this string is a major platform-compatibility + /// hazard. + @since(version = 0.2.0) + to-debug-string: func() -> string; + } +} + +/// A poll API intended to let users wait for I/O events on multiple handles +/// at once. +@since(version = 0.2.0) +interface poll { + /// `pollable` represents a single I/O event which may be ready, or not. + @since(version = 0.2.0) + resource pollable { + /// Return the readiness of a pollable. This function never blocks. + /// + /// Returns `true` when the pollable is ready, and `false` otherwise. + @since(version = 0.2.0) + ready: func() -> bool; + /// `block` returns immediately if the pollable is ready, and otherwise + /// blocks until ready. + /// + /// This function is equivalent to calling `poll.poll` on a list + /// containing only this pollable. + @since(version = 0.2.0) + block: func(); + } + + /// Poll for completion on a set of pollables. + /// + /// This function takes a list of pollables, which identify I/O sources of + /// interest, and waits until one or more of the events is ready for I/O. + /// + /// The result `list` contains one or more indices of handles in the + /// argument list that is ready for I/O. + /// + /// This function traps if either: + /// - the list is empty, or: + /// - the list contains more elements than can be indexed with a `u32` value. + /// + /// A timeout can be implemented by adding a pollable from the + /// wasi-clocks API to the list. + /// + /// This function does not return a `result`; polling in itself does not + /// do any I/O so it doesn't fail. If any of the I/O sources identified by + /// the pollables has an error, it is indicated by marking the source as + /// being ready for I/O. + @since(version = 0.2.0) + poll: func(in: list>) -> list; +} + +/// WASI I/O is an I/O abstraction API which is currently focused on providing +/// stream types. +/// +/// In the future, the component model is expected to add built-in stream types; +/// when it does, they are expected to subsume this API. +@since(version = 0.2.0) +interface streams { + @since(version = 0.2.0) + use error.{error}; + @since(version = 0.2.0) + use poll.{pollable}; + + /// An error for input-stream and output-stream operations. + @since(version = 0.2.0) + variant stream-error { + /// The last operation (a write or flush) failed before completion. + /// + /// More information is available in the `error` payload. + /// + /// After this, the stream will be closed. All future operations return + /// `stream-error::closed`. + last-operation-failed(error), + /// The stream is closed: no more input will be accepted by the + /// stream. A closed output-stream will return this error on all + /// future operations. + closed, + } + + /// An input bytestream. + /// + /// `input-stream`s are *non-blocking* to the extent practical on underlying + /// platforms. I/O operations always return promptly; if fewer bytes are + /// promptly available than requested, they return the number of bytes promptly + /// available, which could even be zero. To wait for data to be available, + /// use the `subscribe` function to obtain a `pollable` which can be polled + /// for using `wasi:io/poll`. + @since(version = 0.2.0) + resource input-stream { + /// Perform a non-blocking read from the stream. + /// + /// When the source of a `read` is binary data, the bytes from the source + /// are returned verbatim. When the source of a `read` is known to the + /// implementation to be text, bytes containing the UTF-8 encoding of the + /// text are returned. + /// + /// This function returns a list of bytes containing the read data, + /// when successful. The returned list will contain up to `len` bytes; + /// it may return fewer than requested, but not more. The list is + /// empty when no bytes are available for reading at this time. The + /// pollable given by `subscribe` will be ready when more bytes are + /// available. + /// + /// This function fails with a `stream-error` when the operation + /// encounters an error, giving `last-operation-failed`, or when the + /// stream is closed, giving `closed`. + /// + /// When the caller gives a `len` of 0, it represents a request to + /// read 0 bytes. If the stream is still open, this call should + /// succeed and return an empty list, or otherwise fail with `closed`. + /// + /// The `len` parameter is a `u64`, which could represent a list of u8 which + /// is not possible to allocate in wasm32, or not desirable to allocate as + /// as a return value by the callee. The callee may return a list of bytes + /// less than `len` in size while more bytes are available for reading. + @since(version = 0.2.0) + read: func(len: u64) -> result, stream-error>; + /// Read bytes from a stream, after blocking until at least one byte can + /// be read. Except for blocking, behavior is identical to `read`. + @since(version = 0.2.0) + blocking-read: func(len: u64) -> result, stream-error>; + /// Skip bytes from a stream. Returns number of bytes skipped. + /// + /// Behaves identical to `read`, except instead of returning a list + /// of bytes, returns the number of bytes consumed from the stream. + @since(version = 0.2.0) + skip: func(len: u64) -> result; + /// Skip bytes from a stream, after blocking until at least one byte + /// can be skipped. Except for blocking behavior, identical to `skip`. + @since(version = 0.2.0) + blocking-skip: func(len: u64) -> result; + /// Create a `pollable` which will resolve once either the specified stream + /// has bytes available to read or the other end of the stream has been + /// closed. + /// The created `pollable` is a child resource of the `input-stream`. + /// Implementations may trap if the `input-stream` is dropped before + /// all derived `pollable`s created with this function are dropped. + @since(version = 0.2.0) + subscribe: func() -> pollable; + } + + /// An output bytestream. + /// + /// `output-stream`s are *non-blocking* to the extent practical on + /// underlying platforms. Except where specified otherwise, I/O operations also + /// always return promptly, after the number of bytes that can be written + /// promptly, which could even be zero. To wait for the stream to be ready to + /// accept data, the `subscribe` function to obtain a `pollable` which can be + /// polled for using `wasi:io/poll`. + /// + /// Dropping an `output-stream` while there's still an active write in + /// progress may result in the data being lost. Before dropping the stream, + /// be sure to fully flush your writes. + @since(version = 0.2.0) + resource output-stream { + /// Check readiness for writing. This function never blocks. + /// + /// Returns the number of bytes permitted for the next call to `write`, + /// or an error. Calling `write` with more bytes than this function has + /// permitted will trap. + /// + /// When this function returns 0 bytes, the `subscribe` pollable will + /// become ready when this function will report at least 1 byte, or an + /// error. + @since(version = 0.2.0) + check-write: func() -> result; + /// Perform a write. This function never blocks. + /// + /// When the destination of a `write` is binary data, the bytes from + /// `contents` are written verbatim. When the destination of a `write` is + /// known to the implementation to be text, the bytes of `contents` are + /// transcoded from UTF-8 into the encoding of the destination and then + /// written. + /// + /// Precondition: check-write gave permit of Ok(n) and contents has a + /// length of less than or equal to n. Otherwise, this function will trap. + /// + /// returns Err(closed) without writing if the stream has closed since + /// the last call to check-write provided a permit. + @since(version = 0.2.0) + write: func(contents: list) -> result<_, stream-error>; + /// Perform a write of up to 4096 bytes, and then flush the stream. Block + /// until all of these operations are complete, or an error occurs. + /// + /// This is a convenience wrapper around the use of `check-write`, + /// `subscribe`, `write`, and `flush`, and is implemented with the + /// following pseudo-code: + /// + /// ```text + /// let pollable = this.subscribe(); + /// while !contents.is_empty() { + /// // Wait for the stream to become writable + /// pollable.block(); + /// let Ok(n) = this.check-write(); // eliding error handling + /// let len = min(n, contents.len()); + /// let (chunk, rest) = contents.split_at(len); + /// this.write(chunk ); // eliding error handling + /// contents = rest; + /// } + /// this.flush(); + /// // Wait for completion of `flush` + /// pollable.block(); + /// // Check for any errors that arose during `flush` + /// let _ = this.check-write(); // eliding error handling + /// ``` + @since(version = 0.2.0) + blocking-write-and-flush: func(contents: list) -> result<_, stream-error>; + /// Request to flush buffered output. This function never blocks. + /// + /// This tells the output-stream that the caller intends any buffered + /// output to be flushed. the output which is expected to be flushed + /// is all that has been passed to `write` prior to this call. + /// + /// Upon calling this function, the `output-stream` will not accept any + /// writes (`check-write` will return `ok(0)`) until the flush has + /// completed. The `subscribe` pollable will become ready when the + /// flush has completed and the stream can accept more writes. + @since(version = 0.2.0) + flush: func() -> result<_, stream-error>; + /// Request to flush buffered output, and block until flush completes + /// and stream is ready for writing again. + @since(version = 0.2.0) + blocking-flush: func() -> result<_, stream-error>; + /// Create a `pollable` which will resolve once the output-stream + /// is ready for more writing, or an error has occurred. When this + /// pollable is ready, `check-write` will return `ok(n)` with n>0, or an + /// error. + /// + /// If the stream is closed, this pollable is always ready immediately. + /// + /// The created `pollable` is a child resource of the `output-stream`. + /// Implementations may trap if the `output-stream` is dropped before + /// all derived `pollable`s created with this function are dropped. + @since(version = 0.2.0) + subscribe: func() -> pollable; + /// Write zeroes to a stream. + /// + /// This should be used precisely like `write` with the exact same + /// preconditions (must use check-write first), but instead of + /// passing a list of bytes, you simply pass the number of zero-bytes + /// that should be written. + @since(version = 0.2.0) + write-zeroes: func(len: u64) -> result<_, stream-error>; + /// Perform a write of up to 4096 zeroes, and then flush the stream. + /// Block until all of these operations are complete, or an error + /// occurs. + /// + /// This is a convenience wrapper around the use of `check-write`, + /// `subscribe`, `write-zeroes`, and `flush`, and is implemented with + /// the following pseudo-code: + /// + /// ```text + /// let pollable = this.subscribe(); + /// while num_zeroes != 0 { + /// // Wait for the stream to become writable + /// pollable.block(); + /// let Ok(n) = this.check-write(); // eliding error handling + /// let len = min(n, num_zeroes); + /// this.write-zeroes(len); // eliding error handling + /// num_zeroes -= len; + /// } + /// this.flush(); + /// // Wait for completion of `flush` + /// pollable.block(); + /// // Check for any errors that arose during `flush` + /// let _ = this.check-write(); // eliding error handling + /// ``` + @since(version = 0.2.0) + blocking-write-zeroes-and-flush: func(len: u64) -> result<_, stream-error>; + /// Read from one stream and write to another. + /// + /// The behavior of splice is equivalent to: + /// 1. calling `check-write` on the `output-stream` + /// 2. calling `read` on the `input-stream` with the smaller of the + /// `check-write` permitted length and the `len` provided to `splice` + /// 3. calling `write` on the `output-stream` with that read data. + /// + /// Any error reported by the call to `check-write`, `read`, or + /// `write` ends the splice and reports that error. + /// + /// This function returns the number of bytes transferred; it may be less + /// than `len`. + @since(version = 0.2.0) + splice: func(src: borrow, len: u64) -> result; + /// Read from one stream and write to another, with blocking. + /// + /// This is similar to `splice`, except that it blocks until the + /// `output-stream` is ready for writing, and the `input-stream` + /// is ready for reading, before performing the `splice`. + @since(version = 0.2.0) + blocking-splice: func(src: borrow, len: u64) -> result; + } +} + +@since(version = 0.2.0) +world imports { + @since(version = 0.2.0) + import error; + @since(version = 0.2.0) + import poll; + @since(version = 0.2.0) + import streams; +} diff --git a/sdks/go/wit/deps/keyvalue/caching.wit b/sdks/go/wit/deps/keyvalue/caching.wit new file mode 100644 index 0000000000..f5b497ef11 --- /dev/null +++ b/sdks/go/wit/deps/keyvalue/caching.wit @@ -0,0 +1,87 @@ +// The `wasi:keyvalue/cache` interface defines the operations of a single +// instance of a "cache", which is a non-durable, weakly-consistent key-value +// store. "Non-durable" means that caches are allowed and expected to +// arbitrarily discard key-value entries. "Weakly-consistent" means that there +// are essentially no guarantees that operations will agree on their results: a +// get following a set may not observe the set value; multiple gets may observe +// different previous set values; etc. The only guarantee is that values are +// not materialized "out of thin air": if a `get` returns a value, that value +// was passed to a `set` operation at some point in time in the past. +// Additionally, caches MUST make a best effort to respect the supplied +// Time-to-Live values (within the usual limitations around time in a +// distributed setting). +interface cache { + use types.{key, incoming-value, outgoing-value, error}; + + // The `get` operation returns the value passed by a previous `set` for the + // same key within the given TTL or none if there is no such value. + get: func(k: key) -> future-get-result; + + // Awaitable result of `get`. The inner `option` returns `none` when the + // requested key wasn't present. + resource future-get-result { + get: async func() -> result, error>; + } + + // The `exists` operation returns whether a value was previously `set` for + // the given key within the TTL. + exists: func(k: key) -> future-exists-result; + + // Awaitable result of `exists`. + resource future-exists-result { + get: async func() -> result; + } + + // The `set` operation sets the given value for the given key for the given + // time-to-live (TTL) duration, if supplied, specified in milliseconds. If + // a TTL is not supplied, the key may be kept indefinitely (as-if a very + // large TTL were used). If the key is already present in the cache, the + // value is updated in-place. In the common case of computing and caching a + // value if the given key is not already in the cache, consider using + // `get-or-set` (below) intead of separate `get` and `set` operations. + set: func(k: key, v: borrow, TTL-ms: option) -> future-result; + + // Awaitable result of `set` and `delete`. + resource future-result { + get: async func() -> result<_, error>; + } + + // The `get-or-set` operation asynchronously returns one of two cases + // enumerated by `get-or-set-entry`: in the `occupied` case, the given key + // already has a value present in the cache; in the `vacant` case, there + // was no value and the caller should write a value into the returned + // `vacancy`. This operation allows multiple concurrent `get-or-set` + // invocations to rendezvous such that only one invocation receives the + // `vacant` result while all other invocations wait until the vacancy is + // filled before receiving an `occupied` result. Implementations are not + // required to implement this rendezvous or to rendezvous in all possible + // cases. + variant get-or-set-entry { + occupied(incoming-value), + vacant(vacancy) + } + get-or-set: func(k: key) -> future-get-or-set-result; + + // Awaitable result of `get-or-set`. + resource future-get-or-set-result { + get: async func() -> result; + } + + // The following block defines the `vacancy` resource type. (When resource + // types are added, the `u32` type aliases can be replaced by proper + // `resource` types.) When the caller of `get-or-set` receives a `vacancy`, + // they must either call the `fill` method or drop the `vacancy` to + // indicate an error that prevents calling `fill`. An implementation MAY + // have a timeout that drops a vacancy that hasn't been filled in order + // to unblock other waiting `get-or-set` callers. + resource vacancy { + vacancy-fill: func(TTL-ms: option) -> outgoing-value; + } + + // The `delete` operation removes any value with the given key from the + // cache. Like all cache operations, `delete` is weakly ordered and thus + // concurrent `get` calls may still see deleted keys for a period of time. + // Additionally, due to weak ordering, concurrent `set` calls for the same + // key may or may not get deleted. + delete: func(k: key) -> future-result; +} diff --git a/sdks/go/wit/deps/keyvalue/error.wit b/sdks/go/wit/deps/keyvalue/error.wit new file mode 100644 index 0000000000..cd244f6fff --- /dev/null +++ b/sdks/go/wit/deps/keyvalue/error.wit @@ -0,0 +1,20 @@ +interface wasi-keyvalue-error { + /// An error resource type for keyvalue operations. + /// + /// Common errors: + /// - Connectivity errors (e.g. network errors): when the client cannot establish + /// a connection to the keyvalue service. + /// - Authentication and Authorization errors: when the client fails to authenticate + /// or does not have the required permissions to perform the operation. + /// - Data errors: when the client sends incompatible or corrupted data. + /// - Resource errors: when the system runs out of resources (e.g. memory). + /// - Internal errors: unexpected errors on the server side. + /// + /// Currently, this provides only one function to return a string representation + /// of the error. In the future, this will be extended to provide more information + /// about the error. + // Soon: switch to `resource error { ... }` + resource error { + trace: func() -> string; + } +} \ No newline at end of file diff --git a/sdks/go/wit/deps/keyvalue/eventual-batch.wit b/sdks/go/wit/deps/keyvalue/eventual-batch.wit new file mode 100644 index 0000000000..080999eeaa --- /dev/null +++ b/sdks/go/wit/deps/keyvalue/eventual-batch.wit @@ -0,0 +1,81 @@ +/// A keyvalue interface that provides eventually consistent batch operations. +/// +/// A batch operation is an operation that operates on multiple keys at once. +/// +/// Batch operations are useful for reducing network round-trip time. For example, +/// if you want to get the values associated with 100 keys, you can either do 100 get +/// operations or you can do 1 batch get operation. The batch operation is +/// faster because it only needs to make 1 network call instead of 100. +/// +/// A batch operation does not guarantee atomicity, meaning that if the batch +/// operation fails, some of the keys may have been modified and some may not. +/// Transactional operations are being worked on and will be added in the future to +/// provide atomicity. +/// +/// Data consistency in a key value store refers to the gaurantee that once a +/// write operation completes, all subsequent read operations will return the +/// value that was written. +/// +/// The level of consistency in batch operations is **eventual consistency**, the same +/// with the readwrite interface. This interface does not guarantee strong consistency, +/// meaning that if a write operation completes, subsequent read operations may not return +/// the value that was written. +interface eventual-batch { + /// A keyvalue interface that provides batch get operations. + use types.{bucket, error, key, incoming-value, outgoing-value}; + + /// Get the values associated with the keys in the bucket. It returns a list of + /// incoming-value that can be consumed to get the value associated with the key. + /// + /// If any of the keys do not exist in the bucket, it returns a `none` value for + /// that key in the list. + /// + /// Note that the key-value pairs are guaranteed to be returned in the same order + /// + /// MAY show an out-of-date value if there are concurrent writes to the bucket. + /// + /// If any other error occurs, it returns an `Err(error)`. + get-many: func(bucket: borrow, keys: list) -> result>, error>; + + /// Get all the keys in the bucket. It returns a list of keys. + /// + /// Note that the keys are not guaranteed to be returned in any particular order. + /// + /// If the bucket is empty, it returns an empty list. + /// + /// MAY show an out-of-date list of keys if there are concurrent writes to the bucket. + /// + /// If any error occurs, it returns an `Err(error)`. + keys: func(bucket: borrow) -> result, error>; + + /// Set the values associated with the keys in the bucket. If the key already + /// exists in the bucket, it overwrites the value. + /// + /// Note that the key-value pairs are not guaranteed to be set in the order + /// they are provided. + /// + /// If any of the keys do not exist in the bucket, it creates a new key-value pair. + /// + /// If any other error occurs, it returns an `Err(error)`. When an error occurs, it + /// does not rollback the key-value pairs that were already set. Thus, this batch operation + /// does not guarantee atomicity, implying that some key-value pairs could be + /// set while others might fail. + /// + /// Other concurrent operations may also be able to see the partial results. + set-many: func(bucket: borrow, key-values: list>>) -> result<_, error>; + + /// Delete the key-value pairs associated with the keys in the bucket. + /// + /// Note that the key-value pairs are not guaranteed to be deleted in the order + /// they are provided. + /// + /// If any of the keys do not exist in the bucket, it skips the key. + /// + /// If any other error occurs, it returns an `Err(error)`. When an error occurs, it + /// does not rollback the key-value pairs that were already deleted. Thus, this batch operation + /// does not guarantee atomicity, implying that some key-value pairs could be + /// deleted while others might fail. + /// + /// Other concurrent operations may also be able to see the partial results. + delete-many: func(bucket: borrow, keys: list) -> result<_, error>; +} \ No newline at end of file diff --git a/sdks/go/wit/deps/keyvalue/eventual.wit b/sdks/go/wit/deps/keyvalue/eventual.wit new file mode 100644 index 0000000000..e6e33cfe74 --- /dev/null +++ b/sdks/go/wit/deps/keyvalue/eventual.wit @@ -0,0 +1,56 @@ +/// A keyvalue interface that provides eventually consistent CRUD operations. +/// +/// A CRUD operation is an operation that acts on a single key-value pair. +/// +/// The value in the key-value pair is defined as a `u8` byte array and the intention +/// is that it is the common denominator for all data types defined by different +/// key-value stores to handle data, ensuring compatibility between different +/// key-value stores. Note: the clients will be expecting serialization/deserialization overhead +/// to be handled by the key-value store. The value could be a serialized object from +/// JSON, HTML or vendor-specific data types like AWS S3 objects. +/// +/// Data consistency in a key value store refers to the gaurantee that once a +/// write operation completes, all subsequent read operations will return the +/// value that was written. +/// +/// The level of consistency in readwrite interfaces is **eventual consistency**, +/// which means that if a write operation completes successfully, all subsequent +/// read operations will eventually return the value that was written. In other words, +/// if we pause the updates to the system, the system eventually will return +/// the last updated value for read. +interface eventual { + /// A keyvalue interface that provides simple read and write operations. + use types.{bucket, error, incoming-value, key, outgoing-value}; + + /// Get the value associated with the key in the bucket. + /// + /// The value is returned as an option. If the key-value pair exists in the + /// bucket, it returns `Ok(value)`. If the key does not exist in the + /// bucket, it returns `Ok(none)`. + /// + /// If any other error occurs, it returns an `Err(error)`. + get: func(bucket: borrow, key: key) -> result, error>; + + /// Set the value associated with the key in the bucket. If the key already + /// exists in the bucket, it overwrites the value. + /// + /// If the key does not exist in the bucket, it creates a new key-value pair. + /// + /// If any other error occurs, it returns an `Err(error)`. + set: func(bucket: borrow, key: key, outgoing-value: borrow) -> result<_, error>; + + /// Delete the key-value pair associated with the key in the bucket. + /// + /// If the key does not exist in the bucket, it does nothing. + /// + /// If any other error occurs, it returns an `Err(error)`. + delete: func(bucket: borrow, key: key) -> result<_, error>; + + /// Check if the key exists in the bucket. + /// + /// If the key exists in the bucket, it returns `Ok(true)`. If the key does + /// not exist in the bucket, it returns `Ok(false)`. + /// + /// If any other error occurs, it returns an `Err(error)`. + exists: func(bucket: borrow, key: key) -> result; +} \ No newline at end of file diff --git a/sdks/go/wit/deps/keyvalue/handle-watch.wit b/sdks/go/wit/deps/keyvalue/handle-watch.wit new file mode 100644 index 0000000000..0ca7b37728 --- /dev/null +++ b/sdks/go/wit/deps/keyvalue/handle-watch.wit @@ -0,0 +1,17 @@ +/// A keyvalue interface that provides handle-watch operations. +/// +/// This interface is used to provide event-driven mechanisms to handle +/// keyvalue changes. +interface handle-watch { + /// A keyvalue interface that provides handle-watch operations. + use types.{bucket, key, incoming-value}; + + /// Handle the `set` event for the given bucket and key. + /// It returns a `incoming-value` that represents the new value being set. + /// The new value can be consumed by the handler. + on-set: func(bucket: bucket, key: key, incoming-value: borrow); + + /// Handle the `delete` event for the given bucket and key. + /// It returns a `key` that represents the key being deleted. + on-delete: func(bucket: bucket, key: key); +} \ No newline at end of file diff --git a/sdks/go/wit/deps/keyvalue/types.wit b/sdks/go/wit/deps/keyvalue/types.wit new file mode 100644 index 0000000000..199c4cd0de --- /dev/null +++ b/sdks/go/wit/deps/keyvalue/types.wit @@ -0,0 +1,67 @@ +// A generic keyvalue interface for WASI. +interface types { + /// A bucket is a collection of key-value pairs. Each key-value pair is stored + /// as a entry in the bucket, and the bucket itself acts as a collection of all + /// these entries. + /// + /// It is worth noting that the exact terminology for bucket in key-value stores + /// can very depending on the specific implementation. For example, + /// 1. Amazon DynamoDB calls a collection of key-value pairs a table + /// 2. Redis has hashes, sets, and sorted sets as different types of collections + /// 3. Cassandra calls a collection of key-value pairs a column family + /// 4. MongoDB calls a collection of key-value pairs a collection + /// 5. Riak calls a collection of key-value pairs a bucket + /// 6. Memcached calls a collection of key-value pairs a slab + /// 7. Azure Cosmos DB calls a collection of key-value pairs a container + /// + /// In this interface, we use the term `bucket` to refer to a collection of key-value + // Soon: switch to `resource bucket { ... }` + resource bucket { + /// Opens a bucket with the given name. + /// + /// If any error occurs, including if the bucket does not exist, it returns an `Err(error)`. + open-bucket: static func(name: string) -> result; + } + /// A key is a unique identifier for a value in a bucket. The key is used to + /// retrieve the value from the bucket. + type key = string; + + use wasi-keyvalue-error.{ error }; + /// A value is the data stored in a key-value pair. The value can be of any type + /// that can be represented in a byte array. + // Soon: switch to `resource value { ... }` + resource outgoing-value { + new-outgoing-value: static func() -> outgoing-value; + /// Writes the value asynchronously by consuming the given `stream`: + /// the caller keeps the writable end and the host appends every received + /// byte to the outgoing value's body. + /// If any other error occurs, it returns an `Err(error)`. + outgoing-value-write-body-async: func(data: stream) -> result<_, error>; + /// Writes the value synchronously. + /// If any other error occurs, it returns an `Err(error)`. + outgoing-value-write-body-sync: func(value: list) -> result<_, error>; + } + + /// A incoming-value is a wrapper around a value. It provides ways to read the value. + /// + /// The incoming-value provides two ways to consume the value: + /// 1. `incoming-value-consume-sync` consumes the value synchronously and returns the + /// value as a `list`. + /// 2. `incoming-value-consume-async` consumes the value asynchronously and returns the + /// value as a `stream`. + /// In addition, it provides a `incoming-value-size` function to get the size of the value. + /// This is useful when the value is large and the caller wants to allocate a buffer of + /// the right size to consume the value. + // Soon: switch to `resource incoming-value { ... }` + resource incoming-value { + /// Consumes the value synchronously and returns the value as a list of bytes. + /// If any other error occurs, it returns an `Err(error)`. + incoming-value-consume-sync: func() -> result, error>; + /// Consumes the value asynchronously and returns the value as a `stream`. + /// If any other error occurs, it returns an `Err(error)`. + incoming-value-consume-async: func() -> result, error>; + /// The size of the value in bytes. + /// If the size is unknown or unavailable, this function returns an `Err(error)`. + incoming-value-size: func() -> result; + } +} diff --git a/sdks/go/wit/deps/keyvalue/world.wit b/sdks/go/wit/deps/keyvalue/world.wit new file mode 100644 index 0000000000..bc556f70db --- /dev/null +++ b/sdks/go/wit/deps/keyvalue/world.wit @@ -0,0 +1,21 @@ +package wasi:keyvalue@0.1.0; + +/// The `wasi:keyvalue/imports` world provides common APIs for interacting +/// with key-value stores. Components targeting this world will be able to +/// do +/// 1. CRUD (create, read, update, delete) operations on key-value stores. +/// 2. Batch operations that can reduce the number of round trips to the network. +world imports { + /// The `eventual` capability allows the component to perform + /// eventually consistent CRUD operations on the key-value store. + import eventual; + + /// The `eventual-batch` capability allows the component to perform eventually + /// consistent batch operations that can reduce the number of round trips to the network. + import eventual-batch; +} + +world keyvalue-handle-watch { + include imports; + export handle-watch; +} \ No newline at end of file diff --git a/sdks/go/wit/deps/logging/logging.wit b/sdks/go/wit/deps/logging/logging.wit new file mode 100644 index 0000000000..adb5ee5fb2 --- /dev/null +++ b/sdks/go/wit/deps/logging/logging.wit @@ -0,0 +1,37 @@ +package wasi:logging; + +/// WASI Logging is a logging API intended to let users emit log messages with +/// simple priority levels and context values. +interface logging { + /// A log level, describing a kind of message. + enum level { + /// Describes messages about the values of variables and the flow of + /// control within a program. + trace, + + /// Describes messages likely to be of interest to someone debugging a + /// program. + debug, + + /// Describes messages likely to be of interest to someone monitoring a + /// program. + info, + + /// Describes messages indicating hazardous situations. + warn, + + /// Describes messages indicating serious errors. + error, + + /// Describes messages indicating fatal errors. + critical, + } + + /// Emit a log message. + /// + /// A log message has a `level` describing what kind of message is being + /// sent, a context, which is an uninterpreted string meant to help + /// consumers group similar messages, and a string containing the message + /// text. + log: func(level: level, context: string, message: string); +} \ No newline at end of file diff --git a/sdks/go/wit/deps/random-0.2.6/random.wit b/sdks/go/wit/deps/random-0.2.6/random.wit new file mode 100644 index 0000000000..73edf5b60e --- /dev/null +++ b/sdks/go/wit/deps/random-0.2.6/random.wit @@ -0,0 +1,92 @@ +package wasi:random@0.2.6; + +/// The insecure-seed interface for seeding hash-map DoS resistance. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +@since(version = 0.2.0) +interface insecure-seed { + /// Return a 128-bit value that may contain a pseudo-random value. + /// + /// The returned value is not required to be computed from a CSPRNG, and may + /// even be entirely deterministic. Host implementations are encouraged to + /// provide pseudo-random values to any program exposed to + /// attacker-controlled content, to enable DoS protection built into many + /// languages' hash-map implementations. + /// + /// This function is intended to only be called once, by a source language + /// to initialize Denial Of Service (DoS) protection in its hash-map + /// implementation. + /// + /// # Expected future evolution + /// + /// This will likely be changed to a value import, to prevent it from being + /// called multiple times and potentially used for purposes other than DoS + /// protection. + @since(version = 0.2.0) + insecure-seed: func() -> tuple; +} + +/// The insecure interface for insecure pseudo-random numbers. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +@since(version = 0.2.0) +interface insecure { + /// Return `len` insecure pseudo-random bytes. + /// + /// This function is not cryptographically secure. Do not use it for + /// anything related to security. + /// + /// There are no requirements on the values of the returned bytes, however + /// implementations are encouraged to return evenly distributed values with + /// a long period. + @since(version = 0.2.0) + get-insecure-random-bytes: func(len: u64) -> list; + + /// Return an insecure pseudo-random `u64` value. + /// + /// This function returns the same type of pseudo-random data as + /// `get-insecure-random-bytes`, represented as a `u64`. + @since(version = 0.2.0) + get-insecure-random-u64: func() -> u64; +} + +/// WASI Random is a random data API. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +@since(version = 0.2.0) +interface random { + /// Return `len` cryptographically-secure random or pseudo-random bytes. + /// + /// This function must produce data at least as cryptographically secure and + /// fast as an adequately seeded cryptographically-secure pseudo-random + /// number generator (CSPRNG). It must not block, from the perspective of + /// the calling program, under any circumstances, including on the first + /// request and on requests for numbers of bytes. The returned data must + /// always be unpredictable. + /// + /// This function must always return fresh data. Deterministic environments + /// must omit this function, rather than implementing it with deterministic + /// data. + @since(version = 0.2.0) + get-random-bytes: func(len: u64) -> list; + + /// Return a cryptographically-secure random or pseudo-random `u64` value. + /// + /// This function returns the same type of data as `get-random-bytes`, + /// represented as a `u64`. + @since(version = 0.2.0) + get-random-u64: func() -> u64; +} + +@since(version = 0.2.0) +world imports { + @since(version = 0.2.0) + import random; + @since(version = 0.2.0) + import insecure; + @since(version = 0.2.0) + import insecure-seed; +} diff --git a/sdks/go/wit/deps/random/random.wit b/sdks/go/wit/deps/random/random.wit new file mode 100644 index 0000000000..0b9a55fc09 --- /dev/null +++ b/sdks/go/wit/deps/random/random.wit @@ -0,0 +1,107 @@ +package wasi:random@0.3.0; + +/// The insecure-seed interface for seeding hash-map DoS resistance. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +@since(version = 0.3.0) +interface insecure-seed { + /// Return a 128-bit value that may contain a pseudo-random value. + /// + /// The returned value is not required to be computed from a CSPRNG, and may + /// even be entirely deterministic. Host implementations are encouraged to + /// provide pseudo-random values to any program exposed to + /// attacker-controlled content, to enable DoS protection built into many + /// languages' hash-map implementations. + /// + /// This function is intended to only be called once, by a source language + /// to initialize Denial Of Service (DoS) protection in its hash-map + /// implementation. + /// + /// # Expected future evolution + /// + /// This will likely be changed to a value import, to prevent it from being + /// called multiple times and potentially used for purposes other than DoS + /// protection. + @since(version = 0.3.0) + get-insecure-seed: func() -> tuple; +} + +/// The insecure interface for insecure pseudo-random numbers. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +@since(version = 0.3.0) +interface insecure { + /// Return up to `max-len` insecure pseudo-random bytes. + /// + /// This function is not cryptographically secure. Do not use it for + /// anything related to security. + /// + /// There are no requirements on the values of the returned bytes, however + /// implementations are encouraged to return evenly distributed values with + /// a long period. + /// + /// Implementations MAY return fewer bytes than requested (a short read). + /// Callers that require exactly `max-len` bytes MUST call this function in + /// a loop until the desired number of bytes has been accumulated. + /// Implementations MUST return at least 1 byte when `max-len` is greater + /// than zero. When `max-len` is zero, implementations MUST return an empty + /// list without trapping. + @since(version = 0.3.0) + get-insecure-random-bytes: func(max-len: u64) -> list; + + /// Return an insecure pseudo-random `u64` value. + /// + /// This function returns the same type of pseudo-random data as + /// `get-insecure-random-bytes`, represented as a `u64`. + @since(version = 0.3.0) + get-insecure-random-u64: func() -> u64; +} + +/// WASI Random is a random data API. +/// +/// It is intended to be portable at least between Unix-family platforms and +/// Windows. +@since(version = 0.3.0) +interface random { + /// Return up to `max-len` cryptographically-secure random or pseudo-random + /// bytes. + /// + /// This function must produce data at least as cryptographically secure and + /// fast as an adequately seeded cryptographically-secure pseudo-random + /// number generator (CSPRNG). It must not block, from the perspective of + /// the calling program, under any circumstances, including on the first + /// request and on requests for numbers of bytes. The returned data must + /// always be unpredictable. + /// + /// Implementations MAY return fewer bytes than requested (a short read). + /// Callers that require exactly `max-len` bytes MUST call this function in + /// a loop until the desired number of bytes has been accumulated. + /// Implementations MUST return at least 1 byte when `max-len` is greater + /// than zero. When `max-len` is zero, implementations MUST return an empty + /// list without trapping. + /// + /// This function must always return fresh data. Deterministic environments + /// must omit this function, rather than implementing it with deterministic + /// data. + @since(version = 0.3.0) + get-random-bytes: func(max-len: u64) -> list; + + /// Return a cryptographically-secure random or pseudo-random `u64` value. + /// + /// This function returns the same type of data as `get-random-bytes`, + /// represented as a `u64`. + @since(version = 0.3.0) + get-random-u64: func() -> u64; +} + +@since(version = 0.3.0) +world imports { + @since(version = 0.3.0) + import random; + @since(version = 0.3.0) + import insecure; + @since(version = 0.3.0) + import insecure-seed; +} diff --git a/sdks/go/wit/deps/sockets-0.2.6/sockets.wit b/sdks/go/wit/deps/sockets-0.2.6/sockets.wit new file mode 100644 index 0000000000..db6d1a23b4 --- /dev/null +++ b/sdks/go/wit/deps/sockets-0.2.6/sockets.wit @@ -0,0 +1,949 @@ +package wasi:sockets@0.2.6; + +@since(version = 0.2.0) +interface network { + @unstable(feature = network-error-code) + use wasi:io/error@0.2.6.{error}; + + /// An opaque resource that represents access to (a subset of) the network. + /// This enables context-based security for networking. + /// There is no need for this to map 1:1 to a physical network interface. + @since(version = 0.2.0) + resource network; + + /// Error codes. + /// + /// In theory, every API can return any error code. + /// In practice, API's typically only return the errors documented per API + /// combined with a couple of errors that are always possible: + /// - `unknown` + /// - `access-denied` + /// - `not-supported` + /// - `out-of-memory` + /// - `concurrency-conflict` + /// + /// See each individual API for what the POSIX equivalents are. They sometimes differ per API. + @since(version = 0.2.0) + enum error-code { + /// Unknown error + unknown, + /// Access denied. + /// + /// POSIX equivalent: EACCES, EPERM + access-denied, + /// The operation is not supported. + /// + /// POSIX equivalent: EOPNOTSUPP + not-supported, + /// One of the arguments is invalid. + /// + /// POSIX equivalent: EINVAL + invalid-argument, + /// Not enough memory to complete the operation. + /// + /// POSIX equivalent: ENOMEM, ENOBUFS, EAI_MEMORY + out-of-memory, + /// The operation timed out before it could finish completely. + timeout, + /// This operation is incompatible with another asynchronous operation that is already in progress. + /// + /// POSIX equivalent: EALREADY + concurrency-conflict, + /// Trying to finish an asynchronous operation that: + /// - has not been started yet, or: + /// - was already finished by a previous `finish-*` call. + /// + /// Note: this is scheduled to be removed when `future`s are natively supported. + not-in-progress, + /// The operation has been aborted because it could not be completed immediately. + /// + /// Note: this is scheduled to be removed when `future`s are natively supported. + would-block, + /// The operation is not valid in the socket's current state. + invalid-state, + /// A new socket resource could not be created because of a system limit. + new-socket-limit, + /// A bind operation failed because the provided address is not an address that the `network` can bind to. + address-not-bindable, + /// A bind operation failed because the provided address is already in use or because there are no ephemeral ports available. + address-in-use, + /// The remote address is not reachable + remote-unreachable, + /// The TCP connection was forcefully rejected + connection-refused, + /// The TCP connection was reset. + connection-reset, + /// A TCP connection was aborted. + connection-aborted, + /// The size of a datagram sent to a UDP socket exceeded the maximum + /// supported size. + datagram-too-large, + /// Name does not exist or has no suitable associated IP addresses. + name-unresolvable, + /// A temporary failure in name resolution occurred. + temporary-resolver-failure, + /// A permanent failure in name resolution occurred. + permanent-resolver-failure, + } + + @since(version = 0.2.0) + enum ip-address-family { + /// Similar to `AF_INET` in POSIX. + ipv4, + /// Similar to `AF_INET6` in POSIX. + ipv6, + } + + @since(version = 0.2.0) + type ipv4-address = tuple; + + @since(version = 0.2.0) + type ipv6-address = tuple; + + @since(version = 0.2.0) + variant ip-address { + ipv4(ipv4-address), + ipv6(ipv6-address), + } + + @since(version = 0.2.0) + record ipv4-socket-address { + /// sin_port + port: u16, + /// sin_addr + address: ipv4-address, + } + + @since(version = 0.2.0) + record ipv6-socket-address { + /// sin6_port + port: u16, + /// sin6_flowinfo + flow-info: u32, + /// sin6_addr + address: ipv6-address, + /// sin6_scope_id + scope-id: u32, + } + + @since(version = 0.2.0) + variant ip-socket-address { + ipv4(ipv4-socket-address), + ipv6(ipv6-socket-address), + } + + /// Attempts to extract a network-related `error-code` from the stream + /// `error` provided. + /// + /// Stream operations which return `stream-error::last-operation-failed` + /// have a payload with more information about the operation that failed. + /// This payload can be passed through to this function to see if there's + /// network-related information about the error to return. + /// + /// Note that this function is fallible because not all stream-related + /// errors are network-related errors. + @unstable(feature = network-error-code) + network-error-code: func(err: borrow) -> option; +} + +/// This interface provides a value-export of the default network handle.. +@since(version = 0.2.0) +interface instance-network { + @since(version = 0.2.0) + use network.{network}; + + /// Get a handle to the default network. + @since(version = 0.2.0) + instance-network: func() -> network; +} + +@since(version = 0.2.0) +interface ip-name-lookup { + @since(version = 0.2.0) + use wasi:io/poll@0.2.6.{pollable}; + @since(version = 0.2.0) + use network.{network, error-code, ip-address}; + + @since(version = 0.2.0) + resource resolve-address-stream { + /// Returns the next address from the resolver. + /// + /// This function should be called multiple times. On each call, it will + /// return the next address in connection order preference. If all + /// addresses have been exhausted, this function returns `none`. + /// + /// This function never returns IPv4-mapped IPv6 addresses. + /// + /// # Typical errors + /// - `name-unresolvable`: Name does not exist or has no suitable associated IP addresses. (EAI_NONAME, EAI_NODATA, EAI_ADDRFAMILY) + /// - `temporary-resolver-failure`: A temporary failure in name resolution occurred. (EAI_AGAIN) + /// - `permanent-resolver-failure`: A permanent failure in name resolution occurred. (EAI_FAIL) + /// - `would-block`: A result is not available yet. (EWOULDBLOCK, EAGAIN) + @since(version = 0.2.0) + resolve-next-address: func() -> result, error-code>; + /// Create a `pollable` which will resolve once the stream is ready for I/O. + /// + /// Note: this function is here for WASI 0.2 only. + /// It's planned to be removed when `future` is natively supported in Preview3. + @since(version = 0.2.0) + subscribe: func() -> pollable; + } + + /// Resolve an internet host name to a list of IP addresses. + /// + /// Unicode domain names are automatically converted to ASCII using IDNA encoding. + /// If the input is an IP address string, the address is parsed and returned + /// as-is without making any external requests. + /// + /// See the wasi-socket proposal README.md for a comparison with getaddrinfo. + /// + /// This function never blocks. It either immediately fails or immediately + /// returns successfully with a `resolve-address-stream` that can be used + /// to (asynchronously) fetch the results. + /// + /// # Typical errors + /// - `invalid-argument`: `name` is a syntactically invalid domain name or IP address. + /// + /// # References: + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + resolve-addresses: func(network: borrow, name: string) -> result; +} + +@since(version = 0.2.0) +interface tcp { + @since(version = 0.2.0) + use wasi:io/streams@0.2.6.{input-stream, output-stream}; + @since(version = 0.2.0) + use wasi:io/poll@0.2.6.{pollable}; + @since(version = 0.2.0) + use wasi:clocks/monotonic-clock@0.2.6.{duration}; + @since(version = 0.2.0) + use network.{network, error-code, ip-socket-address, ip-address-family}; + + @since(version = 0.2.0) + enum shutdown-type { + /// Similar to `SHUT_RD` in POSIX. + receive, + /// Similar to `SHUT_WR` in POSIX. + send, + /// Similar to `SHUT_RDWR` in POSIX. + both, + } + + /// A TCP socket resource. + /// + /// The socket can be in one of the following states: + /// - `unbound` + /// - `bind-in-progress` + /// - `bound` (See note below) + /// - `listen-in-progress` + /// - `listening` + /// - `connect-in-progress` + /// - `connected` + /// - `closed` + /// See + /// for more information. + /// + /// Note: Except where explicitly mentioned, whenever this documentation uses + /// the term "bound" without backticks it actually means: in the `bound` state *or higher*. + /// (i.e. `bound`, `listen-in-progress`, `listening`, `connect-in-progress` or `connected`) + /// + /// In addition to the general error codes documented on the + /// `network::error-code` type, TCP socket methods may always return + /// `error(invalid-state)` when in the `closed` state. + @since(version = 0.2.0) + resource tcp-socket { + /// Bind the socket to a specific network on the provided IP address and port. + /// + /// If the IP address is zero (`0.0.0.0` in IPv4, `::` in IPv6), it is left to the implementation to decide which + /// network interface(s) to bind to. + /// If the TCP/UDP port is zero, the socket will be bound to a random free port. + /// + /// Bind can be attempted multiple times on the same socket, even with + /// different arguments on each iteration. But never concurrently and + /// only as long as the previous bind failed. Once a bind succeeds, the + /// binding can't be changed anymore. + /// + /// # Typical errors + /// - `invalid-argument`: The `local-address` has the wrong address family. (EAFNOSUPPORT, EFAULT on Windows) + /// - `invalid-argument`: `local-address` is not a unicast address. (EINVAL) + /// - `invalid-argument`: `local-address` is an IPv4-mapped IPv6 address. (EINVAL) + /// - `invalid-state`: The socket is already bound. (EINVAL) + /// - `address-in-use`: No ephemeral ports available. (EADDRINUSE, ENOBUFS on Windows) + /// - `address-in-use`: Address is already in use. (EADDRINUSE) + /// - `address-not-bindable`: `local-address` is not an address that the `network` can bind to. (EADDRNOTAVAIL) + /// - `not-in-progress`: A `bind` operation is not in progress. + /// - `would-block`: Can't finish the operation, it is still in progress. (EWOULDBLOCK, EAGAIN) + /// + /// # Implementors note + /// When binding to a non-zero port, this bind operation shouldn't be affected by the TIME_WAIT + /// state of a recently closed socket on the same local address. In practice this means that the SO_REUSEADDR + /// socket option should be set implicitly on all platforms, except on Windows where this is the default behavior + /// and SO_REUSEADDR performs something different entirely. + /// + /// Unlike in POSIX, in WASI the bind operation is async. This enables + /// interactive WASI hosts to inject permission prompts. Runtimes that + /// don't want to make use of this ability can simply call the native + /// `bind` as part of either `start-bind` or `finish-bind`. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + start-bind: func(network: borrow, local-address: ip-socket-address) -> result<_, error-code>; + @since(version = 0.2.0) + finish-bind: func() -> result<_, error-code>; + /// Connect to a remote endpoint. + /// + /// On success: + /// - the socket is transitioned into the `connected` state. + /// - a pair of streams is returned that can be used to read & write to the connection + /// + /// After a failed connection attempt, the socket will be in the `closed` + /// state and the only valid action left is to `drop` the socket. A single + /// socket can not be used to connect more than once. + /// + /// # Typical errors + /// - `invalid-argument`: The `remote-address` has the wrong address family. (EAFNOSUPPORT) + /// - `invalid-argument`: `remote-address` is not a unicast address. (EINVAL, ENETUNREACH on Linux, EAFNOSUPPORT on MacOS) + /// - `invalid-argument`: `remote-address` is an IPv4-mapped IPv6 address. (EINVAL, EADDRNOTAVAIL on Illumos) + /// - `invalid-argument`: The IP address in `remote-address` is set to INADDR_ANY (`0.0.0.0` / `::`). (EADDRNOTAVAIL on Windows) + /// - `invalid-argument`: The port in `remote-address` is set to 0. (EADDRNOTAVAIL on Windows) + /// - `invalid-argument`: The socket is already attached to a different network. The `network` passed to `connect` must be identical to the one passed to `bind`. + /// - `invalid-state`: The socket is already in the `connected` state. (EISCONN) + /// - `invalid-state`: The socket is already in the `listening` state. (EOPNOTSUPP, EINVAL on Windows) + /// - `timeout`: Connection timed out. (ETIMEDOUT) + /// - `connection-refused`: The connection was forcefully rejected. (ECONNREFUSED) + /// - `connection-reset`: The connection was reset. (ECONNRESET) + /// - `connection-aborted`: The connection was aborted. (ECONNABORTED) + /// - `remote-unreachable`: The remote address is not reachable. (EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// - `address-in-use`: Tried to perform an implicit bind, but there were no ephemeral ports available. (EADDRINUSE, EADDRNOTAVAIL on Linux, EAGAIN on BSD) + /// - `not-in-progress`: A connect operation is not in progress. + /// - `would-block`: Can't finish the operation, it is still in progress. (EWOULDBLOCK, EAGAIN) + /// + /// # Implementors note + /// The POSIX equivalent of `start-connect` is the regular `connect` syscall. + /// Because all WASI sockets are non-blocking this is expected to return + /// EINPROGRESS, which should be translated to `ok()` in WASI. + /// + /// The POSIX equivalent of `finish-connect` is a `poll` for event `POLLOUT` + /// with a timeout of 0 on the socket descriptor. Followed by a check for + /// the `SO_ERROR` socket option, in case the poll signaled readiness. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + start-connect: func(network: borrow, remote-address: ip-socket-address) -> result<_, error-code>; + @since(version = 0.2.0) + finish-connect: func() -> result, error-code>; + /// Start listening for new connections. + /// + /// Transitions the socket into the `listening` state. + /// + /// Unlike POSIX, the socket must already be explicitly bound. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not bound to any local address. (EDESTADDRREQ) + /// - `invalid-state`: The socket is already in the `connected` state. (EISCONN, EINVAL on BSD) + /// - `invalid-state`: The socket is already in the `listening` state. + /// - `address-in-use`: Tried to perform an implicit bind, but there were no ephemeral ports available. (EADDRINUSE) + /// - `not-in-progress`: A listen operation is not in progress. + /// - `would-block`: Can't finish the operation, it is still in progress. (EWOULDBLOCK, EAGAIN) + /// + /// # Implementors note + /// Unlike in POSIX, in WASI the listen operation is async. This enables + /// interactive WASI hosts to inject permission prompts. Runtimes that + /// don't want to make use of this ability can simply call the native + /// `listen` as part of either `start-listen` or `finish-listen`. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + start-listen: func() -> result<_, error-code>; + @since(version = 0.2.0) + finish-listen: func() -> result<_, error-code>; + /// Accept a new client socket. + /// + /// The returned socket is bound and in the `connected` state. The following properties are inherited from the listener socket: + /// - `address-family` + /// - `keep-alive-enabled` + /// - `keep-alive-idle-time` + /// - `keep-alive-interval` + /// - `keep-alive-count` + /// - `hop-limit` + /// - `receive-buffer-size` + /// - `send-buffer-size` + /// + /// On success, this function returns the newly accepted client socket along with + /// a pair of streams that can be used to read & write to the connection. + /// + /// # Typical errors + /// - `invalid-state`: Socket is not in the `listening` state. (EINVAL) + /// - `would-block`: No pending connections at the moment. (EWOULDBLOCK, EAGAIN) + /// - `connection-aborted`: An incoming connection was pending, but was terminated by the client before this listener could accept it. (ECONNABORTED) + /// - `new-socket-limit`: The new socket resource could not be created because of a system limit. (EMFILE, ENFILE) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + accept: func() -> result, error-code>; + /// Get the bound local address. + /// + /// POSIX mentions: + /// > If the socket has not been bound to a local name, the value + /// > stored in the object pointed to by `address` is unspecified. + /// + /// WASI is stricter and requires `local-address` to return `invalid-state` when the socket hasn't been bound yet. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not bound to any local address. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + local-address: func() -> result; + /// Get the remote address. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not connected to a remote address. (ENOTCONN) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + remote-address: func() -> result; + /// Whether the socket is in the `listening` state. + /// + /// Equivalent to the SO_ACCEPTCONN socket option. + @since(version = 0.2.0) + is-listening: func() -> bool; + /// Whether this is a IPv4 or IPv6 socket. + /// + /// Equivalent to the SO_DOMAIN socket option. + @since(version = 0.2.0) + address-family: func() -> ip-address-family; + /// Hints the desired listen queue size. Implementations are free to ignore this. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// Any other value will never cause an error, but it might be silently clamped and/or rounded. + /// + /// # Typical errors + /// - `not-supported`: (set) The platform does not support changing the backlog size after the initial listen. + /// - `invalid-argument`: (set) The provided value was 0. + /// - `invalid-state`: (set) The socket is in the `connect-in-progress` or `connected` state. + @since(version = 0.2.0) + set-listen-backlog-size: func(value: u64) -> result<_, error-code>; + /// Enables or disables keepalive. + /// + /// The keepalive behavior can be adjusted using: + /// - `keep-alive-idle-time` + /// - `keep-alive-interval` + /// - `keep-alive-count` + /// These properties can be configured while `keep-alive-enabled` is false, but only come into effect when `keep-alive-enabled` is true. + /// + /// Equivalent to the SO_KEEPALIVE socket option. + @since(version = 0.2.0) + keep-alive-enabled: func() -> result; + @since(version = 0.2.0) + set-keep-alive-enabled: func(value: bool) -> result<_, error-code>; + /// Amount of time the connection has to be idle before TCP starts sending keepalive packets. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// Any other value will never cause an error, but it might be silently clamped and/or rounded. + /// I.e. after setting a value, reading the same setting back may return a different value. + /// + /// Equivalent to the TCP_KEEPIDLE socket option. (TCP_KEEPALIVE on MacOS) + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.2.0) + keep-alive-idle-time: func() -> result; + @since(version = 0.2.0) + set-keep-alive-idle-time: func(value: duration) -> result<_, error-code>; + /// The time between keepalive packets. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// Any other value will never cause an error, but it might be silently clamped and/or rounded. + /// I.e. after setting a value, reading the same setting back may return a different value. + /// + /// Equivalent to the TCP_KEEPINTVL socket option. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.2.0) + keep-alive-interval: func() -> result; + @since(version = 0.2.0) + set-keep-alive-interval: func(value: duration) -> result<_, error-code>; + /// The maximum amount of keepalive packets TCP should send before aborting the connection. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// Any other value will never cause an error, but it might be silently clamped and/or rounded. + /// I.e. after setting a value, reading the same setting back may return a different value. + /// + /// Equivalent to the TCP_KEEPCNT socket option. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.2.0) + keep-alive-count: func() -> result; + @since(version = 0.2.0) + set-keep-alive-count: func(value: u32) -> result<_, error-code>; + /// Equivalent to the IP_TTL & IPV6_UNICAST_HOPS socket options. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The TTL value must be 1 or higher. + @since(version = 0.2.0) + hop-limit: func() -> result; + @since(version = 0.2.0) + set-hop-limit: func(value: u8) -> result<_, error-code>; + /// The kernel buffer space reserved for sends/receives on this socket. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// Any other value will never cause an error, but it might be silently clamped and/or rounded. + /// I.e. after setting a value, reading the same setting back may return a different value. + /// + /// Equivalent to the SO_RCVBUF and SO_SNDBUF socket options. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.2.0) + receive-buffer-size: func() -> result; + @since(version = 0.2.0) + set-receive-buffer-size: func(value: u64) -> result<_, error-code>; + @since(version = 0.2.0) + send-buffer-size: func() -> result; + @since(version = 0.2.0) + set-send-buffer-size: func(value: u64) -> result<_, error-code>; + /// Create a `pollable` which can be used to poll for, or block on, + /// completion of any of the asynchronous operations of this socket. + /// + /// When `finish-bind`, `finish-listen`, `finish-connect` or `accept` + /// return `error(would-block)`, this pollable can be used to wait for + /// their success or failure, after which the method can be retried. + /// + /// The pollable is not limited to the async operation that happens to be + /// in progress at the time of calling `subscribe` (if any). Theoretically, + /// `subscribe` only has to be called once per socket and can then be + /// (re)used for the remainder of the socket's lifetime. + /// + /// See + /// for more information. + /// + /// Note: this function is here for WASI 0.2 only. + /// It's planned to be removed when `future` is natively supported in Preview3. + @since(version = 0.2.0) + subscribe: func() -> pollable; + /// Initiate a graceful shutdown. + /// + /// - `receive`: The socket is not expecting to receive any data from + /// the peer. The `input-stream` associated with this socket will be + /// closed. Any data still in the receive queue at time of calling + /// this method will be discarded. + /// - `send`: The socket has no more data to send to the peer. The `output-stream` + /// associated with this socket will be closed and a FIN packet will be sent. + /// - `both`: Same effect as `receive` & `send` combined. + /// + /// This function is idempotent; shutting down a direction more than once + /// has no effect and returns `ok`. + /// + /// The shutdown function does not close (drop) the socket. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not in the `connected` state. (ENOTCONN) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + shutdown: func(shutdown-type: shutdown-type) -> result<_, error-code>; + } +} + +@since(version = 0.2.0) +interface tcp-create-socket { + @since(version = 0.2.0) + use network.{network, error-code, ip-address-family}; + @since(version = 0.2.0) + use tcp.{tcp-socket}; + + /// Create a new TCP socket. + /// + /// Similar to `socket(AF_INET or AF_INET6, SOCK_STREAM, IPPROTO_TCP)` in POSIX. + /// On IPv6 sockets, IPV6_V6ONLY is enabled by default and can't be configured otherwise. + /// + /// This function does not require a network capability handle. This is considered to be safe because + /// at time of creation, the socket is not bound to any `network` yet. Up to the moment `bind`/`connect` + /// is called, the socket is effectively an in-memory configuration object, unable to communicate with the outside world. + /// + /// All sockets are non-blocking. Use the wasi-poll interface to block on asynchronous operations. + /// + /// # Typical errors + /// - `not-supported`: The specified `address-family` is not supported. (EAFNOSUPPORT) + /// - `new-socket-limit`: The new socket resource could not be created because of a system limit. (EMFILE, ENFILE) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + create-tcp-socket: func(address-family: ip-address-family) -> result; +} + +@since(version = 0.2.0) +interface udp { + @since(version = 0.2.0) + use wasi:io/poll@0.2.6.{pollable}; + @since(version = 0.2.0) + use network.{network, error-code, ip-socket-address, ip-address-family}; + + /// A received datagram. + @since(version = 0.2.0) + record incoming-datagram { + /// The payload. + /// + /// Theoretical max size: ~64 KiB. In practice, typically less than 1500 bytes. + data: list, + /// The source address. + /// + /// This field is guaranteed to match the remote address the stream was initialized with, if any. + /// + /// Equivalent to the `src_addr` out parameter of `recvfrom`. + remote-address: ip-socket-address, + } + + /// A datagram to be sent out. + @since(version = 0.2.0) + record outgoing-datagram { + /// The payload. + data: list, + /// The destination address. + /// + /// The requirements on this field depend on how the stream was initialized: + /// - with a remote address: this field must be None or match the stream's remote address exactly. + /// - without a remote address: this field is required. + /// + /// If this value is None, the send operation is equivalent to `send` in POSIX. Otherwise it is equivalent to `sendto`. + remote-address: option, + } + + /// A UDP socket handle. + @since(version = 0.2.0) + resource udp-socket { + /// Bind the socket to a specific network on the provided IP address and port. + /// + /// If the IP address is zero (`0.0.0.0` in IPv4, `::` in IPv6), it is left to the implementation to decide which + /// network interface(s) to bind to. + /// If the port is zero, the socket will be bound to a random free port. + /// + /// # Typical errors + /// - `invalid-argument`: The `local-address` has the wrong address family. (EAFNOSUPPORT, EFAULT on Windows) + /// - `invalid-state`: The socket is already bound. (EINVAL) + /// - `address-in-use`: No ephemeral ports available. (EADDRINUSE, ENOBUFS on Windows) + /// - `address-in-use`: Address is already in use. (EADDRINUSE) + /// - `address-not-bindable`: `local-address` is not an address that the `network` can bind to. (EADDRNOTAVAIL) + /// - `not-in-progress`: A `bind` operation is not in progress. + /// - `would-block`: Can't finish the operation, it is still in progress. (EWOULDBLOCK, EAGAIN) + /// + /// # Implementors note + /// Unlike in POSIX, in WASI the bind operation is async. This enables + /// interactive WASI hosts to inject permission prompts. Runtimes that + /// don't want to make use of this ability can simply call the native + /// `bind` as part of either `start-bind` or `finish-bind`. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + start-bind: func(network: borrow, local-address: ip-socket-address) -> result<_, error-code>; + @since(version = 0.2.0) + finish-bind: func() -> result<_, error-code>; + /// Set up inbound & outbound communication channels, optionally to a specific peer. + /// + /// This function only changes the local socket configuration and does not generate any network traffic. + /// On success, the `remote-address` of the socket is updated. The `local-address` may be updated as well, + /// based on the best network path to `remote-address`. + /// + /// When a `remote-address` is provided, the returned streams are limited to communicating with that specific peer: + /// - `send` can only be used to send to this destination. + /// - `receive` will only return datagrams sent from the provided `remote-address`. + /// + /// This method may be called multiple times on the same socket to change its association, but + /// only the most recently returned pair of streams will be operational. Implementations may trap if + /// the streams returned by a previous invocation haven't been dropped yet before calling `stream` again. + /// + /// The POSIX equivalent in pseudo-code is: + /// ```text + /// if (was previously connected) { + /// connect(s, AF_UNSPEC) + /// } + /// if (remote_address is Some) { + /// connect(s, remote_address) + /// } + /// ``` + /// + /// Unlike in POSIX, the socket must already be explicitly bound. + /// + /// # Typical errors + /// - `invalid-argument`: The `remote-address` has the wrong address family. (EAFNOSUPPORT) + /// - `invalid-argument`: The IP address in `remote-address` is set to INADDR_ANY (`0.0.0.0` / `::`). (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `invalid-argument`: The port in `remote-address` is set to 0. (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `invalid-state`: The socket is not bound. + /// - `address-in-use`: Tried to perform an implicit bind, but there were no ephemeral ports available. (EADDRINUSE, EADDRNOTAVAIL on Linux, EAGAIN on BSD) + /// - `remote-unreachable`: The remote address is not reachable. (ECONNRESET, ENETRESET, EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// - `connection-refused`: The connection was refused. (ECONNREFUSED) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + %stream: func(remote-address: option) -> result, error-code>; + /// Get the current bound address. + /// + /// POSIX mentions: + /// > If the socket has not been bound to a local name, the value + /// > stored in the object pointed to by `address` is unspecified. + /// + /// WASI is stricter and requires `local-address` to return `invalid-state` when the socket hasn't been bound yet. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not bound to any local address. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + local-address: func() -> result; + /// Get the address the socket is currently streaming to. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not streaming to a specific remote address. (ENOTCONN) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + remote-address: func() -> result; + /// Whether this is a IPv4 or IPv6 socket. + /// + /// Equivalent to the SO_DOMAIN socket option. + @since(version = 0.2.0) + address-family: func() -> ip-address-family; + /// Equivalent to the IP_TTL & IPV6_UNICAST_HOPS socket options. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The TTL value must be 1 or higher. + @since(version = 0.2.0) + unicast-hop-limit: func() -> result; + @since(version = 0.2.0) + set-unicast-hop-limit: func(value: u8) -> result<_, error-code>; + /// The kernel buffer space reserved for sends/receives on this socket. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// Any other value will never cause an error, but it might be silently clamped and/or rounded. + /// I.e. after setting a value, reading the same setting back may return a different value. + /// + /// Equivalent to the SO_RCVBUF and SO_SNDBUF socket options. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.2.0) + receive-buffer-size: func() -> result; + @since(version = 0.2.0) + set-receive-buffer-size: func(value: u64) -> result<_, error-code>; + @since(version = 0.2.0) + send-buffer-size: func() -> result; + @since(version = 0.2.0) + set-send-buffer-size: func(value: u64) -> result<_, error-code>; + /// Create a `pollable` which will resolve once the socket is ready for I/O. + /// + /// Note: this function is here for WASI 0.2 only. + /// It's planned to be removed when `future` is natively supported in Preview3. + @since(version = 0.2.0) + subscribe: func() -> pollable; + } + + @since(version = 0.2.0) + resource incoming-datagram-stream { + /// Receive messages on the socket. + /// + /// This function attempts to receive up to `max-results` datagrams on the socket without blocking. + /// The returned list may contain fewer elements than requested, but never more. + /// + /// This function returns successfully with an empty list when either: + /// - `max-results` is 0, or: + /// - `max-results` is greater than 0, but no results are immediately available. + /// This function never returns `error(would-block)`. + /// + /// # Typical errors + /// - `remote-unreachable`: The remote address is not reachable. (ECONNRESET, ENETRESET on Windows, EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// - `connection-refused`: The connection was refused. (ECONNREFUSED) + /// + /// # References + /// - + /// - + /// - + /// - + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + receive: func(max-results: u64) -> result, error-code>; + /// Create a `pollable` which will resolve once the stream is ready to receive again. + /// + /// Note: this function is here for WASI 0.2 only. + /// It's planned to be removed when `future` is natively supported in Preview3. + @since(version = 0.2.0) + subscribe: func() -> pollable; + } + + @since(version = 0.2.0) + resource outgoing-datagram-stream { + /// Check readiness for sending. This function never blocks. + /// + /// Returns the number of datagrams permitted for the next call to `send`, + /// or an error. Calling `send` with more datagrams than this function has + /// permitted will trap. + /// + /// When this function returns ok(0), the `subscribe` pollable will + /// become ready when this function will report at least ok(1), or an + /// error. + /// + /// Never returns `would-block`. + check-send: func() -> result; + /// Send messages on the socket. + /// + /// This function attempts to send all provided `datagrams` on the socket without blocking and + /// returns how many messages were actually sent (or queued for sending). This function never + /// returns `error(would-block)`. If none of the datagrams were able to be sent, `ok(0)` is returned. + /// + /// This function semantically behaves the same as iterating the `datagrams` list and sequentially + /// sending each individual datagram until either the end of the list has been reached or the first error occurred. + /// If at least one datagram has been sent successfully, this function never returns an error. + /// + /// If the input list is empty, the function returns `ok(0)`. + /// + /// Each call to `send` must be permitted by a preceding `check-send`. Implementations must trap if + /// either `check-send` was not called or `datagrams` contains more items than `check-send` permitted. + /// + /// # Typical errors + /// - `invalid-argument`: The `remote-address` has the wrong address family. (EAFNOSUPPORT) + /// - `invalid-argument`: The IP address in `remote-address` is set to INADDR_ANY (`0.0.0.0` / `::`). (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `invalid-argument`: The port in `remote-address` is set to 0. (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `invalid-argument`: The socket is in "connected" mode and `remote-address` is `some` value that does not match the address passed to `stream`. (EISCONN) + /// - `invalid-argument`: The socket is not "connected" and no value for `remote-address` was provided. (EDESTADDRREQ) + /// - `remote-unreachable`: The remote address is not reachable. (ECONNRESET, ENETRESET on Windows, EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// - `connection-refused`: The connection was refused. (ECONNREFUSED) + /// - `datagram-too-large`: The datagram is too large. (EMSGSIZE) + /// + /// # References + /// - + /// - + /// - + /// - + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + send: func(datagrams: list) -> result; + /// Create a `pollable` which will resolve once the stream is ready to send again. + /// + /// Note: this function is here for WASI 0.2 only. + /// It's planned to be removed when `future` is natively supported in Preview3. + @since(version = 0.2.0) + subscribe: func() -> pollable; + } +} + +@since(version = 0.2.0) +interface udp-create-socket { + @since(version = 0.2.0) + use network.{network, error-code, ip-address-family}; + @since(version = 0.2.0) + use udp.{udp-socket}; + + /// Create a new UDP socket. + /// + /// Similar to `socket(AF_INET or AF_INET6, SOCK_DGRAM, IPPROTO_UDP)` in POSIX. + /// On IPv6 sockets, IPV6_V6ONLY is enabled by default and can't be configured otherwise. + /// + /// This function does not require a network capability handle. This is considered to be safe because + /// at time of creation, the socket is not bound to any `network` yet. Up to the moment `bind` is called, + /// the socket is effectively an in-memory configuration object, unable to communicate with the outside world. + /// + /// All sockets are non-blocking. Use the wasi-poll interface to block on asynchronous operations. + /// + /// # Typical errors + /// - `not-supported`: The specified `address-family` is not supported. (EAFNOSUPPORT) + /// - `new-socket-limit`: The new socket resource could not be created because of a system limit. (EMFILE, ENFILE) + /// + /// # References: + /// - + /// - + /// - + /// - + @since(version = 0.2.0) + create-udp-socket: func(address-family: ip-address-family) -> result; +} + +@since(version = 0.2.0) +world imports { + @since(version = 0.2.0) + import wasi:io/error@0.2.6; + @since(version = 0.2.0) + import network; + @since(version = 0.2.0) + import instance-network; + @since(version = 0.2.0) + import wasi:io/poll@0.2.6; + @since(version = 0.2.0) + import udp; + @since(version = 0.2.0) + import udp-create-socket; + @since(version = 0.2.0) + import wasi:io/streams@0.2.6; + @since(version = 0.2.0) + import wasi:clocks/monotonic-clock@0.2.6; + @since(version = 0.2.0) + import tcp; + @since(version = 0.2.0) + import tcp-create-socket; + @since(version = 0.2.0) + import ip-name-lookup; +} diff --git a/sdks/go/wit/deps/sockets/sockets.wit b/sdks/go/wit/deps/sockets/sockets.wit new file mode 100644 index 0000000000..0dd27a4fc4 --- /dev/null +++ b/sdks/go/wit/deps/sockets/sockets.wit @@ -0,0 +1,839 @@ +package wasi:sockets@0.3.0; + +@since(version = 0.3.0) +interface types { + @since(version = 0.3.0) + use wasi:clocks/types@0.3.0.{duration}; + + /// Error codes. + /// + /// In theory, every API can return any error code. + /// In practice, API's typically only return the errors documented per API + /// combined with a couple of errors that are always possible: + /// - `other` + /// - `access-denied` + /// - `not-supported` + /// - `out-of-memory` + /// + /// See each individual API for what the POSIX equivalents are. They sometimes differ per API. + @since(version = 0.3.0) + variant error-code { + /// Access denied. + /// + /// POSIX equivalent: EACCES, EPERM + access-denied, + /// The operation is not supported. + /// + /// POSIX equivalent: EOPNOTSUPP, ENOPROTOOPT, EPFNOSUPPORT, EPROTONOSUPPORT, ESOCKTNOSUPPORT + not-supported, + /// One of the arguments is invalid. + /// + /// POSIX equivalent: EINVAL, EDESTADDRREQ, EAFNOSUPPORT + invalid-argument, + /// Not enough memory to complete the operation. + /// + /// POSIX equivalent: ENOMEM, ENOBUFS + out-of-memory, + /// The operation timed out before it could finish completely. + /// + /// POSIX equivalent: ETIMEDOUT + timeout, + /// The operation is not valid in the socket's current state. + invalid-state, + /// The local address is not available. + /// + /// POSIX equivalent: EADDRNOTAVAIL + address-not-bindable, + /// A bind operation failed because the provided address is already in + /// use or because there are no ephemeral ports available. + /// + /// POSIX equivalent: EADDRINUSE + address-in-use, + /// The remote address is not reachable. + /// + /// POSIX equivalent: EHOSTUNREACH, EHOSTDOWN, ENETDOWN, ENETUNREACH, ENONET + remote-unreachable, + /// The connection was forcefully rejected. + /// + /// POSIX equivalent: ECONNREFUSED + connection-refused, + /// A write failed because the connection was broken. + /// + /// POSIX equivalent: EPIPE + connection-broken, + /// The connection was reset. + /// + /// POSIX equivalent: ECONNRESET + connection-reset, + /// The connection was aborted. + /// + /// POSIX equivalent: ECONNABORTED + connection-aborted, + /// The size of a datagram sent to a UDP socket exceeded the maximum + /// supported size. + /// + /// POSIX equivalent: EMSGSIZE + datagram-too-large, + /// A catch-all for errors not captured by the existing variants. + /// Implementations can use this to extend the error type without + /// breaking existing code. + other(option), + } + + @since(version = 0.3.0) + enum ip-address-family { + /// Similar to `AF_INET` in POSIX. + ipv4, + /// Similar to `AF_INET6` in POSIX. + ipv6, + } + + @since(version = 0.3.0) + type ipv4-address = tuple; + + @since(version = 0.3.0) + type ipv6-address = tuple; + + @since(version = 0.3.0) + variant ip-address { + ipv4(ipv4-address), + ipv6(ipv6-address), + } + + @since(version = 0.3.0) + record ipv4-socket-address { + /// sin_port + port: u16, + /// sin_addr + address: ipv4-address, + } + + @since(version = 0.3.0) + record ipv6-socket-address { + /// sin6_port + port: u16, + /// sin6_flowinfo + flow-info: u32, + /// sin6_addr + address: ipv6-address, + /// sin6_scope_id + scope-id: u32, + } + + @since(version = 0.3.0) + variant ip-socket-address { + ipv4(ipv4-socket-address), + ipv6(ipv6-socket-address), + } + + /// A TCP socket resource. + /// + /// The socket can be in one of the following states: + /// - `unbound` + /// - `bound` (See note below) + /// - `listening` + /// - `connecting` + /// - `connected` + /// - `closed` + /// See + /// for more information. + /// + /// Note: Except where explicitly mentioned, whenever this documentation uses + /// the term "bound" without backticks it actually means: in the `bound` state *or higher*. + /// (i.e. `bound`, `listening`, `connecting` or `connected`) + /// + /// WASI uses shared ownership semantics: the `tcp-socket` handle and all + /// derived `stream` and `future` values reference a single underlying OS + /// socket: + /// - Send/receive streams remain functional after the original `tcp-socket` + /// handle is dropped. + /// - The stream returned by `listen` behaves similarly. + /// - Client sockets returned by `tcp-socket::listen` are independent and do + /// not keep the listening socket alive. + /// + /// The OS socket is closed only after the last handle is dropped. This + /// model has observable effects; for example, it affects when the local + /// port binding is released. + /// + /// In addition to the general error codes documented on the + /// `types::error-code` type, TCP socket methods may always return + /// `error(invalid-state)` when in the `closed` state. + @since(version = 0.3.0) + resource tcp-socket { + /// Create a new TCP socket. + /// + /// Similar to `socket(AF_INET or AF_INET6, SOCK_STREAM, IPPROTO_TCP)` + /// in POSIX. On IPv6 sockets, IPV6_V6ONLY is enabled by default and + /// can't be configured otherwise. + /// + /// Unlike POSIX, WASI sockets have no notion of a socket-level + /// `O_NONBLOCK` flag. Instead they fully rely on the Component Model's + /// async support. + /// + /// # Typical errors + /// - `not-supported`: The `address-family` is not supported. (EAFNOSUPPORT) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + create: static func(address-family: ip-address-family) -> result; + /// Bind the socket to the provided IP address and port. + /// + /// If the IP address is zero (`0.0.0.0` in IPv4, `::` in IPv6), it is + /// left to the implementation to decide which network interface(s) to + /// bind to. If the TCP/UDP port is zero, the socket will be bound to a + /// random free port. + /// + /// Bind can be attempted multiple times on the same socket, even with + /// different arguments on each iteration. But never concurrently and + /// only as long as the previous bind failed. Once a bind succeeds, the + /// binding can't be changed anymore. + /// + /// # Typical errors + /// - `invalid-argument`: The `local-address` has the wrong address family. (EAFNOSUPPORT, EFAULT on Windows) + /// - `invalid-argument`: `local-address` is not a unicast address. (EINVAL) + /// - `invalid-argument`: `local-address` is an IPv4-mapped IPv6 address. (EINVAL) + /// - `invalid-state`: The socket is already bound. (EINVAL) + /// - `address-in-use`: No ephemeral ports available. (EADDRINUSE, ENOBUFS on Windows) + /// - `address-in-use`: Address is already in use. (EADDRINUSE) + /// - `address-not-bindable`: `local-address` is not an address that can be bound to. (EADDRNOTAVAIL) + /// + /// # Implementors note + /// The bind operation shouldn't be affected by the TIME_WAIT state of a + /// recently closed socket on the same local address. In practice this + /// means that the SO_REUSEADDR socket option should be set implicitly + /// on all platforms, except on Windows where this is the default + /// behavior and SO_REUSEADDR performs something different. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + bind: func(local-address: ip-socket-address) -> result<_, error-code>; + /// Connect to a remote endpoint. + /// + /// On success, the socket is transitioned into the `connected` state + /// and the `remote-address` of the socket is updated. + /// The `local-address` may be updated as well, based on the best network + /// path to `remote-address`. If the socket was not already explicitly + /// bound, this function will implicitly bind the socket to a random + /// free port. + /// + /// After a failed connection attempt, the socket will be in the `closed` + /// state and the only valid action left is to `drop` the socket. A single + /// socket can not be used to connect more than once. + /// + /// # Typical errors + /// - `invalid-argument`: The `remote-address` has the wrong address family. (EAFNOSUPPORT) + /// - `invalid-argument`: `remote-address` is not a unicast address. (EINVAL, ENETUNREACH on Linux, EAFNOSUPPORT on MacOS) + /// - `invalid-argument`: `remote-address` is an IPv4-mapped IPv6 address. (EINVAL, EADDRNOTAVAIL on Illumos) + /// - `invalid-argument`: The IP address in `remote-address` is set to INADDR_ANY (`0.0.0.0` / `::`). (EADDRNOTAVAIL on Windows) + /// - `invalid-argument`: The port in `remote-address` is set to 0. (EADDRNOTAVAIL on Windows) + /// - `invalid-state`: The socket is already in the `connecting` state. (EALREADY) + /// - `invalid-state`: The socket is already in the `connected` state. (EISCONN) + /// - `invalid-state`: The socket is already in the `listening` state. (EOPNOTSUPP, EINVAL on Windows) + /// - `timeout`: Connection timed out. (ETIMEDOUT) + /// - `connection-refused`: The connection was forcefully rejected. (ECONNREFUSED) + /// - `connection-reset`: The connection was reset. (ECONNRESET) + /// - `connection-aborted`: The connection was aborted. (ECONNABORTED) + /// - `remote-unreachable`: The remote address is not reachable. (EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// - `address-in-use`: Tried to perform an implicit bind, but there were no ephemeral ports available. (EADDRINUSE, EADDRNOTAVAIL on Linux, EAGAIN on BSD) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + connect: async func(remote-address: ip-socket-address) -> result<_, error-code>; + /// Start listening and return a stream of new inbound connections. + /// + /// Transitions the socket into the `listening` state. This can be called + /// at most once per socket. + /// + /// If the socket is not already explicitly bound, this function will + /// implicitly bind the socket to a random free port. + /// + /// Normally, the returned sockets are bound, in the `connected` state + /// and immediately ready for I/O. Though, depending on exact timing and + /// circumstances, a newly accepted connection may already be `closed` + /// by the time the server attempts to perform its first I/O on it. This + /// is true regardless of whether the WASI implementation uses + /// "synthesized" sockets or not (see Implementors Notes below). + /// + /// The following properties are inherited from the listener socket: + /// - `address-family` + /// - `keep-alive-enabled` + /// - `keep-alive-idle-time` + /// - `keep-alive-interval` + /// - `keep-alive-count` + /// - `hop-limit` + /// - `receive-buffer-size` + /// - `send-buffer-size` + /// + /// # Typical errors + /// - `invalid-state`: The socket is already in the `connected` state. (EISCONN, EINVAL on BSD) + /// - `invalid-state`: The socket is already in the `listening` state. + /// - `address-in-use`: Tried to perform an implicit bind, but there were no ephemeral ports available. (EADDRINUSE) + /// + /// # Implementors note + /// This method returns a single perpetual stream that should only close + /// on fatal errors (if any). Yet, the POSIX' `accept` function may also + /// return transient errors (e.g. ECONNABORTED). The exact details differ + /// per operation system. For example, the Linux manual mentions: + /// + /// > Linux accept() passes already-pending network errors on the new + /// > socket as an error code from accept(). This behavior differs from + /// > other BSD socket implementations. For reliable operation the + /// > application should detect the network errors defined for the + /// > protocol after accept() and treat them like EAGAIN by retrying. + /// > In the case of TCP/IP, these are ENETDOWN, EPROTO, ENOPROTOOPT, + /// > EHOSTDOWN, ENONET, EHOSTUNREACH, EOPNOTSUPP, and ENETUNREACH. + /// Source: https://man7.org/linux/man-pages/man2/accept.2.html + /// + /// WASI implementations have two options to handle this: + /// - Optionally log it and then skip over non-fatal errors returned by + /// `accept`. Guest code never gets to see these failures. Or: + /// - Synthesize a `tcp-socket` resource that exposes the error when + /// attempting to send or receive on it. Guest code then sees these + /// failures as regular I/O errors. + /// + /// In either case, the stream returned by this `listen` method remains + /// operational. + /// + /// WASI requires `listen` to perform an implicit bind if the socket + /// has not already been bound. Not all platforms (notably Windows) + /// exhibit this behavior out of the box. On platforms that require it, + /// the WASI implementation can emulate this behavior by performing + /// the bind itself if the guest hasn't already done so. + /// + /// # References + /// - + /// - + /// - + /// - + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + listen: func() -> result, error-code>; + /// Transmit data to peer. + /// + /// The caller should close the stream when it has no more data to send + /// to the peer. Under normal circumstances this will cause a FIN packet + /// to be sent out. Closing the stream is equivalent to calling + /// `shutdown(SHUT_WR)` in POSIX. + /// + /// This function may be called at most once and returns once the full + /// contents of the stream are transmitted or an error is encountered. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not in the `connected` state. (ENOTCONN) + /// - `invalid-state`: `send` has already been called on this socket. + /// - `connection-broken`: The connection is not writable anymore. (EPIPE, ECONNABORTED on Windows) + /// - `connection-reset`: The connection was reset. (ECONNRESET) + /// - `remote-unreachable`: The remote address is not reachable. (EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + send: func(data: stream) -> future>; + /// Read data from peer. + /// + /// Returns a `stream` of data sent by the peer. The implementation + /// drops the stream once no more data is available. At that point, the + /// returned `future` resolves to: + /// - `ok` after a graceful shutdown from the peer (i.e. a FIN packet), or + /// - `err` if the socket was closed abnormally. + /// + /// `receive` may be called only once per socket. Subsequent calls return + /// a closed stream and a future resolved to `err(invalid-state)`. + /// + /// If the caller is not expecting to receive any more data from the peer, + /// they should drop the stream. Any data still in the receive queue + /// will be discarded. This is equivalent to calling `shutdown(SHUT_RD)` + /// in POSIX. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not in the `connected` state. (ENOTCONN) + /// - `invalid-state`: `receive` has already been called on this socket. + /// - `connection-reset`: The connection was reset. (ECONNRESET) + /// - `remote-unreachable`: The remote address is not reachable. (EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + receive: func() -> tuple, future>>; + /// Get the bound local address. + /// + /// POSIX mentions: + /// > If the socket has not been bound to a local name, the value + /// > stored in the object pointed to by `address` is unspecified. + /// + /// WASI is stricter and requires `get-local-address` to return + /// `invalid-state` when the socket hasn't been bound yet. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not bound to any local address. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + get-local-address: func() -> result; + /// Get the remote address. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not connected to a remote address. (ENOTCONN) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + get-remote-address: func() -> result; + /// Whether the socket is in the `listening` state. + /// + /// Equivalent to the SO_ACCEPTCONN socket option. + @since(version = 0.3.0) + get-is-listening: func() -> bool; + /// Whether this is a IPv4 or IPv6 socket. + /// + /// This is the value passed to the constructor. + /// + /// Equivalent to the SO_DOMAIN socket option. + @since(version = 0.3.0) + get-address-family: func() -> ip-address-family; + /// Hints the desired listen queue size. Implementations are free to + /// ignore this. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// Any other value will never cause an error, but it might be silently + /// clamped and/or rounded. + /// + /// # Typical errors + /// - `not-supported`: (set) The platform does not support changing the backlog size after the initial listen. + /// - `invalid-argument`: (set) The provided value was 0. + /// - `invalid-state`: (set) The socket is in the `connecting` or `connected` state. + @since(version = 0.3.0) + set-listen-backlog-size: func(value: u64) -> result<_, error-code>; + /// Enables or disables keepalive. + /// + /// The keepalive behavior can be adjusted using: + /// - `keep-alive-idle-time` + /// - `keep-alive-interval` + /// - `keep-alive-count` + /// These properties can be configured while `keep-alive-enabled` is + /// false, but only come into effect when `keep-alive-enabled` is true. + /// + /// Equivalent to the SO_KEEPALIVE socket option. + @since(version = 0.3.0) + get-keep-alive-enabled: func() -> result; + @since(version = 0.3.0) + set-keep-alive-enabled: func(value: bool) -> result<_, error-code>; + /// Amount of time the connection has to be idle before TCP starts + /// sending keepalive packets. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// All other values are accepted without error, but may be + /// clamped or rounded. As a result, the value read back from + /// this setting may differ from the value that was set. + /// + /// Equivalent to the TCP_KEEPIDLE socket option. (TCP_KEEPALIVE on MacOS) + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.3.0) + get-keep-alive-idle-time: func() -> result; + @since(version = 0.3.0) + set-keep-alive-idle-time: func(value: duration) -> result<_, error-code>; + /// The time between keepalive packets. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// All other values are accepted without error, but may be + /// clamped or rounded. As a result, the value read back from + /// this setting may differ from the value that was set. + /// + /// Equivalent to the TCP_KEEPINTVL socket option. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.3.0) + get-keep-alive-interval: func() -> result; + @since(version = 0.3.0) + set-keep-alive-interval: func(value: duration) -> result<_, error-code>; + /// The maximum amount of keepalive packets TCP should send before + /// aborting the connection. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// All other values are accepted without error, but may be + /// clamped or rounded. As a result, the value read back from + /// this setting may differ from the value that was set. + /// + /// Equivalent to the TCP_KEEPCNT socket option. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.3.0) + get-keep-alive-count: func() -> result; + @since(version = 0.3.0) + set-keep-alive-count: func(value: u32) -> result<_, error-code>; + /// Equivalent to the IP_TTL & IPV6_UNICAST_HOPS socket options. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The TTL value must be 1 or higher. + @since(version = 0.3.0) + get-hop-limit: func() -> result; + @since(version = 0.3.0) + set-hop-limit: func(value: u8) -> result<_, error-code>; + /// Kernel buffer space reserved for sending/receiving on this socket. + /// Implementations usually treat this as a cap the buffer can grow to, + /// rather than allocating the full amount immediately. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// All other values are accepted without error, but may be + /// clamped or rounded. As a result, the value read back from + /// this setting may differ from the value that was set. + /// + /// This is only a performance hint. The implementation may ignore it or + /// tweak it based on real traffic patterns. + /// Linux and macOS appear to behave differently depending on whether a + /// buffer size was explicitly set. When set, they tend to honor it; when + /// not set, they dynamically adjust the buffer size as the connection + /// progresses. This is especially noticeable when comparing the values + /// from before and after connection establishment. + /// + /// Equivalent to the SO_RCVBUF and SO_SNDBUF socket options. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.3.0) + get-receive-buffer-size: func() -> result; + @since(version = 0.3.0) + set-receive-buffer-size: func(value: u64) -> result<_, error-code>; + @since(version = 0.3.0) + get-send-buffer-size: func() -> result; + @since(version = 0.3.0) + set-send-buffer-size: func(value: u64) -> result<_, error-code>; + } + + /// A UDP socket handle. + @since(version = 0.3.0) + resource udp-socket { + /// Create a new UDP socket. + /// + /// Similar to `socket(AF_INET or AF_INET6, SOCK_DGRAM, IPPROTO_UDP)` + /// in POSIX. On IPv6 sockets, IPV6_V6ONLY is enabled by default and + /// can't be configured otherwise. + /// + /// Unlike POSIX, WASI sockets have no notion of a socket-level + /// `O_NONBLOCK` flag. Instead they fully rely on the Component Model's + /// async support. + /// + /// # References: + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + create: static func(address-family: ip-address-family) -> result; + /// Bind the socket to the provided IP address and port. + /// + /// If the IP address is zero (`0.0.0.0` in IPv4, `::` in IPv6), it is + /// left to the implementation to decide which network interface(s) to + /// bind to. If the port is zero, the socket will be bound to a random + /// free port. + /// + /// # Typical errors + /// - `invalid-argument`: The `local-address` has the wrong address family. (EAFNOSUPPORT, EFAULT on Windows) + /// - `invalid-state`: The socket is already bound. (EINVAL) + /// - `address-in-use`: No ephemeral ports available. (EADDRINUSE, ENOBUFS on Windows) + /// - `address-in-use`: Address is already in use. (EADDRINUSE) + /// - `address-not-bindable`: `local-address` is not an address that can be bound to. (EADDRNOTAVAIL) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + bind: func(local-address: ip-socket-address) -> result<_, error-code>; + /// Associate this socket with a specific peer address. + /// + /// On success, the `remote-address` of the socket is updated. + /// The `local-address` may be updated as well, based on the best network + /// path to `remote-address`. If the socket was not already explicitly + /// bound, this function will implicitly bind the socket to a random + /// free port. + /// + /// When a UDP socket is "connected", the `send` and `receive` methods + /// are limited to communicating with that peer only: + /// - `send` can only be used to send to this destination. + /// - `receive` will only return datagrams sent from the provided `remote-address`. + /// + /// The name "connect" was kept to align with the existing POSIX + /// terminology. Other than that, this function only changes the local + /// socket configuration and does not generate any network traffic. + /// The peer is not aware of this "connection". + /// + /// This method may be called multiple times on the same socket to change + /// its association, but only the most recent one will be effective. + /// + /// # Typical errors + /// - `invalid-argument`: The `remote-address` has the wrong address family. (EAFNOSUPPORT) + /// - `invalid-argument`: The IP address in `remote-address` is set to INADDR_ANY (`0.0.0.0` / `::`). (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `invalid-argument`: The port in `remote-address` is set to 0. (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `address-in-use`: Tried to perform an implicit bind, but there were no ephemeral ports available. (EADDRINUSE, EADDRNOTAVAIL on Linux, EAGAIN on BSD) + /// + /// # Implementors note + /// If the socket is already connected, some platforms (e.g. Linux) + /// require a disconnect before connecting to a different peer address. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + connect: func(remote-address: ip-socket-address) -> result<_, error-code>; + /// Dissociate this socket from its peer address. + /// + /// After calling this method, `send` & `receive` are free to communicate + /// with any remote address again. + /// + /// The POSIX equivalent of this is calling `connect` with an `AF_UNSPEC` address. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not connected. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + disconnect: func() -> result<_, error-code>; + /// Send a message on the socket to a particular peer. + /// + /// If the socket is connected, the peer address may be left empty. In + /// that case this is equivalent to `send` in POSIX. Otherwise it is + /// equivalent to `sendto`. + /// + /// Additionally, if the socket is connected, a `remote-address` argument + /// _may_ be provided but then it must be identical to the address + /// passed to `connect`. + /// + /// If the socket has not been explicitly bound, it will be + /// implicitly bound to a random free port. + /// + /// Implementations may trap if the `data` length exceeds 64 KiB. + /// + /// # Typical errors + /// - `invalid-argument`: The `remote-address` has the wrong address family. (EAFNOSUPPORT) + /// - `invalid-argument`: The IP address in `remote-address` is set to INADDR_ANY (`0.0.0.0` / `::`). (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `invalid-argument`: The port in `remote-address` is set to 0. (EDESTADDRREQ, EADDRNOTAVAIL) + /// - `invalid-argument`: The socket is in "connected" mode and `remote-address` is `some` value that does not match the address passed to `connect`. (EISCONN) + /// - `invalid-argument`: The socket is not "connected" and no value for `remote-address` was provided. (EDESTADDRREQ) + /// - `remote-unreachable`: The remote address is not reachable. (ECONNRESET, ENETRESET on Windows, EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// - `connection-refused`: The connection was refused. (ECONNREFUSED) + /// - `datagram-too-large`: The datagram is too large. (EMSGSIZE) + /// - `address-in-use`: Tried to perform an implicit bind, but there were no ephemeral ports available. (EADDRINUSE) + /// + /// # Implementors note + /// WASI requires `send` to perform an implicit bind if the socket + /// has not been bound. Not all platforms (notably Windows) exhibit + /// this behavior natively. On such platforms, the WASI implementation + /// should emulate it by performing the bind if the guest has not + /// already done so. + /// + /// # References + /// - + /// - + /// - + /// - + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + send: async func(data: list, remote-address: option) -> result<_, error-code>; + /// Receive a message on the socket. + /// + /// On success, the return value contains a tuple of the received data + /// and the address of the sender. Theoretical maximum length of the + /// data is 64 KiB. Though in practice, it will typically be less than + /// 1500 bytes. + /// + /// If the socket is connected, the sender address is guaranteed to + /// match the remote address passed to `connect`. + /// + /// # Typical errors + /// - `invalid-state`: The socket has not been bound yet. + /// - `remote-unreachable`: The remote address is not reachable. (ECONNRESET, ENETRESET on Windows, EHOSTUNREACH, EHOSTDOWN, ENETUNREACH, ENETDOWN, ENONET) + /// - `connection-refused`: The connection was refused. (ECONNREFUSED) + /// + /// # References + /// - + /// - + /// - + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + receive: async func() -> result, ip-socket-address>, error-code>; + /// Get the current bound address. + /// + /// POSIX mentions: + /// > If the socket has not been bound to a local name, the value + /// > stored in the object pointed to by `address` is unspecified. + /// + /// WASI is stricter and requires `get-local-address` to return + /// `invalid-state` when the socket hasn't been bound yet. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not bound to any local address. + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + get-local-address: func() -> result; + /// Get the address the socket is currently "connected" to. + /// + /// # Typical errors + /// - `invalid-state`: The socket is not "connected" to a specific remote address. (ENOTCONN) + /// + /// # References + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + get-remote-address: func() -> result; + /// Whether this is a IPv4 or IPv6 socket. + /// + /// This is the value passed to the constructor. + /// + /// Equivalent to the SO_DOMAIN socket option. + @since(version = 0.3.0) + get-address-family: func() -> ip-address-family; + /// Equivalent to the IP_TTL & IPV6_UNICAST_HOPS socket options. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The TTL value must be 1 or higher. + @since(version = 0.3.0) + get-unicast-hop-limit: func() -> result; + @since(version = 0.3.0) + set-unicast-hop-limit: func(value: u8) -> result<_, error-code>; + /// Kernel buffer space reserved for sending/receiving on this socket. + /// Implementations usually treat this as a cap the buffer can grow to, + /// rather than allocating the full amount immediately. + /// + /// If the provided value is 0, an `invalid-argument` error is returned. + /// All other values are accepted without error, but may be + /// clamped or rounded. As a result, the value read back from + /// this setting may differ from the value that was set. + /// + /// Equivalent to the SO_RCVBUF and SO_SNDBUF socket options. + /// + /// # Typical errors + /// - `invalid-argument`: (set) The provided value was 0. + @since(version = 0.3.0) + get-receive-buffer-size: func() -> result; + @since(version = 0.3.0) + set-receive-buffer-size: func(value: u64) -> result<_, error-code>; + @since(version = 0.3.0) + get-send-buffer-size: func() -> result; + @since(version = 0.3.0) + set-send-buffer-size: func(value: u64) -> result<_, error-code>; + } +} + +@since(version = 0.3.0) +interface ip-name-lookup { + @since(version = 0.3.0) + use types.{ip-address}; + + /// Lookup error codes. + @since(version = 0.3.0) + variant error-code { + /// Access denied. + /// + /// POSIX equivalent: EACCES, EPERM + access-denied, + /// `name` is a syntactically invalid domain name or IP address. + /// + /// POSIX equivalent: EINVAL + invalid-argument, + /// Name does not exist or has no suitable associated IP addresses. + /// + /// POSIX equivalent: EAI_NONAME, EAI_NODATA, EAI_ADDRFAMILY + name-unresolvable, + /// A temporary failure in name resolution occurred. + /// + /// POSIX equivalent: EAI_AGAIN + temporary-resolver-failure, + /// A permanent failure in name resolution occurred. + /// + /// POSIX equivalent: EAI_FAIL + permanent-resolver-failure, + /// A catch-all for errors not captured by the existing variants. + /// Implementations can use this to extend the error type without + /// breaking existing code. + other(option), + } + + /// Resolve an internet host name to a list of IP addresses. + /// + /// Unicode domain names are automatically converted to ASCII using IDNA + /// encoding. If the input is an IP address string, the address is parsed + /// and returned as-is without making any external requests. + /// + /// See the wasi-socket proposal README.md for a comparison with getaddrinfo. + /// + /// The results are returned in connection order preference. + /// + /// This function never succeeds with 0 results. It either fails or succeeds + /// with at least one address. Additionally, this function never returns + /// IPv4-mapped IPv6 addresses. + /// + /// # References: + /// - + /// - + /// - + /// - + @since(version = 0.3.0) + resolve-addresses: async func(name: string) -> result, error-code>; +} + +@since(version = 0.3.0) +world imports { + @since(version = 0.3.0) + import wasi:clocks/types@0.3.0; + @since(version = 0.3.0) + import types; + @since(version = 0.3.0) + import ip-name-lookup; +} diff --git a/sdks/go/wit/main.wit b/sdks/go/wit/main.wit new file mode 100644 index 0000000000..fe4584d6d4 --- /dev/null +++ b/sdks/go/wit/main.wit @@ -0,0 +1,47 @@ +package golem:agent-guest; + +world agent-guest { + import golem:api/host@1.5.0; + import golem:agent/host@2.0.0; + + import golem:rdbms/ignite2@1.5.0; + import golem:rdbms/postgres@1.5.0; + import golem:rdbms/mysql@1.5.0; + import golem:rdbms/types@1.5.0; + + import golem:api/context@1.5.0; + import golem:api/oplog@1.5.0; + import golem:api/retry@1.5.0; + import golem:durability/durability@1.5.0; + import golem:quota/types@1.5.0; + import golem:secrets/types@0.1.0; + import golem:secrets/reveal@0.1.0; + + import wasi:cli/environment@0.3.0; + + import wasi:blobstore/blobstore; + import wasi:blobstore/container; + import wasi:blobstore/types; + + import wasi:keyvalue/eventual@0.1.0; + import wasi:keyvalue/eventual-batch@0.1.0; + import wasi:keyvalue/types@0.1.0; + import wasi:keyvalue/wasi-keyvalue-error@0.1.0; + + import wasi:config/store@0.2.0-draft; + + import golem:websocket/client@1.5.0; + + // Outgoing HTTP. HTTP is not part of the agent world: each SDK imports it + // itself. p3 collapses p2's outgoing-handler/future dance into a single + // `send: async func`, which surfaces in Go as a plain blocking call. + import wasi:http/client@0.3.0; + + include golem:agent/agent-guest@2.0.0; + + // TODO(phase 6): export golem:tool/guest@0.1.0 once the tool registry lands. + // (The TS runtime omits it due to p3 nested streams; Go has no such limit.) + + export golem:api/save-snapshot@1.5.0; + export golem:api/load-snapshot@1.5.0; +} From dcca2720bdd900aa499afa1650513d4f34c70d54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Wed, 22 Jul 2026 23:00:26 +0200 Subject: [PATCH 002/149] go sdk core: registry, dispatch, reflection schemas, native tests --- sdks/go/examples/counter/counter.go | 41 +++ sdks/go/examples/{smoke => counter}/go.mod | 2 +- sdks/go/examples/{smoke => counter}/go.sum | 0 sdks/go/examples/smoke/main.go | 13 - sdks/go/golem.go | 123 +++++++- sdks/go/golem_test.go | 271 ++++++++++++++++++ sdks/go/guest.go | 148 ++++++++++ .../export_golem_agent_guest/exports.go | 67 +++++ .../export_golem_api_load_snapshot/exports.go | 33 +++ .../export_golem_api_save_snapshot/exports.go | 31 ++ .../wit/export_golem_agent_guest/empty.s | 3 - .../export_golem_agent_guest/wit_bindings.go | 54 ---- .../export_golem_api_load_snapshot/empty.s | 3 - .../wit_bindings.go | 41 --- .../export_golem_api_save_snapshot/empty.s | 3 - .../wit_bindings.go | 40 --- .../internal/wit/wit_exports/wit_exports.go | 6 +- sdks/go/marshal.go | 236 +++++++++++++++ sdks/go/registry.go | 247 ++++++++++++++++ sdks/go/schema.go | 155 ++++++++++ 20 files changed, 1350 insertions(+), 167 deletions(-) create mode 100644 sdks/go/examples/counter/counter.go rename sdks/go/examples/{smoke => counter}/go.mod (96%) rename sdks/go/examples/{smoke => counter}/go.sum (100%) delete mode 100644 sdks/go/examples/smoke/main.go create mode 100644 sdks/go/golem_test.go create mode 100644 sdks/go/guest.go create mode 100644 sdks/go/internal/exports/export_golem_agent_guest/exports.go create mode 100644 sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go create mode 100644 sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go delete mode 100644 sdks/go/internal/wit/export_golem_agent_guest/empty.s delete mode 100644 sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go delete mode 100644 sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s delete mode 100644 sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go delete mode 100644 sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s delete mode 100644 sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go create mode 100644 sdks/go/marshal.go create mode 100644 sdks/go/registry.go create mode 100644 sdks/go/schema.go diff --git a/sdks/go/examples/counter/counter.go b/sdks/go/examples/counter/counter.go new file mode 100644 index 0000000000..f87c8dff16 --- /dev/null +++ b/sdks/go/examples/counter/counter.go @@ -0,0 +1,41 @@ +// Package main is the canonical Golem Go agent example: a durable counter. +package main + +import golem "github.com/golemcloud/golem-go" + +type CounterId struct{ Name string } // constructor params; also the type-level marker +type CounterState struct{ count int64 } // private durable state +type AddIn struct{ By int64 } + +var Counter = golem.DefineAgent[CounterId, CounterState]( + golem.Spec{Name: "CounterAgent", Description: "A durable counter", Mode: golem.Durable}, + func(id CounterId) *CounterState { return &CounterState{} }, +) + +var ( + Value = golem.DefineMethod[CounterId, golem.Unit, int64]("value", golem.Desc("Return the current value")) + Increment = golem.DefineMethod[CounterId, golem.Unit, int64]("increment") + Add = golem.DefineMethod[CounterId, AddIn, int64]("add", golem.Desc("Add to the counter")) + Reset = golem.DefineMethod[CounterId, golem.Unit, golem.Unit]("reset") +) + +func init() { + golem.Implement(Counter, Value, func(ctx *golem.Context[CounterState], _ golem.Unit) (int64, error) { + return ctx.State.count, nil + }) + golem.Implement(Counter, Increment, func(ctx *golem.Context[CounterState], _ golem.Unit) (int64, error) { + ctx.State.count++ + return ctx.State.count, nil + }) + golem.Implement(Counter, Add, func(ctx *golem.Context[CounterState], in AddIn) (int64, error) { + ctx.State.count += in.By + return ctx.State.count, nil + }) + golem.Implement(Counter, Reset, func(ctx *golem.Context[CounterState], _ golem.Unit) (golem.Unit, error) { + ctx.State.count = 0 + return golem.Unit{}, nil + }) +} + +// The SDK wires the component exports from its own init(). +func main() {} diff --git a/sdks/go/examples/smoke/go.mod b/sdks/go/examples/counter/go.mod similarity index 96% rename from sdks/go/examples/smoke/go.mod rename to sdks/go/examples/counter/go.mod index 14ed240801..d3bb999132 100644 --- a/sdks/go/examples/smoke/go.mod +++ b/sdks/go/examples/counter/go.mod @@ -1,4 +1,4 @@ -module smoke +module counter go 1.25.5 diff --git a/sdks/go/examples/smoke/go.sum b/sdks/go/examples/counter/go.sum similarity index 100% rename from sdks/go/examples/smoke/go.sum rename to sdks/go/examples/counter/go.sum diff --git a/sdks/go/examples/smoke/main.go b/sdks/go/examples/smoke/main.go deleted file mode 100644 index dc8cd17f94..0000000000 --- a/sdks/go/examples/smoke/main.go +++ /dev/null @@ -1,13 +0,0 @@ -// Package main is a Phase-1 smoke component: it exists only to prove the full -// toolchain chain (bindings -> componentize-go build -> valid component -> -// wasmtime instantiate). The guest exports are the generated stubs; real -// dispatch arrives in Phase 2. -package main - -import ( - // Linking the generated export glue is what makes the component export the - // golem:agent/guest world. - _ "github.com/golemcloud/golem-go" -) - -func main() {} diff --git a/sdks/go/golem.go b/sdks/go/golem.go index fa798d1a55..d379103fcb 100644 --- a/sdks/go/golem.go +++ b/sdks/go/golem.go @@ -1,15 +1,126 @@ -// Package golem is the Golem Go SDK. +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Package golem is the Golem Go SDK for authoring agents. +// +// An agent is declared with [DefineAgent], its methods with [DefineMethod], and +// their behaviour bound with [Implement]: +// +// type CounterId struct{ Name string } // constructor params; also the type-level marker +// type CounterState struct{ count int64 } // private state +// type AddIn struct{ By int64 } +// +// var Counter = golem.DefineAgent[CounterId, CounterState]( +// golem.Spec{Name: "CounterAgent", Mode: golem.Durable}, +// func(id CounterId) *CounterState { return &CounterState{} }, +// ) +// +// var Add = golem.DefineMethod[CounterId, AddIn, int64]("add") +// +// func init() { +// golem.Implement(Counter, Add, func(ctx *golem.Context[CounterState], in AddIn) (int64, error) { +// ctx.State.count += in.By +// return ctx.State.count, nil +// }) +// } +// +// func main() {} // the SDK wires the component exports from its own init() +// +// Method descriptors are package-level values so the same value drives the +// agent-type schema, the implementation binding, and (typed) calls from other +// agents. Schemas are derived from the Go types by reflection; there is no code +// generation step. // // Importing this package links the generated golem:agent/guest export glue into -// the component, so an agent's main package only needs: +// the component, so an agent's main package needs only: // // import _ "github.com/golemcloud/golem-go" -// -// The generated bindings stay in internal/ (they are an implementation detail -// and must not become public API); Go's internal-package rule means downstream -// modules cannot import them directly, so this package is the linkage point. package golem import ( + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + + // Links the generated wasmexport glue into the component. _ "github.com/golemcloud/golem-go/internal/wit/wit_exports" ) + +// Unit is the empty input/output marker. Go has no arity overloading, so a +// method with no parameters takes Unit, and one with no result returns Unit. +type Unit struct{} + +// Mode selects an agent's durability model. +type Mode uint8 + +const ( + // Durable agents persist their state and replay deterministically. + Durable Mode = iota + // Ephemeral agents do not persist state across invocations. + Ephemeral +) + +func (m Mode) toWit() common.AgentMode { + if m == Ephemeral { + return common.AgentModeEphemeral + } + return common.AgentModeDurable +} + +// Spec is the declarative part of an agent definition. +type Spec struct { + // Name is the wire-level agent type name (as seen by the platform and by + // other agents). Required. + Name string + // Description is surfaced in the agent type metadata. + Description string + // Mode defaults to Durable. + Mode Mode +} + +// Context is passed to every method handler. State is the agent instance's +// private state, as returned by the agent's init function. +type Context[S any] struct { + State *S + agentID string +} + +// AgentID returns the raw agent id the running instance was initialized with. +func (c *Context[S]) AgentID() string { return c.agentID } + +// Agent is the handle returned by [DefineAgent]. Id is the constructor +// parameter type, which doubles as the agent's type-level identity; S is the +// private state type. +type Agent[Id any, S any] struct{ name string } + +// Name returns the agent's wire-level type name. +func (a *Agent[Id, S]) Name() string { return a.name } + +// MethodDef is a typed method descriptor: the single source of truth shared by +// the agent-type schema, the implementation binding, and calls from other +// agents. Id is the target agent's identity type, so a descriptor cannot be +// used against another agent's client. +type MethodDef[Id any, In any, Out any] struct { + name string + desc string +} + +// Name returns the method's wire-level name. +func (m MethodDef[Id, In, Out]) Name() string { return m.name } + +// MethodOpt configures a method descriptor. +type MethodOpt func(*methodOpts) + +type methodOpts struct{ desc string } + +// Desc sets a method's description, surfaced in the agent type metadata. +func Desc(s string) MethodOpt { return func(o *methodOpts) { o.desc = s } } diff --git a/sdks/go/golem_test.go b/sdks/go/golem_test.go new file mode 100644 index 0000000000..c855480968 --- /dev/null +++ b/sdks/go/golem_test.go @@ -0,0 +1,271 @@ +package golem + +import ( + "strings" + "testing" + + guestExports "github.com/golemcloud/golem-go/internal/exports/export_golem_agent_guest" + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" +) + +// These tests run natively (host arch): they exercise the real export slots and +// the real dispatch path. That works because the generated bindings compile for +// the host; only *calling* a host import would be a link error. + +type tCounterId struct{ Name string } +type tCounterState struct{ count int64 } +type tAddIn struct{ By int64 } + +var tCounter = DefineAgent[tCounterId, tCounterState]( + Spec{Name: "TestCounter", Description: "counter under test", Mode: Durable}, + func(id tCounterId) *tCounterState { return &tCounterState{} }, +) + +var ( + tValue = DefineMethod[tCounterId, Unit, int64]("value", Desc("current value")) + tInc = DefineMethod[tCounterId, Unit, int64]("increment") + tAdd = DefineMethod[tCounterId, tAddIn, int64]("add") + tReset = DefineMethod[tCounterId, Unit, Unit]("reset") + tBoom = DefineMethod[tCounterId, Unit, int64]("boom") +) + +func init() { + Implement(tCounter, tValue, func(ctx *Context[tCounterState], _ Unit) (int64, error) { + return ctx.State.count, nil + }) + Implement(tCounter, tInc, func(ctx *Context[tCounterState], _ Unit) (int64, error) { + ctx.State.count++ + return ctx.State.count, nil + }) + Implement(tCounter, tAdd, func(ctx *Context[tCounterState], in tAddIn) (int64, error) { + ctx.State.count += in.By + return ctx.State.count, nil + }) + Implement(tCounter, tReset, Bind0Unit((*tCounterState).reset)) // method-expression binding + Implement(tCounter, tBoom, func(*Context[tCounterState], Unit) (int64, error) { + panic("kaboom from agent code") + }) +} + +func (s *tCounterState) reset() { s.count = 0 } + +// params builds a parameter-list tree: a record whose fields are the values. +func params(vals ...types.SchemaValueNode) types.SchemaValueTree { + nodes := make([]types.SchemaValueNode, 0, len(vals)+1) + idxs := make([]int32, 0, len(vals)) + for _, v := range vals { + idxs = append(idxs, int32(len(nodes))) + nodes = append(nodes, v) + } + root := int32(len(nodes)) + nodes = append(nodes, types.MakeSchemaValueNodeRecordValue(idxs)) + return types.SchemaValueTree{ValueNodes: nodes, Root: root} +} + +func initAgent(t *testing.T) { + t.Helper() + active = nil // fresh instance per test + res := guestExports.Initialize("TestCounter", params(types.MakeSchemaValueNodeStringValue("x")), common.MakePrincipalAnonymous()) + if res.IsErr() { + t.Fatalf("initialize failed: %v", res.Err()) + } +} + +func invokeInt(t *testing.T, method string, in types.SchemaValueTree) int64 { + t.Helper() + res := guestExports.Invoke(method, in, common.MakePrincipalAnonymous()) + if res.IsErr() { + t.Fatalf("%s errored: %v", method, res.Err()) + } + opt := res.Ok() + if opt.IsNone() { + t.Fatalf("%s returned none, expected a value", method) + } + tree := opt.Some() + return tree.ValueNodes[tree.Root].S64Value() +} + +func TestCounterRoundTrip(t *testing.T) { + initAgent(t) + if got := invokeInt(t, "increment", params()); got != 1 { + t.Fatalf("increment = %d, want 1", got) + } + if got := invokeInt(t, "add", params(types.MakeSchemaValueNodeS64Value(5))); got != 6 { + t.Fatalf("add(5) = %d, want 6", got) + } + if got := invokeInt(t, "value", params()); got != 6 { + t.Fatalf("value = %d, want 6", got) + } + // reset returns unit => ok(none); bound via a method expression + res := guestExports.Invoke("reset", params(), common.MakePrincipalAnonymous()) + if res.IsErr() || !res.Ok().IsNone() { + t.Fatal("reset should succeed and return none (unit output)") + } + if got := invokeInt(t, "value", params()); got != 0 { + t.Fatalf("value after reset = %d, want 0", got) + } +} + +func TestGetDefinitionDerivesSchemaFromGoTypes(t *testing.T) { + initAgent(t) + def := guestExports.GetDefinition() + if def.TypeName != "TestCounter" || def.SourceLanguage != "go" { + t.Fatalf("type name = %q, source = %q", def.TypeName, def.SourceLanguage) + } + if len(def.Methods) != 5 { + t.Fatalf("methods = %d, want 5", len(def.Methods)) + } + // constructor: one parameter, named after the Id field, typed string + ctor := def.Constructor.InputSchema.Parameters() + if len(ctor) != 1 || ctor[0].Name != "name" { + t.Fatalf("constructor params = %+v", ctor) + } + if body := def.Schema.TypeNodes[ctor[0].Schema].Body; body.Tag() != types.SchemaTypeBodyStringType { + t.Fatalf("constructor param type tag = %d, want string", body.Tag()) + } + // add: one s64 parameter, s64 output + var add *common.AgentMethod + for i := range def.Methods { + if def.Methods[i].Name == "add" { + add = &def.Methods[i] + } + } + if add == nil { + t.Fatal("method add missing") + } + if add.Description != "" && add.Description != "add" { + _ = add.Description // description is optional here + } + in := add.InputSchema.Parameters() + if len(in) != 1 || in[0].Name != "by" { + t.Fatalf("add params = %+v", in) + } + if tag := def.Schema.TypeNodes[in[0].Schema].Body.Tag(); tag != types.SchemaTypeBodyS64Type { + t.Fatalf("add param type tag = %d, want s64", tag) + } + if add.OutputSchema.Tag() != common.OutputSchemaSingle { + t.Fatal("add should have a single output") + } + // reset: unit output + for i := range def.Methods { + if def.Methods[i].Name == "reset" && def.Methods[i].OutputSchema.Tag() != common.OutputSchemaUnit { + t.Fatal("reset should have a unit output") + } + } +} + +func TestDiscoverAgentTypes(t *testing.T) { + res := guestExports.DiscoverAgentTypes() + if res.IsErr() { + t.Fatalf("discover errored: %v", res.Err()) + } + found := false + for _, at := range res.Ok() { + if at.TypeName == "TestCounter" { + found = true + } + } + if !found { + t.Fatal("TestCounter not discovered") + } +} + +func TestPanicBecomesCustomErrorAndAgentSurvives(t *testing.T) { + initAgent(t) + res := guestExports.Invoke("boom", params(), common.MakePrincipalAnonymous()) + if !res.IsErr() { + t.Fatal("a panicking method must surface as an agent-error") + } + if tag := res.Err().Tag(); tag != common.AgentErrorCustomError { + t.Fatalf("panic mapped to tag %d, want custom-error", tag) + } + // the component must still be usable afterwards + if got := invokeInt(t, "value", params()); got != 0 { + t.Fatalf("agent unusable after panic; value = %d", got) + } +} + +func TestUnknownMethodAndBadInputAreDistinguished(t *testing.T) { + initAgent(t) + res := guestExports.Invoke("nope", params(), common.MakePrincipalAnonymous()) + if !res.IsErr() || res.Err().Tag() != common.AgentErrorInvalidMethod { + t.Fatal("unknown method should map to invalid-method") + } + // add expects an s64; hand it a string instead + bad := guestExports.Invoke("add", params(types.MakeSchemaValueNodeStringValue("nope")), common.MakePrincipalAnonymous()) + if !bad.IsErr() || bad.Err().Tag() != common.AgentErrorInvalidInput { + t.Fatalf("malformed input should map to invalid-input, got tag %d", bad.Err().Tag()) + } +} + +func TestPanicErrorAttribution(t *testing.T) { + agentSide := &PanicError{Method: "m", Stage: stageHandler, Value: "boom"} + if agentSide.Internal() { + t.Fatal("a handler panic is not an SDK bug") + } + if !strings.Contains(agentSide.Error(), `agent method "m" panicked`) { + t.Fatalf("unexpected message: %s", agentSide) + } + sdkSide := &PanicError{Method: "m", Stage: stageEncode, Value: "boom"} + if !sdkSide.Internal() || !strings.Contains(sdkSide.Error(), "INTERNAL SDK ERROR") { + t.Fatalf("unexpected message: %s", sdkSide) + } +} + +// A component may define several agent types; a worker is initialized as exactly +// one of them, and invoke must route into that one's methods only. + +type tEchoId struct{ Prefix string } +type tEchoState struct{ prefix string } +type tEchoIn struct{ Msg string } + +var tEcho = DefineAgent[tEchoId, tEchoState]( + Spec{Name: "TestEcho", Mode: Ephemeral}, + func(id tEchoId) *tEchoState { return &tEchoState{prefix: id.Prefix} }, +) + +var tSay = DefineMethod[tEchoId, tEchoIn, string]("say") + +func init() { + Implement(tEcho, tSay, func(ctx *Context[tEchoState], in tEchoIn) (string, error) { + return ctx.State.prefix + in.Msg, nil + }) +} + +func TestWorkerRunsOneOfSeveralAgentTypes(t *testing.T) { + active = nil + res := guestExports.Initialize("TestEcho", params(types.MakeSchemaValueNodeStringValue("> ")), + common.MakePrincipalAnonymous()) + if res.IsErr() { + t.Fatalf("initialize failed: %v", res.Err()) + } + // constructor params reached the state + out := guestExports.Invoke("say", params(types.MakeSchemaValueNodeStringValue("hi")), common.MakePrincipalAnonymous()) + if out.IsErr() { + t.Fatalf("say errored: %v", out.Err()) + } + tree := out.Ok().Some() + if got := tree.ValueNodes[tree.Root].StringValue(); got != "> hi" { + t.Fatalf("say = %q, want %q", got, "> hi") + } + // the other agent's methods are not reachable from this worker + if r := guestExports.Invoke("increment", params(), common.MakePrincipalAnonymous()); !r.IsErr() { + t.Fatal("TestCounter's method must not be invocable on a TestEcho worker") + } + // get-definition reports the agent this worker was initialized as + if def := guestExports.GetDefinition(); def.TypeName != "TestEcho" || def.Mode != common.AgentModeEphemeral { + t.Fatalf("definition = %q mode %d, want TestEcho/ephemeral", def.TypeName, def.Mode) + } + // initializing twice is refused + if again := guestExports.Initialize("TestEcho", params(types.MakeSchemaValueNodeStringValue("x")), + common.MakePrincipalAnonymous()); !again.IsErr() { + t.Fatal("re-initializing an already-initialized worker must fail") + } + // unknown agent type + active = nil + if bad := guestExports.Initialize("NoSuchAgent", params(), common.MakePrincipalAnonymous()); !bad.IsErr() || + bad.Err().Tag() != common.AgentErrorInvalidType { + t.Fatal("unknown agent type should map to invalid-type") + } +} diff --git a/sdks/go/guest.go b/sdks/go/guest.go new file mode 100644 index 0000000000..dcf8b1d477 --- /dev/null +++ b/sdks/go/guest.go @@ -0,0 +1,148 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "errors" + "fmt" + "os" + "reflect" + + guestExports "github.com/golemcloud/golem-go/internal/exports/export_golem_agent_guest" + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// agentIDEnvVar is how the executor tells the guest which agent instance it is. +const agentIDEnvVar = "GOLEM_AGENT_ID" + +// Stages a dispatch can panic in, so a recovered panic can be attributed to the +// agent's code or to the SDK itself. +const ( + stageDecode = "decoding input" + stageHandler = "agent method" + stageEncode = "encoding output" +) + +// PanicError is a recovered panic, attributed to the stage it occurred in. +type PanicError struct { + Method string + Stage string + Value any +} + +// Internal reports whether the panic came from SDK machinery (marshaling) +// rather than from the agent's handler — i.e. whether it is our bug. +func (e *PanicError) Internal() bool { return e.Stage != stageHandler } + +func (e *PanicError) Error() string { + if e.Internal() { + return fmt.Sprintf("INTERNAL SDK ERROR while %s for method %q: %v", e.Stage, e.Method, e.Value) + } + return fmt.Sprintf("agent method %q panicked: %v", e.Method, e.Value) +} + +// decodeError marks failures that really are the caller's bad input, so they can +// be reported as invalid-input rather than a generic failure. +type decodeError struct{ msg string } + +func (e *decodeError) Error() string { return e.msg } + +// customError builds agent-error's custom-error case carrying a string payload: +// the right bucket for failures that are neither bad input nor an unknown +// method (a panic is not "invalid input"). +func customError(msg string) common.AgentError { + return common.MakeAgentErrorCustomError(types.TypedSchemaValue{ + Graph: types.SchemaGraph{ + TypeNodes: []types.SchemaTypeNode{{Body: types.MakeSchemaTypeBodyStringType()}}, + Root: 0, + }, + Value: types.SchemaValueTree{ + ValueNodes: []types.SchemaValueNode{types.MakeSchemaValueNodeStringValue(msg)}, + Root: 0, + }, + }) +} + +// toAgentError maps an SDK or handler error onto the right agent-error case. +func toAgentError(err error) common.AgentError { + var de *decodeError + if errors.As(err, &de) { + return common.MakeAgentErrorInvalidInput(de.Error()) + } + // Panics and errors returned deliberately by agent code are both + // "something went wrong", not malformed input. + return customError(err.Error()) +} + +func init() { + guestExports.Exports.Initialize = func(agentType string, input types.SchemaValueTree, _ common.Principal) witTypes.Result[witTypes.Unit, common.AgentError] { + e := registry[agentType] + if e == nil { + return witTypes.Err[witTypes.Unit](common.MakeAgentErrorInvalidType("unknown agent type: " + agentType)) + } + if active != nil { + return witTypes.Err[witTypes.Unit](customError("agent already initialized")) + } + idVal := reflect.New(e.idType).Elem() + if err := decodeParams(input, e.idFields, idVal); err != nil { + return witTypes.Err[witTypes.Unit](common.MakeAgentErrorInvalidInput(err.Error())) + } + active = &instance{def: e, agentID: os.Getenv(agentIDEnvVar), state: e.newState(idVal)} + return witTypes.Ok[witTypes.Unit, common.AgentError](witTypes.Unit{}) + } + + guestExports.Exports.Invoke = func(methodName string, input types.SchemaValueTree, _ common.Principal) witTypes.Result[witTypes.Option[types.SchemaValueTree], common.AgentError] { + fail := func(e common.AgentError) witTypes.Result[witTypes.Option[types.SchemaValueTree], common.AgentError] { + return witTypes.Err[witTypes.Option[types.SchemaValueTree]](e) + } + if active == nil { + return fail(common.MakeAgentErrorInvalidMethod("agent not initialized")) + } + m := active.def.methods[methodName] + if m == nil { + return fail(common.MakeAgentErrorInvalidMethod("unknown method: " + methodName)) + } + out, err := m.invoke(active.state, active.agentID, input) + if err != nil { + return fail(toAgentError(err)) + } + if out == nil { + return witTypes.Ok[witTypes.Option[types.SchemaValueTree], common.AgentError]( + witTypes.None[types.SchemaValueTree]()) + } + return witTypes.Ok[witTypes.Option[types.SchemaValueTree], common.AgentError]( + witTypes.Some(*out)) + } + + guestExports.Exports.GetDefinition = func() common.AgentType { + if active != nil { + return buildAgentType(active.def) + } + if len(registryOrder) > 0 { + return buildAgentType(registry[registryOrder[0]]) + } + return common.AgentType{} + } + + guestExports.Exports.DiscoverAgentTypes = func() witTypes.Result[[]common.AgentType, common.AgentError] { + out := make([]common.AgentType, 0, len(registryOrder)) + for _, n := range registryOrder { + out = append(out, buildAgentType(registry[n])) + } + return witTypes.Ok[[]common.AgentType, common.AgentError](out) + } +} diff --git a/sdks/go/internal/exports/export_golem_agent_guest/exports.go b/sdks/go/internal/exports/export_golem_agent_guest/exports.go new file mode 100644 index 0000000000..2aa3da2393 --- /dev/null +++ b/sdks/go/internal/exports/export_golem_agent_guest/exports.go @@ -0,0 +1,67 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Package export_golem_agent_guest holds the hand-written export slots for +// golem:agent/guest@2.0.0. +// +// These are NOT generated: `componentize-go bindings` is run with +// --export-pkg-name pointing here, so the generated wasmexport glue in +// internal/wit/wit_exports calls into this package while never overwriting it. +// The SDK fills the slots from its init(); leaving one nil is a programming +// error and panics with a clear message rather than a nil-deref. +// +// initialize/invoke are `async func` in WIT, but the async lift is handled +// entirely by the generated glue (witAsync.Run), so these are plain blocking +// Go functions. +package export_golem_agent_guest + +import ( + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// Exports is the set of slots the SDK must fill before the component is invoked. +var Exports struct { + Initialize func(agentType string, input types.SchemaValueTree, principal common.Principal) witTypes.Result[witTypes.Unit, common.AgentError] + Invoke func(methodName string, input types.SchemaValueTree, principal common.Principal) witTypes.Result[witTypes.Option[types.SchemaValueTree], common.AgentError] + GetDefinition func() common.AgentType + DiscoverAgentTypes func() witTypes.Result[[]common.AgentType, common.AgentError] +} + +func mustBeSet(name string, set bool) { + if !set { + panic("golem: export " + name + " was not registered — is the SDK imported?") + } +} + +func Initialize(agentType string, input types.SchemaValueTree, principal common.Principal) witTypes.Result[witTypes.Unit, common.AgentError] { + mustBeSet("initialize", Exports.Initialize != nil) + return Exports.Initialize(agentType, input, principal) +} + +func Invoke(methodName string, input types.SchemaValueTree, principal common.Principal) witTypes.Result[witTypes.Option[types.SchemaValueTree], common.AgentError] { + mustBeSet("invoke", Exports.Invoke != nil) + return Exports.Invoke(methodName, input, principal) +} + +func GetDefinition() common.AgentType { + mustBeSet("get-definition", Exports.GetDefinition != nil) + return Exports.GetDefinition() +} + +func DiscoverAgentTypes() witTypes.Result[[]common.AgentType, common.AgentError] { + mustBeSet("discover-agent-types", Exports.DiscoverAgentTypes != nil) + return Exports.DiscoverAgentTypes() +} diff --git a/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go b/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go new file mode 100644 index 0000000000..fb404cbc7a --- /dev/null +++ b/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go @@ -0,0 +1,33 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Package export_golem_api_load_snapshot holds the hand-written export slot for +// golem:api/load-snapshot@1.5.0. See export_golem_agent_guest for the pattern. +package export_golem_api_load_snapshot + +import ( + host "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +var Exports struct { + Load func(snapshot host.Snapshot) witTypes.Result[witTypes.Unit, string] +} + +func Load(snapshot host.Snapshot) witTypes.Result[witTypes.Unit, string] { + if Exports.Load == nil { + panic("golem: export load-snapshot was not registered — is the SDK imported?") + } + return Exports.Load(snapshot) +} diff --git a/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go b/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go new file mode 100644 index 0000000000..8f13c1a4e0 --- /dev/null +++ b/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go @@ -0,0 +1,31 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Package export_golem_api_save_snapshot holds the hand-written export slot for +// golem:api/save-snapshot@1.5.0 (an `async func` in WIT; the async lift lives in +// the generated glue). See export_golem_agent_guest for the pattern. +package export_golem_api_save_snapshot + +import host "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + +var Exports struct { + Save func() host.Snapshot +} + +func Save() host.Snapshot { + if Exports.Save == nil { + panic("golem: export save-snapshot was not registered — is the SDK imported?") + } + return Exports.Save() +} diff --git a/sdks/go/internal/wit/export_golem_agent_guest/empty.s b/sdks/go/internal/wit/export_golem_agent_guest/empty.s deleted file mode 100644 index 308ab6016b..0000000000 --- a/sdks/go/internal/wit/export_golem_agent_guest/empty.s +++ /dev/null @@ -1,3 +0,0 @@ -// This file exists for testing this package without WebAssembly, -// allowing empty function bodies with a //go:wasmimport directive. -// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go b/sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go deleted file mode 100644 index e8f4ba267f..0000000000 --- a/sdks/go/internal/wit/export_golem_agent_guest/wit_bindings.go +++ /dev/null @@ -1,54 +0,0 @@ -// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! -// -// This code was generated from the following packages: -// golem:core@2.0.0 -// wasi:clocks@0.3.0 -// golem:api@1.5.0 -// golem:agent@2.0.0 -// golem:rdbms@1.5.0 -// golem:durability@1.5.0 -// golem:quota@1.5.0 -// golem:secrets@0.1.0 -// wasi:filesystem@0.3.0 -// wasi:sockets@0.3.0 -// wasi:random@0.3.0 -// wasi:cli@0.3.0 -// wasi:blobstore -// wasi:keyvalue@0.1.0 -// wasi:config@0.2.0-draft -// golem:websocket@1.5.0 -// wasi:http@0.3.0 -// golem:agent-guest -// golem:tool@0.1.0 -// wasi:io@0.2.6 -// wasi:clocks@0.2.6 -// wasi:filesystem@0.2.6 -// wasi:sockets@0.2.6 -// wasi:random@0.2.6 -// wasi:cli@0.2.6 -// wasi:http@0.2.6 -// wasi:logging - -package export_golem_agent_guest - -import ( - "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" - witTypes "go.bytecodealliance.org/pkg/wit/types" -) - -func Initialize(_agentType string, _input golem_core_types.SchemaValueTree, _principal golem_agent_common.Principal) witTypes.Result[witTypes.Unit, golem_agent_common.AgentError] { - panic("not implemented") -} - -func Invoke(_methodName string, _input golem_core_types.SchemaValueTree, _principal golem_agent_common.Principal) witTypes.Result[witTypes.Option[golem_core_types.SchemaValueTree], golem_agent_common.AgentError] { - panic("not implemented") -} - -func GetDefinition() golem_agent_common.AgentType { - panic("not implemented") -} - -func DiscoverAgentTypes() witTypes.Result[[]golem_agent_common.AgentType, golem_agent_common.AgentError] { - panic("not implemented") -} diff --git a/sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s b/sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s deleted file mode 100644 index 308ab6016b..0000000000 --- a/sdks/go/internal/wit/export_golem_api_load_snapshot/empty.s +++ /dev/null @@ -1,3 +0,0 @@ -// This file exists for testing this package without WebAssembly, -// allowing empty function bodies with a //go:wasmimport directive. -// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go b/sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go deleted file mode 100644 index 62a0877499..0000000000 --- a/sdks/go/internal/wit/export_golem_api_load_snapshot/wit_bindings.go +++ /dev/null @@ -1,41 +0,0 @@ -// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! -// -// This code was generated from the following packages: -// golem:core@2.0.0 -// wasi:clocks@0.3.0 -// golem:api@1.5.0 -// golem:agent@2.0.0 -// golem:rdbms@1.5.0 -// golem:durability@1.5.0 -// golem:quota@1.5.0 -// golem:secrets@0.1.0 -// wasi:filesystem@0.3.0 -// wasi:sockets@0.3.0 -// wasi:random@0.3.0 -// wasi:cli@0.3.0 -// wasi:blobstore -// wasi:keyvalue@0.1.0 -// wasi:config@0.2.0-draft -// golem:websocket@1.5.0 -// wasi:http@0.3.0 -// golem:agent-guest -// golem:tool@0.1.0 -// wasi:io@0.2.6 -// wasi:clocks@0.2.6 -// wasi:filesystem@0.2.6 -// wasi:sockets@0.2.6 -// wasi:random@0.2.6 -// wasi:cli@0.2.6 -// wasi:http@0.2.6 -// wasi:logging - -package export_golem_api_load_snapshot - -import ( - "github.com/golemcloud/golem-go/internal/wit/golem_api_host" - witTypes "go.bytecodealliance.org/pkg/wit/types" -) - -func Load(_snapshot golem_api_host.Snapshot) witTypes.Result[witTypes.Unit, string] { - panic("not implemented") -} diff --git a/sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s b/sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s deleted file mode 100644 index 308ab6016b..0000000000 --- a/sdks/go/internal/wit/export_golem_api_save_snapshot/empty.s +++ /dev/null @@ -1,3 +0,0 @@ -// This file exists for testing this package without WebAssembly, -// allowing empty function bodies with a //go:wasmimport directive. -// See https://pkg.go.dev/cmd/compile for more information. \ No newline at end of file diff --git a/sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go b/sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go deleted file mode 100644 index 992f6d43c1..0000000000 --- a/sdks/go/internal/wit/export_golem_api_save_snapshot/wit_bindings.go +++ /dev/null @@ -1,40 +0,0 @@ -// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT! -// -// This code was generated from the following packages: -// golem:core@2.0.0 -// wasi:clocks@0.3.0 -// golem:api@1.5.0 -// golem:agent@2.0.0 -// golem:rdbms@1.5.0 -// golem:durability@1.5.0 -// golem:quota@1.5.0 -// golem:secrets@0.1.0 -// wasi:filesystem@0.3.0 -// wasi:sockets@0.3.0 -// wasi:random@0.3.0 -// wasi:cli@0.3.0 -// wasi:blobstore -// wasi:keyvalue@0.1.0 -// wasi:config@0.2.0-draft -// golem:websocket@1.5.0 -// wasi:http@0.3.0 -// golem:agent-guest -// golem:tool@0.1.0 -// wasi:io@0.2.6 -// wasi:clocks@0.2.6 -// wasi:filesystem@0.2.6 -// wasi:sockets@0.2.6 -// wasi:random@0.2.6 -// wasi:cli@0.2.6 -// wasi:http@0.2.6 -// wasi:logging - -package export_golem_api_save_snapshot - -import ( - "github.com/golemcloud/golem-go/internal/wit/golem_api_host" -) - -func Save() golem_api_host.Snapshot { - panic("not implemented") -} diff --git a/sdks/go/internal/wit/wit_exports/wit_exports.go b/sdks/go/internal/wit/wit_exports/wit_exports.go index 7db42fe2f8..9cddb6c414 100644 --- a/sdks/go/internal/wit/wit_exports/wit_exports.go +++ b/sdks/go/internal/wit/wit_exports/wit_exports.go @@ -32,9 +32,9 @@ package wit_exports import ( - "github.com/golemcloud/golem-go/internal/wit/export_golem_agent_guest" - "github.com/golemcloud/golem-go/internal/wit/export_golem_api_load_snapshot" - "github.com/golemcloud/golem-go/internal/wit/export_golem_api_save_snapshot" + "github.com/golemcloud/golem-go/internal/exports/export_golem_agent_guest" + "github.com/golemcloud/golem-go/internal/exports/export_golem_api_load_snapshot" + "github.com/golemcloud/golem-go/internal/exports/export_golem_api_save_snapshot" "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" "github.com/golemcloud/golem-go/internal/wit/golem_api_host" "github.com/golemcloud/golem-go/internal/wit/golem_core_types" diff --git a/sdks/go/marshal.go b/sdks/go/marshal.go new file mode 100644 index 0000000000..f470d9d191 --- /dev/null +++ b/sdks/go/marshal.go @@ -0,0 +1,236 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "reflect" + + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" +) + +// Values cross the boundary as a schema-value-tree: a flat pool of nodes plus +// the index of the root. Records are positional — field order is declaration +// order, which is also what the schema derivation reports. +// +// Encoding is type-directed (driven by the declared Go type, not the runtime +// value) so that declared interface types can select variant encoding later. +// +// Decoding is deliberately defensive: the generated accessors panic on tag +// mismatch, so every access checks Tag() first and returns an error instead. + +// --------------------------------------------------------------------------- +// encode +// --------------------------------------------------------------------------- + +type valBuilder struct{ nodes []types.SchemaValueNode } + +func (b *valBuilder) push(n types.SchemaValueNode) int32 { + b.nodes = append(b.nodes, n) + return int32(len(b.nodes) - 1) +} + +func (b *valBuilder) addTyped(t reflect.Type, v reflect.Value) int32 { + if v.Kind() == reflect.Interface { + v = v.Elem() + } + switch v.Kind() { + case reflect.String: + return b.push(types.MakeSchemaValueNodeStringValue(v.String())) + case reflect.Bool: + return b.push(types.MakeSchemaValueNodeBoolValue(v.Bool())) + case reflect.Int, reflect.Int64: + return b.push(types.MakeSchemaValueNodeS64Value(v.Int())) + case reflect.Int32: + return b.push(types.MakeSchemaValueNodeS32Value(int32(v.Int()))) + case reflect.Int16: + return b.push(types.MakeSchemaValueNodeS16Value(int16(v.Int()))) + case reflect.Int8: + return b.push(types.MakeSchemaValueNodeS8Value(int8(v.Int()))) + case reflect.Uint, reflect.Uint64: + return b.push(types.MakeSchemaValueNodeU64Value(v.Uint())) + case reflect.Uint32: + return b.push(types.MakeSchemaValueNodeU32Value(uint32(v.Uint()))) + case reflect.Uint16: + return b.push(types.MakeSchemaValueNodeU16Value(uint16(v.Uint()))) + case reflect.Uint8: + return b.push(types.MakeSchemaValueNodeU8Value(uint8(v.Uint()))) + case reflect.Float64: + return b.push(types.MakeSchemaValueNodeF64Value(v.Float())) + case reflect.Float32: + return b.push(types.MakeSchemaValueNodeF32Value(float32(v.Float()))) + case reflect.Struct: + // Children are appended first; the record node then refers to them. + var idxs []int32 + for i := range v.NumField() { + f := v.Type().Field(i) + if f.PkgPath != "" { + continue + } + idxs = append(idxs, b.addTyped(f.Type, v.Field(i))) + } + return b.push(types.MakeSchemaValueNodeRecordValue(idxs)) + default: + panic(fmt.Sprintf("golem: cannot encode Go type %s (kind %s)", t, v.Kind())) + } +} + +// encodeTyped encodes v, whose declared type is t, as a value tree. +func encodeTyped(t reflect.Type, v reflect.Value) types.SchemaValueTree { + var b valBuilder + root := b.addTyped(t, v) + return types.SchemaValueTree{ValueNodes: b.nodes, Root: root} +} + +// encodeParams encodes a struct as a method/constructor parameter list, i.e. a +// record whose fields are the parameters in declaration order. +func encodeParams(t reflect.Type, v reflect.Value) types.SchemaValueTree { + return encodeTyped(t, v) +} + +// --------------------------------------------------------------------------- +// decode +// --------------------------------------------------------------------------- + +type decoder struct{ nodes []types.SchemaValueNode } + +func (d *decoder) node(idx int32) (types.SchemaValueNode, error) { + if idx < 0 || int(idx) >= len(d.nodes) { + return types.SchemaValueNode{}, fmt.Errorf("value node index %d out of range (%d nodes)", idx, len(d.nodes)) + } + return d.nodes[idx], nil +} + +// into decodes the node at idx into dst, whose declared type is t. +func (d *decoder) into(t reflect.Type, dst reflect.Value, idx int32) error { + n, err := d.node(idx) + if err != nil { + return err + } + tag := n.Tag() + + // Every branch checks Tag() first: the generated accessors panic on + // mismatch, and malformed input must produce an error, not a panic. + switch t.Kind() { + case reflect.String: + if tag == types.SchemaValueNodeStringValue { + dst.SetString(n.StringValue()) + return nil + } + case reflect.Bool: + if tag == types.SchemaValueNodeBoolValue { + dst.SetBool(n.BoolValue()) + return nil + } + case reflect.Int, reflect.Int64: + if tag == types.SchemaValueNodeS64Value { + dst.SetInt(n.S64Value()) + return nil + } + case reflect.Int32: + if tag == types.SchemaValueNodeS32Value { + dst.SetInt(int64(n.S32Value())) + return nil + } + case reflect.Int16: + if tag == types.SchemaValueNodeS16Value { + dst.SetInt(int64(n.S16Value())) + return nil + } + case reflect.Int8: + if tag == types.SchemaValueNodeS8Value { + dst.SetInt(int64(n.S8Value())) + return nil + } + case reflect.Uint, reflect.Uint64: + if tag == types.SchemaValueNodeU64Value { + dst.SetUint(n.U64Value()) + return nil + } + case reflect.Uint32: + if tag == types.SchemaValueNodeU32Value { + dst.SetUint(uint64(n.U32Value())) + return nil + } + case reflect.Uint16: + if tag == types.SchemaValueNodeU16Value { + dst.SetUint(uint64(n.U16Value())) + return nil + } + case reflect.Uint8: + if tag == types.SchemaValueNodeU8Value { + dst.SetUint(uint64(n.U8Value())) + return nil + } + case reflect.Float64: + if tag == types.SchemaValueNodeF64Value { + dst.SetFloat(n.F64Value()) + return nil + } + case reflect.Float32: + if tag == types.SchemaValueNodeF32Value { + dst.SetFloat(float64(n.F32Value())) + return nil + } + case reflect.Struct: + if tag != types.SchemaValueNodeRecordValue { + break + } + idxs := n.RecordValue() + fields := structFields(t) + if len(idxs) < len(fields) { + return fmt.Errorf("record for %s has %d field(s), want %d", t, len(idxs), len(fields)) + } + for i, f := range fields { + if err := d.into(f.typ, dst.Field(f.index), idxs[i]); err != nil { + return fmt.Errorf("%s.%s: %w", t, f.name, err) + } + } + return nil + } + return fmt.Errorf("cannot decode value node (tag %d) into %s", tag, t) +} + +// decodeParams decodes a parameter-list tree (a record at the root) into dst's +// fields. An empty parameter list is permitted to arrive as an empty record. +func decodeParams(tree types.SchemaValueTree, fields []fieldInfo, dst reflect.Value) error { + d := decoder{nodes: tree.ValueNodes} + if len(d.nodes) == 0 { + if len(fields) == 0 { + return nil + } + return fmt.Errorf("empty value tree but %d parameter(s) expected", len(fields)) + } + root, err := d.node(tree.Root) + if err != nil { + return err + } + if root.Tag() != types.SchemaValueNodeRecordValue { + if len(fields) == 0 { + return nil + } + return fmt.Errorf("expected a record at the root of the parameter list") + } + idxs := root.RecordValue() + if len(idxs) < len(fields) { + return fmt.Errorf("parameter list has %d value(s), want %d", len(idxs), len(fields)) + } + for i, f := range fields { + if err := d.into(f.typ, dst.Field(f.index), idxs[i]); err != nil { + return fmt.Errorf("parameter %q: %w", f.name, err) + } + } + return nil +} diff --git a/sdks/go/registry.go b/sdks/go/registry.go new file mode 100644 index 0000000000..aefcc49306 --- /dev/null +++ b/sdks/go/registry.go @@ -0,0 +1,247 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "reflect" + + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" +) + +// fieldInfo is one exported struct field, in declaration order. Declaration +// order is the wire order: value trees encode records positionally. +type fieldInfo struct { + name string + index int + typ reflect.Type +} + +type methodEntry struct { + name string + desc string + inFields []fieldInfo + outType reflect.Type // nil => unit output + // invoke is the erased dispatcher produced by Implement. Calling it is a + // direct func-value call: no reflection is used to reach the handler. + invoke func(state any, agentID string, in types.SchemaValueTree) (out *types.SchemaValueTree, err error) +} + +type agentEntry struct { + name string + desc string + mode common.AgentMode + idType reflect.Type + idFields []fieldInfo + newState func(idVal reflect.Value) any + methods map[string]*methodEntry + order []string +} + +// instance is the single agent instance this worker runs. A component may define +// many agent types, but a worker is initialized as exactly one of them — so the +// live state is held here rather than on the (shared, immutable) type entry. +type instance struct { + def *agentEntry + state any + agentID string +} + +var ( + registry = map[string]*agentEntry{} + registryOrder []string + // idTypeToAgent lets ClientFor resolve a target agent from its Id type. + idTypeToAgent = map[reflect.Type]string{} + // active is the instance this worker was initialized as, or nil before + // initialize() has run. + active *instance +) + +// structFields returns the exported fields of a struct type in declaration +// order. Non-structs (e.g. Unit) yield no fields. +func structFields(t reflect.Type) []fieldInfo { + var out []fieldInfo + if t == nil || t.Kind() != reflect.Struct { + return out + } + for i := range t.NumField() { + f := t.Field(i) + if f.PkgPath != "" { // unexported + continue + } + out = append(out, fieldInfo{name: lowerFirst(f.Name), index: i, typ: f.Type}) + } + return out +} + +func lowerFirst(s string) string { + if s == "" { + return s + } + b := []byte(s) + if b[0] >= 'A' && b[0] <= 'Z' { + b[0] += 'a' - 'A' + } + return string(b) +} + +// DefineAgent registers an agent type and returns its typed handle. init builds +// the instance state from the constructor parameters. +// +// Call it from a package-level var so registration happens before the component +// is invoked. +func DefineAgent[Id any, S any](spec Spec, init func(Id) *S) *Agent[Id, S] { + if spec.Name == "" { + panic("golem: DefineAgent requires a non-empty Spec.Name") + } + if _, dup := registry[spec.Name]; dup { + panic("golem: agent type already defined: " + spec.Name) + } + idType := reflect.TypeFor[Id]() + if idType.Kind() != reflect.Struct { + panic(fmt.Sprintf("golem: agent %s: Id must be a struct, got %s", spec.Name, idType)) + } + e := &agentEntry{ + name: spec.Name, + desc: spec.Description, + mode: spec.Mode.toWit(), + idType: idType, + idFields: structFields(idType), + methods: map[string]*methodEntry{}, + newState: func(idVal reflect.Value) any { return init(idVal.Interface().(Id)) }, + } + registry[spec.Name] = e + registryOrder = append(registryOrder, spec.Name) + idTypeToAgent[idType] = spec.Name + return &Agent[Id, S]{name: spec.Name} +} + +// DefineMethod declares a typed method descriptor. The type parameters are +// explicit because none can be inferred from the arguments: +// +// var Add = golem.DefineMethod[CounterId, AddIn, int64]("add") +func DefineMethod[Id any, In any, Out any](name string, opts ...MethodOpt) MethodDef[Id, In, Out] { + var o methodOpts + for _, f := range opts { + f(&o) + } + return MethodDef[Id, In, Out]{name: name, desc: o.desc} +} + +// Implement binds a handler to a method descriptor. S, In and Out are inferred +// from the handler, and Id must match the agent — so binding a descriptor to the +// wrong agent, or a handler with the wrong signature, is a compile error. +// +// The handler is wrapped once, here, into a uniform dispatcher; dispatch itself +// never uses reflection to call user code. +func Implement[Id any, S any, In any, Out any]( + a *Agent[Id, S], + m MethodDef[Id, In, Out], + h func(*Context[S], In) (Out, error), +) { + e := registry[a.name] + if e == nil { + panic("golem: Implement: unknown agent " + a.name) + } + if _, dup := e.methods[m.name]; dup { + panic("golem: " + a.name + ": method already implemented: " + m.name) + } + + inType := reflect.TypeFor[In]() + outType := reflect.TypeFor[Out]() + me := &methodEntry{name: m.name, desc: m.desc, inFields: structFields(inType)} + if outType != reflect.TypeFor[Unit]() { + me.outType = outType + } + + me.invoke = func(state any, agentID string, tree types.SchemaValueTree) (out *types.SchemaValueTree, err error) { + // Panic hardening: a panic becomes an agent-error instead of killing the + // component. stage attributes it, so an SDK bug is not reported as if it + // were the agent's fault. + stage := stageDecode + defer func() { + if r := recover(); r != nil { + out, err = nil, &PanicError{Method: me.name, Stage: stage, Value: r} + } + }() + + inVal := reflect.New(inType).Elem() + if derr := decodeParams(tree, me.inFields, inVal); derr != nil { + return nil, &decodeError{derr.Error()} + } + + stage = stageHandler + ctx := &Context[S]{State: state.(*S), agentID: agentID} + result, herr := h(ctx, inVal.Interface().(In)) + if herr != nil { + return nil, herr + } + if me.outType == nil { + return nil, nil + } + + stage = stageEncode + encoded := encodeTyped(me.outType, reflect.ValueOf(result)) + return &encoded, nil + } + + e.methods[m.name] = me + e.order = append(e.order, m.name) +} + +// --------------------------------------------------------------------------- +// Method-expression binding +// +// A Go method expression ((*S).Method) is a typed func value whose first +// argument is the receiver, so these adapters allow authoring agents as ordinary +// Go methods with full compile-time checking and no reflection: +// +// func (s *CartState) AddItem(in AddItemIn) (int64, error) { ... } +// golem.Implement(Cart, CartAdd, golem.Bind((*CartState).AddItem)) +// +// Go has no overloading, so there is one adapter per method shape: `0` = no +// input, `NoErr` = cannot fail, `Unit` = no output. +// --------------------------------------------------------------------------- + +// Bind adapts func(*S, In) (Out, error) — the canonical shape. +func Bind[S, In, Out any](m func(*S, In) (Out, error)) func(*Context[S], In) (Out, error) { + return func(ctx *Context[S], in In) (Out, error) { return m(ctx.State, in) } +} + +// BindNoErr adapts func(*S, In) Out. +func BindNoErr[S, In, Out any](m func(*S, In) Out) func(*Context[S], In) (Out, error) { + return func(ctx *Context[S], in In) (Out, error) { return m(ctx.State, in), nil } +} + +// Bind0 adapts func(*S) (Out, error) — no input. +func Bind0[S, Out any](m func(*S) (Out, error)) func(*Context[S], Unit) (Out, error) { + return func(ctx *Context[S], _ Unit) (Out, error) { return m(ctx.State) } +} + +// Bind0NoErr adapts func(*S) Out. +func Bind0NoErr[S, Out any](m func(*S) Out) func(*Context[S], Unit) (Out, error) { + return func(ctx *Context[S], _ Unit) (Out, error) { return m(ctx.State), nil } +} + +// BindUnit adapts func(*S, In) — no output. +func BindUnit[S, In any](m func(*S, In)) func(*Context[S], In) (Unit, error) { + return func(ctx *Context[S], in In) (Unit, error) { m(ctx.State, in); return Unit{}, nil } +} + +// Bind0Unit adapts func(*S) — neither input nor output. +func Bind0Unit[S any](m func(*S)) func(*Context[S], Unit) (Unit, error) { + return func(ctx *Context[S], _ Unit) (Unit, error) { m(ctx.State); return Unit{}, nil } +} diff --git a/sdks/go/schema.go b/sdks/go/schema.go new file mode 100644 index 0000000000..b3e960c3e9 --- /dev/null +++ b/sdks/go/schema.go @@ -0,0 +1,155 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "reflect" + + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// The agent type carries ONE schema graph: a flat pool of type nodes, with +// constructor and method schemas referring to it by index. Schemas are derived +// from the Go types by reflection — this is what removes the need for a code +// generation step or an explicit schema DSL. + +type graphBuilder struct{ nodes []types.SchemaTypeNode } + +func (g *graphBuilder) push(body types.SchemaTypeBody) int32 { + g.nodes = append(g.nodes, types.SchemaTypeNode{Body: body}) + return int32(len(g.nodes) - 1) +} + +// add appends the nodes describing t and returns the index of its root node. +func (g *graphBuilder) add(t reflect.Type) int32 { + // Records: children first, then the record node referring to them. + if t.Kind() == reflect.Struct && t != reflect.TypeFor[Unit]() { + var fields []types.NamedFieldType + for i := range t.NumField() { + f := t.Field(i) + if f.PkgPath != "" { + continue + } + fields = append(fields, types.NamedFieldType{Name: lowerFirst(f.Name), Body: g.add(f.Type)}) + } + return g.push(types.MakeSchemaTypeBodyRecordType(fields)) + } + return g.push(bodyFor(t)) +} + +func (g *graphBuilder) build() types.SchemaGraph { + // schema.root is a structurally required placeholder, not the semantic root: + // the meaningful roots are the per-parameter and per-output indices. + if len(g.nodes) == 0 { + g.push(types.MakeSchemaTypeBodyBoolType()) + } + return types.SchemaGraph{TypeNodes: g.nodes, Root: 0} +} + +// bodyFor maps a Go scalar type onto a WIT type body. Bare int/uint are +// rejected: their width is platform-dependent, so the wire type would be +// ambiguous. +func bodyFor(t reflect.Type) types.SchemaTypeBody { + none := witTypes.None[types.NumericRestrictions]() + switch t.Kind() { + case reflect.String: + return types.MakeSchemaTypeBodyStringType() + case reflect.Bool: + return types.MakeSchemaTypeBodyBoolType() + case reflect.Int64: + return types.MakeSchemaTypeBodyS64Type(none) + case reflect.Int32: + return types.MakeSchemaTypeBodyS32Type(none) + case reflect.Int16: + return types.MakeSchemaTypeBodyS16Type(none) + case reflect.Int8: + return types.MakeSchemaTypeBodyS8Type(none) + case reflect.Uint64: + return types.MakeSchemaTypeBodyU64Type(none) + case reflect.Uint32: + return types.MakeSchemaTypeBodyU32Type(none) + case reflect.Uint16: + return types.MakeSchemaTypeBodyU16Type(none) + case reflect.Uint8: + return types.MakeSchemaTypeBodyU8Type(none) + case reflect.Float64: + return types.MakeSchemaTypeBodyF64Type(none) + case reflect.Float32: + return types.MakeSchemaTypeBodyF32Type(none) + case reflect.Int, reflect.Uint: + panic(fmt.Sprintf("golem: %s has a platform-dependent width; use a sized type such as int64/uint64", t)) + default: + panic(fmt.Sprintf("golem: unsupported type %s (kind %s)", t, t.Kind())) + } +} + +// namedFields turns struct fields into WIT named-fields, adding each field's +// type to the shared graph. +func namedFields(g *graphBuilder, fs []fieldInfo) []common.NamedField { + out := make([]common.NamedField, 0, len(fs)) + for _, f := range fs { + out = append(out, common.NamedField{ + Name: f.name, + Source: common.MakeFieldSourceUserSupplied(), + Schema: g.add(f.typ), + }) + } + return out +} + +// buildAgentType derives the full agent-type metadata reported by +// get-definition / discover-agent-types. +func buildAgentType(e *agentEntry) common.AgentType { + var g graphBuilder + + ctorFields := namedFields(&g, e.idFields) + methods := make([]common.AgentMethod, 0, len(e.order)) + for _, name := range e.order { + m := e.methods[name] + in := namedFields(&g, m.inFields) + out := common.MakeOutputSchemaUnit() + if m.outType != nil { + out = common.MakeOutputSchemaSingle(g.add(m.outType)) + } + methods = append(methods, common.AgentMethod{ + Name: m.name, + Description: m.desc, + InputSchema: common.MakeInputSchemaParameters(in), + OutputSchema: out, + PromptHint: witTypes.None[string](), + ReadOnly: witTypes.None[common.ReadOnlyConfig](), + }) + } + + return common.AgentType{ + TypeName: e.name, + Description: e.desc, + SourceLanguage: "go", + Schema: g.build(), + Constructor: common.AgentConstructor{ + Name: witTypes.None[string](), + Description: e.desc, + PromptHint: witTypes.None[string](), + InputSchema: common.MakeInputSchemaParameters(ctorFields), + }, + Methods: methods, + Mode: e.mode, + HttpMount: witTypes.None[common.HttpMountDetails](), + Snapshotting: common.MakeSnapshottingDisabled(), + } +} From cb64cf8def52285fc3084d10921d2b54fc3ce6e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Wed, 22 Jul 2026 23:36:45 +0200 Subject: [PATCH 003/149] go sdk: compile codecs per type; add containers, option and result --- sdks/go/codec.go | 542 ++++++++++++++++++++++++++++++++++++++++++ sdks/go/codec_test.go | 381 +++++++++++++++++++++++++++++ sdks/go/marshal.go | 167 ++----------- sdks/go/registry.go | 17 +- sdks/go/schema.go | 95 +++----- sdks/go/types.go | 193 +++++++++++++++ 6 files changed, 1176 insertions(+), 219 deletions(-) create mode 100644 sdks/go/codec.go create mode 100644 sdks/go/codec_test.go create mode 100644 sdks/go/types.go diff --git a/sdks/go/codec.go b/sdks/go/codec.go new file mode 100644 index 0000000000..e9224c2a10 --- /dev/null +++ b/sdks/go/codec.go @@ -0,0 +1,542 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "reflect" + "sort" + + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// A codec is everything the SDK knows about one Go type: how to describe it in +// the schema graph, how to encode a value of it, and how to decode one. +// +// Bundling the three together is deliberate. The schema and the value tree must +// agree structurally — a record type with three fields must be matched by a +// record value with three children, in the same order — and nothing on the wire +// enforces that. Deriving all three from one place makes disagreement +// impossible by construction, instead of a convention three separate walks have +// to keep by hand. +// +// Nesting is composition: the codec for Option[Result[T, E]] is built from the +// codec for Result[T, E], which is built from the codecs for T and E. No +// composite needs to know how deep it sits. +type codec struct { + typ reflect.Type + body func(*graphBuilder) types.SchemaTypeBody + encode func(*valBuilder, reflect.Value) int32 + decode func(*decoder, reflect.Value, int32) error +} + +// codecCache memoizes compilation. Compilation happens during registration +// (package init), which is single-goroutine, so no locking is needed. +var codecCache = map[reflect.Type]*codec{} + +// compile returns the codec for t, building it if this is the first request. +// +// The cache entry is installed *before* the children are compiled, so a +// self-referential type resolves to the in-progress codec rather than recursing +// forever. Its function fields are still nil at that moment, but every use is +// behind a closure that dereferences them at call time, by which point the +// outer compile has filled them in. +func compile(t reflect.Type) *codec { + if c, ok := codecCache[t]; ok { + return c + } + c := &codec{typ: t} + codecCache[t] = c + buildCodec(c) + return c +} + +func buildCodec(c *codec) { + // SDK composite types are structs, so they must be recognised before the + // generic struct-as-record case. The check is an interface assertion on the + // zero value, done once here rather than per value. + if sdkComposite(c) { + return + } + + none := witTypes.None[types.NumericRestrictions]() + + switch c.typ.Kind() { + case reflect.String: + scalar(c, types.MakeSchemaTypeBodyStringType(), types.SchemaValueNodeStringValue, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeStringValue(v.String())) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetString(n.StringValue()) }) + + case reflect.Bool: + scalar(c, types.MakeSchemaTypeBodyBoolType(), types.SchemaValueNodeBoolValue, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeBoolValue(v.Bool())) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetBool(n.BoolValue()) }) + + case reflect.Int64: + scalar(c, types.MakeSchemaTypeBodyS64Type(none), types.SchemaValueNodeS64Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeS64Value(v.Int())) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetInt(n.S64Value()) }) + + case reflect.Int32: + scalar(c, types.MakeSchemaTypeBodyS32Type(none), types.SchemaValueNodeS32Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeS32Value(int32(v.Int()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetInt(int64(n.S32Value())) }) + + case reflect.Int16: + scalar(c, types.MakeSchemaTypeBodyS16Type(none), types.SchemaValueNodeS16Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeS16Value(int16(v.Int()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetInt(int64(n.S16Value())) }) + + case reflect.Int8: + scalar(c, types.MakeSchemaTypeBodyS8Type(none), types.SchemaValueNodeS8Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeS8Value(int8(v.Int()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetInt(int64(n.S8Value())) }) + + case reflect.Uint64: + scalar(c, types.MakeSchemaTypeBodyU64Type(none), types.SchemaValueNodeU64Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeU64Value(v.Uint())) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetUint(n.U64Value()) }) + + case reflect.Uint32: + scalar(c, types.MakeSchemaTypeBodyU32Type(none), types.SchemaValueNodeU32Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeU32Value(uint32(v.Uint()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetUint(uint64(n.U32Value())) }) + + case reflect.Uint16: + scalar(c, types.MakeSchemaTypeBodyU16Type(none), types.SchemaValueNodeU16Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeU16Value(uint16(v.Uint()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetUint(uint64(n.U16Value())) }) + + case reflect.Uint8: + scalar(c, types.MakeSchemaTypeBodyU8Type(none), types.SchemaValueNodeU8Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeU8Value(uint8(v.Uint()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetUint(uint64(n.U8Value())) }) + + case reflect.Float64: + scalar(c, types.MakeSchemaTypeBodyF64Type(none), types.SchemaValueNodeF64Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeF64Value(v.Float())) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetFloat(n.F64Value()) }) + + case reflect.Float32: + scalar(c, types.MakeSchemaTypeBodyF32Type(none), types.SchemaValueNodeF32Value, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeF32Value(float32(v.Float()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetFloat(float64(n.F32Value())) }) + + case reflect.Struct: + compileRecord(c) + + case reflect.Pointer: + // A pointer is Go's spelling of "optional". This is the same convention + // encoding/json, protobuf-go and serde use, so it should not surprise — + // but it does mean a *T used purely to avoid copying still publishes as + // option to callers. + compileOption(c, compile(c.typ.Elem()), pointerOps(c.typ)) + + case reflect.Slice: + compileList(c, compile(c.typ.Elem())) + + case reflect.Array: + compileFixedList(c, compile(c.typ.Elem())) + + case reflect.Map: + compileMap(c) + + case reflect.Int, reflect.Uint: + panic(fmt.Sprintf("golem: %s has a platform-dependent width; use a sized type such as int64/uint64", c.typ)) + + default: + panic(fmt.Sprintf("golem: unsupported type %s (kind %s)", c.typ, c.typ.Kind())) + } +} + +// sdkComposite recognises the SDK's own composite types (Option, Result, ...) +// and fills in c if c.typ is one of them. +func sdkComposite(c *codec) bool { + if c.typ.Kind() != reflect.Struct { + return false + } + zero := reflect.New(c.typ).Elem().Interface() + + switch z := zero.(type) { + case optionish: + compileOption(c, compile(z.optionElem()), optionValueOps()) + return true + case resultish: + okT, errT := z.resultElems() + compileResult(c, compile(okT), compile(errT)) + return true + } + return false +} + +// scalar fills in a codec for a type that occupies a single node on both sides. +// Decoding checks the tag first: the generated accessors panic on mismatch, and +// malformed input must produce an error, not a panic. +func scalar( + c *codec, + body types.SchemaTypeBody, + tag uint8, + enc func(*valBuilder, reflect.Value) int32, + set func(reflect.Value, types.SchemaValueNode), +) { + c.body = func(*graphBuilder) types.SchemaTypeBody { return body } + c.encode = enc + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + n, err := d.node(idx) + if err != nil { + return err + } + if n.Tag() != tag { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + set(dst, n) + return nil + } +} + +// compileRecord handles Go structs, which lower to WIT records. Fields are +// positional on the wire: declaration order is the order the schema reports and +// the order values are written in. +func compileRecord(c *codec) { + fields := structFields(c.typ) + + c.body = func(g *graphBuilder) types.SchemaTypeBody { + nf := make([]types.NamedFieldType, 0, len(fields)) + for _, f := range fields { + nf = append(nf, types.NamedFieldType{Name: f.name, Body: g.node(f.codec)}) + } + return types.MakeSchemaTypeBodyRecordType(nf) + } + + c.encode = func(b *valBuilder, v reflect.Value) int32 { + // Children are appended first; the record node then refers to them. + idxs := make([]int32, 0, len(fields)) + for _, f := range fields { + idxs = append(idxs, f.codec.encode(b, v.Field(f.index))) + } + return b.push(types.MakeSchemaValueNodeRecordValue(idxs)) + } + + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + n, err := d.node(idx) + if err != nil { + return err + } + if n.Tag() != types.SchemaValueNodeRecordValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + idxs := n.RecordValue() + if len(idxs) < len(fields) { + return fmt.Errorf("record for %s has %d field(s), want %d", c.typ, len(idxs), len(fields)) + } + for i, f := range fields { + if err := f.codec.decode(d, dst.Field(f.index), idxs[i]); err != nil { + return fmt.Errorf("%s.%s: %w", c.typ, f.name, err) + } + } + return nil + } +} + +// --------------------------------------------------------------------------- +// containers +// --------------------------------------------------------------------------- + +// optionOps abstracts the two Go spellings of an optional value, so *T and +// Option[T] share one codec and therefore produce identical schemas. +type optionOps struct { + // get reports whether the value is present, and if so yields the inner value. + get func(v reflect.Value) (reflect.Value, bool) + // setNone clears dst. + setNone func(dst reflect.Value) + // setSome prepares dst to hold a value and returns the slot to decode into. + setSome func(dst reflect.Value) reflect.Value +} + +func pointerOps(t reflect.Type) optionOps { + return optionOps{ + get: func(v reflect.Value) (reflect.Value, bool) { + if v.IsNil() { + return reflect.Value{}, false + } + return v.Elem(), true + }, + setNone: func(dst reflect.Value) { dst.Set(reflect.Zero(t)) }, + setSome: func(dst reflect.Value) reflect.Value { + p := reflect.New(t.Elem()) + dst.Set(p) + return p.Elem() + }, + } +} + +func compileOption(c *codec, inner *codec, ops optionOps) { + c.body = func(g *graphBuilder) types.SchemaTypeBody { + return types.MakeSchemaTypeBodyOptionType(g.node(inner)) + } + c.encode = func(b *valBuilder, v reflect.Value) int32 { + if in, some := ops.get(v); some { + idx := inner.encode(b, in) + return b.push(types.MakeSchemaValueNodeOptionValue(witTypes.Some(idx))) + } + return b.push(types.MakeSchemaValueNodeOptionValue(witTypes.None[int32]())) + } + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + n, err := d.node(idx) + if err != nil { + return err + } + if n.Tag() != types.SchemaValueNodeOptionValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + opt := n.OptionValue() + if opt.IsNone() { + ops.setNone(dst) + return nil + } + return inner.decode(d, ops.setSome(dst), opt.Some()) + } +} + +func compileList(c *codec, elem *codec) { + c.body = func(g *graphBuilder) types.SchemaTypeBody { + return types.MakeSchemaTypeBodyListType(g.node(elem)) + } + c.encode = func(b *valBuilder, v reflect.Value) int32 { + idxs := make([]int32, 0, v.Len()) + for i := range v.Len() { + idxs = append(idxs, elem.encode(b, v.Index(i))) + } + return b.push(types.MakeSchemaValueNodeListValue(idxs)) + } + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + n, err := d.node(idx) + if err != nil { + return err + } + if n.Tag() != types.SchemaValueNodeListValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + idxs := n.ListValue() + out := reflect.MakeSlice(c.typ, len(idxs), len(idxs)) + for i, child := range idxs { + if err := elem.decode(d, out.Index(i), child); err != nil { + return fmt.Errorf("%s[%d]: %w", c.typ, i, err) + } + } + dst.Set(out) + return nil + } +} + +// compileFixedList handles Go arrays, whose length is part of the type. +func compileFixedList(c *codec, elem *codec) { + n := c.typ.Len() + c.body = func(g *graphBuilder) types.SchemaTypeBody { + return types.MakeSchemaTypeBodyFixedListType(types.FixedListSpec{ + Element: g.node(elem), + Length: uint32(n), + }) + } + c.encode = func(b *valBuilder, v reflect.Value) int32 { + idxs := make([]int32, 0, n) + for i := range n { + idxs = append(idxs, elem.encode(b, v.Index(i))) + } + return b.push(types.MakeSchemaValueNodeFixedListValue(idxs)) + } + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + node, err := d.node(idx) + if err != nil { + return err + } + if node.Tag() != types.SchemaValueNodeFixedListValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", node.Tag(), c.typ) + } + idxs := node.FixedListValue() + if len(idxs) != n { + return fmt.Errorf("fixed list for %s has %d element(s), want %d", c.typ, len(idxs), n) + } + for i, child := range idxs { + if err := elem.decode(d, dst.Index(i), child); err != nil { + return fmt.Errorf("%s[%d]: %w", c.typ, i, err) + } + } + return nil + } +} + +func compileMap(c *codec) { + kt, vt := c.typ.Key(), c.typ.Elem() + if !isPrimitiveKind(kt.Kind()) { + panic(fmt.Sprintf("golem: map key type %s is not a primitive; WIT restricts map keys to primitives", kt)) + } + key, val := compile(kt), compile(vt) + + c.body = func(g *graphBuilder) types.SchemaTypeBody { + return types.MakeSchemaTypeBodyMapType(types.MapSpec{Key: g.node(key), Value: g.node(val)}) + } + c.encode = func(b *valBuilder, v reflect.Value) int32 { + // Go randomizes map iteration order. Encoding must be deterministic: + // these trees are recorded in the oplog and compared on replay. + keys := v.MapKeys() + sortValues(keys) + entries := make([]types.MapEntry, 0, len(keys)) + for _, k := range keys { + ki := key.encode(b, k) + vi := val.encode(b, v.MapIndex(k)) + entries = append(entries, types.MapEntry{Key: ki, Value: vi}) + } + return b.push(types.MakeSchemaValueNodeMapValue(entries)) + } + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + n, err := d.node(idx) + if err != nil { + return err + } + if n.Tag() != types.SchemaValueNodeMapValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + out := reflect.MakeMap(c.typ) + for i, e := range n.MapValue() { + k := reflect.New(kt).Elem() + if err := key.decode(d, k, e.Key); err != nil { + return fmt.Errorf("%s key %d: %w", c.typ, i, err) + } + v := reflect.New(vt).Elem() + if err := val.decode(d, v, e.Value); err != nil { + return fmt.Errorf("%s value %d: %w", c.typ, i, err) + } + out.SetMapIndex(k, v) + } + dst.Set(out) + return nil + } +} + +func isPrimitiveKind(k reflect.Kind) bool { + switch k { + case reflect.String, reflect.Bool, + reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, + reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, + reflect.Float32, reflect.Float64: + return true + } + return false +} + +// sortValues orders primitive map keys so encoding is deterministic. +func sortValues(vs []reflect.Value) { + sort.Slice(vs, func(i, j int) bool { + a, b := vs[i], vs[j] + switch a.Kind() { + case reflect.String: + return a.String() < b.String() + case reflect.Bool: + return !a.Bool() && b.Bool() + case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + return a.Int() < b.Int() + case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + return a.Uint() < b.Uint() + case reflect.Float32, reflect.Float64: + return a.Float() < b.Float() + } + return false + }) +} + +// optionValueOps drives Option[T] through the same codec as *T, so the two +// spellings produce identical schemas and are interchangeable. +func optionValueOps() optionOps { + return optionOps{ + get: func(v reflect.Value) (reflect.Value, bool) { + return v.Interface().(optionish).optionGet() + }, + setNone: func(dst reflect.Value) { + dst.Addr().Interface().(optionSetter).optionSetNone() + }, + setSome: func(dst reflect.Value) reflect.Value { + return dst.Addr().Interface().(optionSetter).optionSetSome() + }, + } +} + +func compileResult(c *codec, okC, errC *codec) { + c.body = func(g *graphBuilder) types.SchemaTypeBody { + return types.MakeSchemaTypeBodyResultType(types.ResultSpec{ + Ok: witTypes.Some(g.node(okC)), + Err: witTypes.Some(g.node(errC)), + }) + } + c.encode = func(b *valBuilder, v reflect.Value) int32 { + inner, isErr := v.Interface().(resultish).resultGet() + if isErr { + i := errC.encode(b, inner) + return b.push(types.MakeSchemaValueNodeResultValue( + types.MakeResultValuePayloadErrValue(witTypes.Some(i)))) + } + i := okC.encode(b, inner) + return b.push(types.MakeSchemaValueNodeResultValue( + types.MakeResultValuePayloadOkValue(witTypes.Some(i)))) + } + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + n, err := d.node(idx) + if err != nil { + return err + } + if n.Tag() != types.SchemaValueNodeResultValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + setter := dst.Addr().Interface().(resultSetter) + payload := n.ResultValue() + if payload.Tag() == types.ResultValuePayloadErrValue { + child := payload.ErrValue() + if child.IsNone() { + return fmt.Errorf("%s: err arm carries no value", c.typ) + } + return errC.decode(d, setter.resultSetErr(), child.Some()) + } + child := payload.OkValue() + if child.IsNone() { + return fmt.Errorf("%s: ok arm carries no value", c.typ) + } + return okC.decode(d, setter.resultSetOk(), child.Some()) + } +} diff --git a/sdks/go/codec_test.go b/sdks/go/codec_test.go new file mode 100644 index 0000000000..c6b4c5f652 --- /dev/null +++ b/sdks/go/codec_test.go @@ -0,0 +1,381 @@ +package golem + +import ( + "fmt" + "reflect" + "strings" + "testing" + + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" +) + +// --------------------------------------------------------------------------- +// schema / value agreement +// --------------------------------------------------------------------------- + +// checkAgreement walks a type graph and a value tree together and asserts every +// value node matches the schema node describing it — same kind, same arity. +// +// This is the property the codec design exists to guarantee. Encoding, decoding +// and schema derivation used to be three separate walks that had to agree by +// convention; now they are built together per type, and this check is what +// proves it for every case exercised below. +func checkAgreement(g types.SchemaGraph, sIdx int32, tree types.SchemaValueTree, vIdx int32, path string) error { + if int(sIdx) >= len(g.TypeNodes) { + return fmt.Errorf("%s: type index %d out of range", path, sIdx) + } + if int(vIdx) >= len(tree.ValueNodes) { + return fmt.Errorf("%s: value index %d out of range", path, vIdx) + } + body := g.TypeNodes[sIdx].Body + val := tree.ValueNodes[vIdx] + + mismatch := func() error { + return fmt.Errorf("%s: value tag %d does not match schema tag %d", path, val.Tag(), body.Tag()) + } + + switch body.Tag() { + case types.SchemaTypeBodyRecordType: + if val.Tag() != types.SchemaValueNodeRecordValue { + return mismatch() + } + fields, children := body.RecordType(), val.RecordValue() + if len(fields) != len(children) { + return fmt.Errorf("%s: record has %d value(s) but schema declares %d field(s)", + path, len(children), len(fields)) + } + for i, f := range fields { + if err := checkAgreement(g, f.Body, tree, children[i], path+"."+f.Name); err != nil { + return err + } + } + case types.SchemaTypeBodyOptionType: + if val.Tag() != types.SchemaValueNodeOptionValue { + return mismatch() + } + if inner := val.OptionValue(); inner.IsSome() { + return checkAgreement(g, body.OptionType(), tree, inner.Some(), path+"?") + } + case types.SchemaTypeBodyResultType: + if val.Tag() != types.SchemaValueNodeResultValue { + return mismatch() + } + spec, payload := body.ResultType(), val.ResultValue() + if payload.Tag() == types.ResultValuePayloadErrValue { + if c := payload.ErrValue(); c.IsSome() { + return checkAgreement(g, spec.Err.Some(), tree, c.Some(), path+".err") + } + } else if c := payload.OkValue(); c.IsSome() { + return checkAgreement(g, spec.Ok.Some(), tree, c.Some(), path+".ok") + } + case types.SchemaTypeBodyListType: + if val.Tag() != types.SchemaValueNodeListValue { + return mismatch() + } + for i, child := range val.ListValue() { + if err := checkAgreement(g, body.ListType(), tree, child, fmt.Sprintf("%s[%d]", path, i)); err != nil { + return err + } + } + case types.SchemaTypeBodyFixedListType: + if val.Tag() != types.SchemaValueNodeFixedListValue { + return mismatch() + } + spec, children := body.FixedListType(), val.FixedListValue() + if int(spec.Length) != len(children) { + return fmt.Errorf("%s: fixed list has %d element(s), schema declares %d", + path, len(children), spec.Length) + } + for i, child := range children { + if err := checkAgreement(g, spec.Element, tree, child, fmt.Sprintf("%s[%d]", path, i)); err != nil { + return err + } + } + case types.SchemaTypeBodyMapType: + if val.Tag() != types.SchemaValueNodeMapValue { + return mismatch() + } + spec := body.MapType() + for i, e := range val.MapValue() { + if err := checkAgreement(g, spec.Key, tree, e.Key, fmt.Sprintf("%s.key%d", path, i)); err != nil { + return err + } + if err := checkAgreement(g, spec.Value, tree, e.Value, fmt.Sprintf("%s.val%d", path, i)); err != nil { + return err + } + } + } + return nil +} + +// roundTrip encodes in, verifies the tree agrees with the derived schema, then +// decodes it back. +func roundTrip[T any](t *testing.T, in T) T { + t.Helper() + c := compile(reflect.TypeFor[T]()) + + tree := encodeWith(c, reflect.ValueOf(in)) + + var g graphBuilder + root := g.node(c) + if err := checkAgreement(g.build(), root, tree, tree.Root, reflect.TypeFor[T]().String()); err != nil { + t.Fatalf("schema/value disagreement: %v", err) + } + + out := reflect.New(reflect.TypeFor[T]()).Elem() + d := decoder{nodes: tree.ValueNodes} + if err := c.decode(&d, out, tree.Root); err != nil { + t.Fatalf("decode failed: %v", err) + } + return out.Interface().(T) +} + +func assertRoundTrip[T any](t *testing.T, name string, in T) { + t.Helper() + if got := roundTrip(t, in); !reflect.DeepEqual(got, in) { + t.Errorf("%s: round trip changed the value\n got: %#v\nwant: %#v", name, got, in) + } +} + +// --------------------------------------------------------------------------- +// types under test +// --------------------------------------------------------------------------- + +type Money struct { + Amount int64 + Currency string +} + +type Line struct { + Sku string + Qty int32 +} + +type Order struct { + ID string + Coupon *string + Lines []Line + Refund Option[Result[Money, string]] + Tags map[string]int64 + Digits [3]uint8 +} + +func TestRoundTripPrimitivesAndRecords(t *testing.T) { + assertRoundTrip(t, "string", "hello") + assertRoundTrip(t, "bool", true) + assertRoundTrip(t, "int64", int64(-9000)) + assertRoundTrip(t, "uint8", uint8(255)) + assertRoundTrip(t, "float64", 3.5) + assertRoundTrip(t, "record", Money{Amount: 1050, Currency: "EUR"}) +} + +func TestRoundTripNestedComposites(t *testing.T) { + coupon := "SUMMER" + full := Order{ + ID: "ord-1", + Coupon: &coupon, + Lines: []Line{{Sku: "a", Qty: 2}, {Sku: "b", Qty: 1}}, + Refund: Some(Ok[Money, string](Money{Amount: 250, Currency: "EUR"})), + Tags: map[string]int64{"priority": 1, "region": 7}, + Digits: [3]uint8{1, 2, 3}, + } + assertRoundTrip(t, "order (all present)", full) + + // The absent/failed shapes must round-trip too. + empty := Order{ + ID: "ord-2", + Coupon: nil, + Lines: []Line{}, + Refund: None[Result[Money, string]](), + Tags: map[string]int64{}, + Digits: [3]uint8{}, + } + assertRoundTrip(t, "order (all absent)", empty) + + failed := full + failed.Refund = Some(Err[Money, string]("card expired")) + assertRoundTrip(t, "order (result is err)", failed) +} + +func TestRoundTripDeeplyNestedOptionAndResult(t *testing.T) { + // The shapes that motivated the codec design: options of results, results of + // options, options of options, and lists of each. + assertRoundTrip(t, "option>", Some(Some("x"))) + assertRoundTrip(t, "option> inner none", Some(None[string]())) + assertRoundTrip(t, "option> outer none", None[Option[string]]()) + assertRoundTrip(t, "**string via pointers", func() **string { + s := "deep" + p := &s + return &p + }()) + assertRoundTrip(t, "result, string>", + Ok[Option[Money], string](Some(Money{Amount: 1, Currency: "GBP"}))) + assertRoundTrip(t, "result>", + Ok[Result[int64, string], string](Err[int64, string]("inner"))) + assertRoundTrip(t, "list>>", []Option[Result[Money, string]]{ + Some(Ok[Money, string](Money{Amount: 5, Currency: "USD"})), + None[Result[Money, string]](), + Some(Err[Money, string]("nope")), + }) + assertRoundTrip(t, "map>>", map[string][]Option[int64]{ + "a": {Some(int64(1)), None[int64]()}, + "b": {}, + }) +} + +// *T and Option[T] are two spellings of the same thing, so they must produce +// byte-identical schemas. +func TestPointerAndOptionProduceTheSameSchema(t *testing.T) { + schemaOf := func(rt reflect.Type) types.SchemaGraph { + var g graphBuilder + g.node(compile(rt)) + return g.build() + } + ptr := schemaOf(reflect.TypeFor[*string]()) + opt := schemaOf(reflect.TypeFor[Option[string]]()) + + if len(ptr.TypeNodes) != len(opt.TypeNodes) { + t.Fatalf("node counts differ: *string=%d Option[string]=%d", len(ptr.TypeNodes), len(opt.TypeNodes)) + } + for i := range ptr.TypeNodes { + if a, b := ptr.TypeNodes[i].Body.Tag(), opt.TypeNodes[i].Body.Tag(); a != b { + t.Fatalf("node %d differs: *string tag %d, Option[string] tag %d", i, a, b) + } + } + // node 0 is the option (its index is reserved before the inner type is added) + if ptr.TypeNodes[0].Body.Tag() != types.SchemaTypeBodyOptionType { + t.Fatal("expected an option-type node at the root") + } + if ptr.TypeNodes[1].Body.Tag() != types.SchemaTypeBodyStringType { + t.Fatal("expected the inner string type") + } +} + +// --------------------------------------------------------------------------- +// recursion +// --------------------------------------------------------------------------- + +type Tree struct { + Label string + Children []*Tree +} + +func TestRecursiveTypeProducesAFiniteGraph(t *testing.T) { + // Without the reserve-before-recurse guard in compile and graphBuilder.node, + // either of these would recurse until the stack overflows. + c := compile(reflect.TypeFor[Tree]()) + + var g graphBuilder + g.node(c) + graph := g.build() + if len(graph.TypeNodes) > 8 { + t.Fatalf("recursive type produced %d nodes; expected a small finite graph", len(graph.TypeNodes)) + } + + assertRoundTrip(t, "recursive tree", Tree{ + Label: "root", + Children: []*Tree{ + {Label: "a", Children: []*Tree{{Label: "a1", Children: []*Tree{}}}}, + {Label: "b", Children: []*Tree{}}, + }, + }) +} + +func TestSharedTypeIsEmittedOnce(t *testing.T) { + type Pair struct { + Left Money + Right Money + } + var g graphBuilder + g.node(compile(reflect.TypeFor[Pair]())) + graph := g.build() + + records := 0 + for _, n := range graph.TypeNodes { + if n.Body.Tag() == types.SchemaTypeBodyRecordType { + records++ + } + } + // Pair and Money — Money must not be duplicated for each field. + if records != 2 { + t.Fatalf("expected 2 record nodes (Pair, Money), got %d", records) + } +} + +// --------------------------------------------------------------------------- +// determinism and rejection +// --------------------------------------------------------------------------- + +func TestMapEncodingIsDeterministic(t *testing.T) { + // Go randomizes map iteration; these trees land in the oplog and are + // compared on replay, so encoding must be stable. + m := map[string]int64{"z": 1, "a": 2, "m": 3, "b": 4, "q": 5} + c := compile(reflect.TypeFor[map[string]int64]()) + + first := encodeWith(c, reflect.ValueOf(m)) + for range 50 { + again := encodeWith(c, reflect.ValueOf(m)) + if !reflect.DeepEqual(first, again) { + t.Fatal("map encoding is not deterministic across runs") + } + } +} + +func mustPanic(t *testing.T, want string, f func()) { + t.Helper() + defer func() { + r := recover() + if r == nil { + t.Fatalf("expected a panic mentioning %q", want) + } + if msg := fmt.Sprint(r); !strings.Contains(msg, want) { + t.Fatalf("panic %q does not mention %q", msg, want) + } + }() + f() +} + +func TestUnsupportedTypesAreRejectedAtRegistration(t *testing.T) { + // Registration-time panics, not invocation-time surprises. + mustPanic(t, "platform-dependent width", func() { compile(reflect.TypeFor[int]()) }) + mustPanic(t, "platform-dependent width", func() { compile(reflect.TypeFor[uint]()) }) + mustPanic(t, "not a primitive", func() { compile(reflect.TypeFor[map[Money]string]()) }) + mustPanic(t, "unsupported type", func() { compile(reflect.TypeFor[chan int]()) }) +} + +func TestMalformedInputIsAnErrorNotAPanic(t *testing.T) { + // A string where a record is expected, and a truncated tree. + c := compile(reflect.TypeFor[Money]()) + tree := types.SchemaValueTree{ + ValueNodes: []types.SchemaValueNode{types.MakeSchemaValueNodeStringValue("nope")}, + Root: 0, + } + out := reflect.New(reflect.TypeFor[Money]()).Elem() + d := decoder{nodes: tree.ValueNodes} + if err := c.decode(&d, out, tree.Root); err == nil { + t.Fatal("expected an error decoding a string into a record") + } + + empty := decoder{nodes: nil} + if err := c.decode(&empty, out, 0); err == nil { + t.Fatal("expected an error for an out-of-range node index") + } +} + +// A nil slice and an empty slice are indistinguishable on the wire — both are an +// empty list — so decoding normalizes nil to empty. This matches encoding/json +// and is worth pinning, since it is the one place a round trip is not identity. +func TestNilSliceDecodesAsEmptySlice(t *testing.T) { + got := roundTrip(t, Tree{Label: "leaf", Children: nil}) + if got.Children == nil { + t.Fatal("expected a non-nil empty slice after decoding") + } + if len(got.Children) != 0 { + t.Fatalf("expected an empty slice, got %d element(s)", len(got.Children)) + } + // A nil map normalizes the same way. + type withMap struct{ M map[string]int64 } + if m := roundTrip(t, withMap{M: nil}); m.M == nil || len(m.M) != 0 { + t.Fatalf("expected a non-nil empty map, got %#v", m.M) + } +} diff --git a/sdks/go/marshal.go b/sdks/go/marshal.go index f470d9d191..0b35c066bd 100644 --- a/sdks/go/marshal.go +++ b/sdks/go/marshal.go @@ -22,14 +22,8 @@ import ( ) // Values cross the boundary as a schema-value-tree: a flat pool of nodes plus -// the index of the root. Records are positional — field order is declaration -// order, which is also what the schema derivation reports. -// -// Encoding is type-directed (driven by the declared Go type, not the runtime -// value) so that declared interface types can select variant encoding later. -// -// Decoding is deliberately defensive: the generated accessors panic on tag -// mismatch, so every access checks Tag() first and returns an error instead. +// the index of the root. This file holds only the node-level primitives; how a +// given Go type maps onto them lives in its codec (see codec.go). // --------------------------------------------------------------------------- // encode @@ -42,62 +36,23 @@ func (b *valBuilder) push(n types.SchemaValueNode) int32 { return int32(len(b.nodes) - 1) } -func (b *valBuilder) addTyped(t reflect.Type, v reflect.Value) int32 { - if v.Kind() == reflect.Interface { - v = v.Elem() - } - switch v.Kind() { - case reflect.String: - return b.push(types.MakeSchemaValueNodeStringValue(v.String())) - case reflect.Bool: - return b.push(types.MakeSchemaValueNodeBoolValue(v.Bool())) - case reflect.Int, reflect.Int64: - return b.push(types.MakeSchemaValueNodeS64Value(v.Int())) - case reflect.Int32: - return b.push(types.MakeSchemaValueNodeS32Value(int32(v.Int()))) - case reflect.Int16: - return b.push(types.MakeSchemaValueNodeS16Value(int16(v.Int()))) - case reflect.Int8: - return b.push(types.MakeSchemaValueNodeS8Value(int8(v.Int()))) - case reflect.Uint, reflect.Uint64: - return b.push(types.MakeSchemaValueNodeU64Value(v.Uint())) - case reflect.Uint32: - return b.push(types.MakeSchemaValueNodeU32Value(uint32(v.Uint()))) - case reflect.Uint16: - return b.push(types.MakeSchemaValueNodeU16Value(uint16(v.Uint()))) - case reflect.Uint8: - return b.push(types.MakeSchemaValueNodeU8Value(uint8(v.Uint()))) - case reflect.Float64: - return b.push(types.MakeSchemaValueNodeF64Value(v.Float())) - case reflect.Float32: - return b.push(types.MakeSchemaValueNodeF32Value(float32(v.Float()))) - case reflect.Struct: - // Children are appended first; the record node then refers to them. - var idxs []int32 - for i := range v.NumField() { - f := v.Type().Field(i) - if f.PkgPath != "" { - continue - } - idxs = append(idxs, b.addTyped(f.Type, v.Field(i))) - } - return b.push(types.MakeSchemaValueNodeRecordValue(idxs)) - default: - panic(fmt.Sprintf("golem: cannot encode Go type %s (kind %s)", t, v.Kind())) - } -} - -// encodeTyped encodes v, whose declared type is t, as a value tree. -func encodeTyped(t reflect.Type, v reflect.Value) types.SchemaValueTree { +// encodeWith encodes v using c, producing a complete value tree. +func encodeWith(c *codec, v reflect.Value) types.SchemaValueTree { var b valBuilder - root := b.addTyped(t, v) + root := c.encode(&b, v) return types.SchemaValueTree{ValueNodes: b.nodes, Root: root} } -// encodeParams encodes a struct as a method/constructor parameter list, i.e. a -// record whose fields are the parameters in declaration order. -func encodeParams(t reflect.Type, v reflect.Value) types.SchemaValueTree { - return encodeTyped(t, v) +// encodeParams encodes a parameter list — a record whose fields are the +// parameters, in declaration order. +func encodeParams(fields []fieldInfo, v reflect.Value) types.SchemaValueTree { + var b valBuilder + idxs := make([]int32, 0, len(fields)) + for _, f := range fields { + idxs = append(idxs, f.codec.encode(&b, v.Field(f.index))) + } + root := b.push(types.MakeSchemaValueNodeRecordValue(idxs)) + return types.SchemaValueTree{ValueNodes: b.nodes, Root: root} } // --------------------------------------------------------------------------- @@ -113,96 +68,6 @@ func (d *decoder) node(idx int32) (types.SchemaValueNode, error) { return d.nodes[idx], nil } -// into decodes the node at idx into dst, whose declared type is t. -func (d *decoder) into(t reflect.Type, dst reflect.Value, idx int32) error { - n, err := d.node(idx) - if err != nil { - return err - } - tag := n.Tag() - - // Every branch checks Tag() first: the generated accessors panic on - // mismatch, and malformed input must produce an error, not a panic. - switch t.Kind() { - case reflect.String: - if tag == types.SchemaValueNodeStringValue { - dst.SetString(n.StringValue()) - return nil - } - case reflect.Bool: - if tag == types.SchemaValueNodeBoolValue { - dst.SetBool(n.BoolValue()) - return nil - } - case reflect.Int, reflect.Int64: - if tag == types.SchemaValueNodeS64Value { - dst.SetInt(n.S64Value()) - return nil - } - case reflect.Int32: - if tag == types.SchemaValueNodeS32Value { - dst.SetInt(int64(n.S32Value())) - return nil - } - case reflect.Int16: - if tag == types.SchemaValueNodeS16Value { - dst.SetInt(int64(n.S16Value())) - return nil - } - case reflect.Int8: - if tag == types.SchemaValueNodeS8Value { - dst.SetInt(int64(n.S8Value())) - return nil - } - case reflect.Uint, reflect.Uint64: - if tag == types.SchemaValueNodeU64Value { - dst.SetUint(n.U64Value()) - return nil - } - case reflect.Uint32: - if tag == types.SchemaValueNodeU32Value { - dst.SetUint(uint64(n.U32Value())) - return nil - } - case reflect.Uint16: - if tag == types.SchemaValueNodeU16Value { - dst.SetUint(uint64(n.U16Value())) - return nil - } - case reflect.Uint8: - if tag == types.SchemaValueNodeU8Value { - dst.SetUint(uint64(n.U8Value())) - return nil - } - case reflect.Float64: - if tag == types.SchemaValueNodeF64Value { - dst.SetFloat(n.F64Value()) - return nil - } - case reflect.Float32: - if tag == types.SchemaValueNodeF32Value { - dst.SetFloat(float64(n.F32Value())) - return nil - } - case reflect.Struct: - if tag != types.SchemaValueNodeRecordValue { - break - } - idxs := n.RecordValue() - fields := structFields(t) - if len(idxs) < len(fields) { - return fmt.Errorf("record for %s has %d field(s), want %d", t, len(idxs), len(fields)) - } - for i, f := range fields { - if err := d.into(f.typ, dst.Field(f.index), idxs[i]); err != nil { - return fmt.Errorf("%s.%s: %w", t, f.name, err) - } - } - return nil - } - return fmt.Errorf("cannot decode value node (tag %d) into %s", tag, t) -} - // decodeParams decodes a parameter-list tree (a record at the root) into dst's // fields. An empty parameter list is permitted to arrive as an empty record. func decodeParams(tree types.SchemaValueTree, fields []fieldInfo, dst reflect.Value) error { @@ -228,7 +93,7 @@ func decodeParams(tree types.SchemaValueTree, fields []fieldInfo, dst reflect.Va return fmt.Errorf("parameter list has %d value(s), want %d", len(idxs), len(fields)) } for i, f := range fields { - if err := d.into(f.typ, dst.Field(f.index), idxs[i]); err != nil { + if err := f.codec.decode(&d, dst.Field(f.index), idxs[i]); err != nil { return fmt.Errorf("parameter %q: %w", f.name, err) } } diff --git a/sdks/go/registry.go b/sdks/go/registry.go index aefcc49306..315d724d63 100644 --- a/sdks/go/registry.go +++ b/sdks/go/registry.go @@ -28,13 +28,14 @@ type fieldInfo struct { name string index int typ reflect.Type + codec *codec } type methodEntry struct { name string desc string inFields []fieldInfo - outType reflect.Type // nil => unit output + outCodec *codec // nil => unit output // invoke is the erased dispatcher produced by Implement. Calling it is a // direct func-value call: no reflection is used to reach the handler. invoke func(state any, agentID string, in types.SchemaValueTree) (out *types.SchemaValueTree, err error) @@ -82,7 +83,12 @@ func structFields(t reflect.Type) []fieldInfo { if f.PkgPath != "" { // unexported continue } - out = append(out, fieldInfo{name: lowerFirst(f.Name), index: i, typ: f.Type}) + out = append(out, fieldInfo{ + name: lowerFirst(f.Name), + index: i, + typ: f.Type, + codec: compile(f.Type), + }) } return out } @@ -160,11 +166,12 @@ func Implement[Id any, S any, In any, Out any]( panic("golem: " + a.name + ": method already implemented: " + m.name) } + // Codecs are compiled once, here at registration — not per invocation. inType := reflect.TypeFor[In]() outType := reflect.TypeFor[Out]() me := &methodEntry{name: m.name, desc: m.desc, inFields: structFields(inType)} if outType != reflect.TypeFor[Unit]() { - me.outType = outType + me.outCodec = compile(outType) } me.invoke = func(state any, agentID string, tree types.SchemaValueTree) (out *types.SchemaValueTree, err error) { @@ -189,12 +196,12 @@ func Implement[Id any, S any, In any, Out any]( if herr != nil { return nil, herr } - if me.outType == nil { + if me.outCodec == nil { return nil, nil } stage = stageEncode - encoded := encodeTyped(me.outType, reflect.ValueOf(result)) + encoded := encodeWith(me.outCodec, reflect.ValueOf(result)) return &encoded, nil } diff --git a/sdks/go/schema.go b/sdks/go/schema.go index b3e960c3e9..cef5f330cd 100644 --- a/sdks/go/schema.go +++ b/sdks/go/schema.go @@ -15,7 +15,6 @@ package golem import ( - "fmt" "reflect" common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" @@ -28,85 +27,55 @@ import ( // from the Go types by reflection — this is what removes the need for a code // generation step or an explicit schema DSL. -type graphBuilder struct{ nodes []types.SchemaTypeNode } - -func (g *graphBuilder) push(body types.SchemaTypeBody) int32 { - g.nodes = append(g.nodes, types.SchemaTypeNode{Body: body}) - return int32(len(g.nodes) - 1) +type graphBuilder struct { + nodes []types.SchemaTypeNode + // seen deduplicates by Go type, so a type used by several methods yields + // one node — and, more importantly, so a self-referential type terminates. + seen map[reflect.Type]int32 } -// add appends the nodes describing t and returns the index of its root node. -func (g *graphBuilder) add(t reflect.Type) int32 { - // Records: children first, then the record node referring to them. - if t.Kind() == reflect.Struct && t != reflect.TypeFor[Unit]() { - var fields []types.NamedFieldType - for i := range t.NumField() { - f := t.Field(i) - if f.PkgPath != "" { - continue - } - fields = append(fields, types.NamedFieldType{Name: lowerFirst(f.Name), Body: g.add(f.Type)}) - } - return g.push(types.MakeSchemaTypeBodyRecordType(fields)) +// node returns the index of c's type node, adding it if absent. +// +// The index is reserved and recorded *before* the body is built, because +// building it may recurse back into this same type. That reservation is what +// makes recursive types (a record reachable from its own fields) produce a +// finite graph instead of overflowing the stack. +func (g *graphBuilder) node(c *codec) int32 { + if g.seen == nil { + g.seen = map[reflect.Type]int32{} + } + if idx, ok := g.seen[c.typ]; ok { + return idx } - return g.push(bodyFor(t)) + idx := int32(len(g.nodes)) + g.nodes = append(g.nodes, types.SchemaTypeNode{}) + g.seen[c.typ] = idx + + // Sequenced deliberately: c.body may append nodes and reallocate g.nodes, + // so the destination must be indexed only after it returns. + body := c.body(g) + g.nodes[idx].Body = body + return idx } func (g *graphBuilder) build() types.SchemaGraph { // schema.root is a structurally required placeholder, not the semantic root: // the meaningful roots are the per-parameter and per-output indices. if len(g.nodes) == 0 { - g.push(types.MakeSchemaTypeBodyBoolType()) + g.nodes = append(g.nodes, types.SchemaTypeNode{Body: types.MakeSchemaTypeBodyBoolType()}) } return types.SchemaGraph{TypeNodes: g.nodes, Root: 0} } -// bodyFor maps a Go scalar type onto a WIT type body. Bare int/uint are -// rejected: their width is platform-dependent, so the wire type would be -// ambiguous. -func bodyFor(t reflect.Type) types.SchemaTypeBody { - none := witTypes.None[types.NumericRestrictions]() - switch t.Kind() { - case reflect.String: - return types.MakeSchemaTypeBodyStringType() - case reflect.Bool: - return types.MakeSchemaTypeBodyBoolType() - case reflect.Int64: - return types.MakeSchemaTypeBodyS64Type(none) - case reflect.Int32: - return types.MakeSchemaTypeBodyS32Type(none) - case reflect.Int16: - return types.MakeSchemaTypeBodyS16Type(none) - case reflect.Int8: - return types.MakeSchemaTypeBodyS8Type(none) - case reflect.Uint64: - return types.MakeSchemaTypeBodyU64Type(none) - case reflect.Uint32: - return types.MakeSchemaTypeBodyU32Type(none) - case reflect.Uint16: - return types.MakeSchemaTypeBodyU16Type(none) - case reflect.Uint8: - return types.MakeSchemaTypeBodyU8Type(none) - case reflect.Float64: - return types.MakeSchemaTypeBodyF64Type(none) - case reflect.Float32: - return types.MakeSchemaTypeBodyF32Type(none) - case reflect.Int, reflect.Uint: - panic(fmt.Sprintf("golem: %s has a platform-dependent width; use a sized type such as int64/uint64", t)) - default: - panic(fmt.Sprintf("golem: unsupported type %s (kind %s)", t, t.Kind())) - } -} - -// namedFields turns struct fields into WIT named-fields, adding each field's -// type to the shared graph. +// namedFields turns a parameter list into WIT named-fields, adding each +// parameter's type to the shared graph. func namedFields(g *graphBuilder, fs []fieldInfo) []common.NamedField { out := make([]common.NamedField, 0, len(fs)) for _, f := range fs { out = append(out, common.NamedField{ Name: f.name, Source: common.MakeFieldSourceUserSupplied(), - Schema: g.add(f.typ), + Schema: g.node(f.codec), }) } return out @@ -123,8 +92,8 @@ func buildAgentType(e *agentEntry) common.AgentType { m := e.methods[name] in := namedFields(&g, m.inFields) out := common.MakeOutputSchemaUnit() - if m.outType != nil { - out = common.MakeOutputSchemaSingle(g.add(m.outType)) + if m.outCodec != nil { + out = common.MakeOutputSchemaSingle(g.node(m.outCodec)) } methods = append(methods, common.AgentMethod{ Name: m.name, diff --git a/sdks/go/types.go b/sdks/go/types.go new file mode 100644 index 0000000000..2e9d124945 --- /dev/null +++ b/sdks/go/types.go @@ -0,0 +1,193 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import "reflect" + +// SDK-owned counterparts of the WIT types that Go has no native spelling for. +// +// Their fields are unexported and they are built through constructors, so an +// inconsistent value (an "ok" result carrying an error, say) cannot be +// constructed. The codec reaches into them through the unexported interfaces +// below rather than by field reflection — which is also why these cannot be the +// wit-bindgen types: those have unexported fields and no accessors, so +// reflection can neither read nor write them. + +// --------------------------------------------------------------------------- +// Option +// --------------------------------------------------------------------------- + +// Option is an explicit optional value. +// +// A plain *T means option too, and is the idiomatic spelling for a struct +// field. Reach for Option[T] when a pointer would be ambiguous or awkward — +// most often when nesting, where Option[Option[T]] reads far better than **T. +// Both produce exactly the same schema. +type Option[T any] struct { + some bool + value T +} + +// Some returns an Option holding v. +func Some[T any](v T) Option[T] { return Option[T]{some: true, value: v} } + +// None returns an empty Option. +func None[T any]() Option[T] { return Option[T]{} } + +// IsSome reports whether a value is present. +func (o Option[T]) IsSome() bool { return o.some } + +// IsNone reports whether the Option is empty. +func (o Option[T]) IsNone() bool { return !o.some } + +// Get returns the value and whether it was present — the comma-ok form. +func (o Option[T]) Get() (T, bool) { return o.value, o.some } + +// Or returns the value if present, otherwise def. +func (o Option[T]) Or(def T) T { + if o.some { + return o.value + } + return def +} + +// Unwrap returns the value, panicking if the Option is empty. Use Get when +// absence is expected. +func (o Option[T]) Unwrap() T { + if !o.some { + panic("golem: Unwrap on an empty Option") + } + return o.value +} + +// Codec plumbing. Resolved once at compile time against the zero value, so +// there is no per-value type switching and no unsafe field access. +type optionish interface { + optionElem() reflect.Type + optionGet() (reflect.Value, bool) +} + +type optionSetter interface { + optionSetNone() + optionSetSome() reflect.Value +} + +func (o Option[T]) optionElem() reflect.Type { return reflect.TypeFor[T]() } + +func (o Option[T]) optionGet() (reflect.Value, bool) { + return reflect.ValueOf(&o.value).Elem(), o.some +} + +func (o *Option[T]) optionSetNone() { + var zero T + o.some, o.value = false, zero +} + +func (o *Option[T]) optionSetSome() reflect.Value { + o.some = true + return reflect.ValueOf(&o.value).Elem() +} + +// --------------------------------------------------------------------------- +// Result +// --------------------------------------------------------------------------- + +// Result is a value that is either a success or a typed failure. +// +// It is not how a method reports failure — a handler returns (Out, error), and +// a returned error becomes the WIT agent-error channel. Result is for a +// fallible value nested *inside* data: a field, a list element, one arm of +// another Result. That distinction mirrors the TS SDK, where a Result lowers to +// a component-model result inside the success payload while throws stay on the +// agent-error channel. +type Result[Ok any, Err any] struct { + isErr bool + ok Ok + err Err +} + +// Ok returns a successful Result. Both type parameters are explicit because +// neither can be inferred from the argument alone: +// +// golem.Ok[Money, string](m) +func Ok[O any, E any](v O) Result[O, E] { return Result[O, E]{ok: v} } + +// Err returns a failed Result. +func Err[O any, E any](e E) Result[O, E] { return Result[O, E]{isErr: true, err: e} } + +// IsOk reports whether the Result is a success. +func (r Result[Ok, Err]) IsOk() bool { return !r.isErr } + +// IsErr reports whether the Result is a failure. +func (r Result[Ok, Err]) IsErr() bool { return r.isErr } + +// Ok returns the success value, panicking if the Result is a failure. Check +// IsOk first, or use Get. +func (r Result[Ok, Err]) Ok() Ok { + if r.isErr { + panic("golem: Ok on a failed Result") + } + return r.ok +} + +// Err returns the failure value, panicking if the Result is a success. +func (r Result[Ok, Err]) Err() Err { + if !r.isErr { + panic("golem: Err on a successful Result") + } + return r.err +} + +// Get returns the success value and whether the Result succeeded. +func (r Result[Ok, Err]) Get() (Ok, bool) { return r.ok, !r.isErr } + +// OkOr returns the success value if present, otherwise def. +func (r Result[Ok, Err]) OkOr(def Ok) Ok { + if r.isErr { + return def + } + return r.ok +} + +type resultish interface { + resultElems() (ok, err reflect.Type) + resultGet() (v reflect.Value, isErr bool) +} + +type resultSetter interface { + resultSetOk() reflect.Value + resultSetErr() reflect.Value +} + +func (r Result[Ok, Err]) resultElems() (reflect.Type, reflect.Type) { + return reflect.TypeFor[Ok](), reflect.TypeFor[Err]() +} + +func (r Result[Ok, Err]) resultGet() (reflect.Value, bool) { + if r.isErr { + return reflect.ValueOf(&r.err).Elem(), true + } + return reflect.ValueOf(&r.ok).Elem(), false +} + +func (r *Result[Ok, Err]) resultSetOk() reflect.Value { + r.isErr = false + return reflect.ValueOf(&r.ok).Elem() +} + +func (r *Result[Ok, Err]) resultSetErr() reflect.Value { + r.isErr = true + return reflect.ValueOf(&r.err).Elem() +} From 3696ec8f115ce4d1bbf2c1f500ba9d12b5bb5d59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Wed, 22 Jul 2026 23:39:17 +0200 Subject: [PATCH 004/149] go sdk: variants and enums --- sdks/go/codec.go | 124 +++++++++++++++++++++++++++++++++++++ sdks/go/codec_test.go | 128 +++++++++++++++++++++++++++++++++++++- sdks/go/golem_test.go | 51 ++++++++++++++++ sdks/go/registry.go | 5 +- sdks/go/variant.go | 139 ++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 445 insertions(+), 2 deletions(-) create mode 100644 sdks/go/variant.go diff --git a/sdks/go/codec.go b/sdks/go/codec.go index e9224c2a10..ae5ad246fe 100644 --- a/sdks/go/codec.go +++ b/sdks/go/codec.go @@ -65,6 +65,17 @@ func compile(t reflect.Type) *codec { } func buildCodec(c *codec) { + // User-declared variants and enums are looked up before the kind switch: + // an enum is a named integer, which would otherwise compile as a plain + // integer, and a variant is an interface, which has no other meaning. + if d, ok := variantRegistry[c.typ]; ok { + compileVariant(c, d) + return + } + if d, ok := enumRegistry[c.typ]; ok { + compileEnum(c, d) + return + } // SDK composite types are structs, so they must be recognised before the // generic struct-as-record case. The check is an interface assertion on the // zero value, done once here rather than per value. @@ -181,6 +192,9 @@ func buildCodec(c *codec) { case reflect.Int, reflect.Uint: panic(fmt.Sprintf("golem: %s has a platform-dependent width; use a sized type such as int64/uint64", c.typ)) + case reflect.Interface: + panic(fmt.Sprintf("golem: interface type %s is not a registered variant; declare it with golem.DefineVariant", c.typ)) + default: panic(fmt.Sprintf("golem: unsupported type %s (kind %s)", c.typ, c.typ.Kind())) } @@ -540,3 +554,113 @@ func compileResult(c *codec, okC, errC *codec) { return okC.decode(d, setter.resultSetOk(), child.Some()) } } + +// --------------------------------------------------------------------------- +// variants and enums +// --------------------------------------------------------------------------- + +func compileVariant(c *codec, d *variantDef) { + caseCodecs := make([]*codec, len(d.cases)) + byType := make(map[reflect.Type]int, len(d.cases)) + for i, cs := range d.cases { + caseCodecs[i] = compile(cs.typ) + byType[cs.typ] = i + } + + c.body = func(g *graphBuilder) types.SchemaTypeBody { + out := make([]types.VariantCaseType, 0, len(d.cases)) + for i, cs := range d.cases { + out = append(out, types.VariantCaseType{ + Name: cs.name, + Payload: witTypes.Some(g.node(caseCodecs[i])), + }) + } + return types.MakeSchemaTypeBodyVariantType(out) + } + + c.encode = func(b *valBuilder, v reflect.Value) int32 { + concrete := v + if v.Kind() == reflect.Interface { + if v.IsNil() { + panic(fmt.Sprintf("golem: nil %s cannot be encoded; a variant must hold one of its cases", c.typ)) + } + concrete = v.Elem() + } + i, ok := byType[concrete.Type()] + if !ok { + panic(fmt.Sprintf("golem: %s is not a registered case of variant %s", concrete.Type(), c.typ)) + } + payload := caseCodecs[i].encode(b, concrete) + return b.push(types.MakeSchemaValueNodeVariantValue(types.VariantValuePayload{ + Case: uint32(i), + Payload: witTypes.Some(payload), + })) + } + + c.decode = func(dec *decoder, dst reflect.Value, idx int32) error { + n, err := dec.node(idx) + if err != nil { + return err + } + if n.Tag() != types.SchemaValueNodeVariantValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + p := n.VariantValue() + if int(p.Case) >= len(d.cases) { + return fmt.Errorf("%s: case index %d out of range (%d cases)", c.typ, p.Case, len(d.cases)) + } + if p.Payload.IsNone() { + return fmt.Errorf("%s: case %q carries no payload", c.typ, d.cases[p.Case].name) + } + out := reflect.New(d.cases[p.Case].typ).Elem() + if err := caseCodecs[p.Case].decode(dec, out, p.Payload.Some()); err != nil { + return fmt.Errorf("%s case %q: %w", c.typ, d.cases[p.Case].name, err) + } + dst.Set(out) + return nil + } +} + +func compileEnum(c *codec, d *enumDef) { + signed := false + switch c.typ.Kind() { + case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + signed = true + } + + c.body = func(*graphBuilder) types.SchemaTypeBody { + return types.MakeSchemaTypeBodyEnumType(d.names) + } + c.encode = func(b *valBuilder, v reflect.Value) int32 { + var i int64 + if signed { + i = v.Int() + } else { + i = int64(v.Uint()) + } + if i < 0 || int(i) >= len(d.names) { + panic(fmt.Sprintf("golem: %s value %d is outside the declared enum range 0..%d", + c.typ, i, len(d.names)-1)) + } + return b.push(types.MakeSchemaValueNodeEnumValue(uint32(i))) + } + c.decode = func(dec *decoder, dst reflect.Value, idx int32) error { + n, err := dec.node(idx) + if err != nil { + return err + } + if n.Tag() != types.SchemaValueNodeEnumValue { + return fmt.Errorf("cannot decode value node (tag %d) into %s", n.Tag(), c.typ) + } + i := n.EnumValue() + if int(i) >= len(d.names) { + return fmt.Errorf("%s: enum index %d out of range (%d names)", c.typ, i, len(d.names)) + } + if signed { + dst.SetInt(int64(i)) + } else { + dst.SetUint(uint64(i)) + } + return nil + } +} diff --git a/sdks/go/codec_test.go b/sdks/go/codec_test.go index c6b4c5f652..1fd19ca1f8 100644 --- a/sdks/go/codec_test.go +++ b/sdks/go/codec_test.go @@ -114,7 +114,9 @@ func roundTrip[T any](t *testing.T, in T) T { t.Helper() c := compile(reflect.TypeFor[T]()) - tree := encodeWith(c, reflect.ValueOf(in)) + // &in, not in: reflect.ValueOf would unwrap an interface-typed T to its + // concrete type, which is exactly what a variant must not lose. + tree := encodeWith(c, reflect.ValueOf(&in).Elem()) var g graphBuilder root := g.node(c) @@ -379,3 +381,127 @@ func TestNilSliceDecodesAsEmptySlice(t *testing.T) { t.Fatalf("expected a non-nil empty map, got %#v", m.M) } } + +// --------------------------------------------------------------------------- +// variants and enums +// --------------------------------------------------------------------------- + +// A closed sum type: the unexported marker method means no type outside this +// package can join the variant. +type PaymentMethod interface{ isPaymentMethod() } + +type Card struct { + Number string + Expiry Status +} +type Cash struct{} +type Transfer struct{ IBAN string } + +func (Card) isPaymentMethod() {} +func (Cash) isPaymentMethod() {} +func (Transfer) isPaymentMethod() {} + +type Status int32 + +const ( + StatusActive Status = iota + StatusExpired + StatusRevoked +) + +var _ = DefineEnum[Status]("active", "expired", "revoked") + +var _ = DefineVariant[PaymentMethod]( + Case[Card]("card"), + Case[Cash]("cash"), + Case[Transfer]("transfer"), +) + +func TestRoundTripVariantAndEnum(t *testing.T) { + assertRoundTrip(t, "enum", StatusExpired) + assertRoundTrip(t, "variant (card)", PaymentMethod(Card{Number: "4242", Expiry: StatusActive})) + assertRoundTrip(t, "variant (empty case)", PaymentMethod(Cash{})) + assertRoundTrip(t, "variant (transfer)", PaymentMethod(Transfer{IBAN: "DE00"})) + + // Variants compose with everything else, which is the point of the codec design. + assertRoundTrip(t, "option", Some(PaymentMethod(Cash{}))) + assertRoundTrip(t, "none of variant", None[PaymentMethod]()) + assertRoundTrip(t, "list", []PaymentMethod{ + Card{Number: "1", Expiry: StatusRevoked}, Cash{}, Transfer{IBAN: "X"}, + }) + assertRoundTrip(t, "result", + Ok[PaymentMethod, Status](Card{Number: "9", Expiry: StatusActive})) + assertRoundTrip(t, "err arm carrying an enum", + Err[PaymentMethod, Status](StatusRevoked)) + assertRoundTrip(t, "map", map[string]PaymentMethod{ + "a": Cash{}, "b": Transfer{IBAN: "Y"}, + }) +} + +func TestVariantSchemaNamesCasesInDeclarationOrder(t *testing.T) { + var g graphBuilder + root := g.node(compile(reflect.TypeFor[PaymentMethod]())) + graph := g.build() + + body := graph.TypeNodes[root].Body + if body.Tag() != types.SchemaTypeBodyVariantType { + t.Fatalf("expected a variant-type node, got tag %d", body.Tag()) + } + var names []string + for _, c := range body.VariantType() { + names = append(names, c.Name) + } + want := []string{"card", "cash", "transfer"} + if !reflect.DeepEqual(names, want) { + t.Fatalf("variant cases = %v, want %v", names, want) + } +} + +func TestEnumSchemaCarriesTheDeclaredNames(t *testing.T) { + var g graphBuilder + root := g.node(compile(reflect.TypeFor[Status]())) + graph := g.build() + + body := graph.TypeNodes[root].Body + if body.Tag() != types.SchemaTypeBodyEnumType { + t.Fatalf("expected an enum-type node, got tag %d", body.Tag()) + } + if want := []string{"active", "expired", "revoked"}; !reflect.DeepEqual(body.EnumType(), want) { + t.Fatalf("enum names = %v, want %v", body.EnumType(), want) + } +} + +func TestVariantAndEnumMisuseIsRejected(t *testing.T) { + // An interface that was never declared as a variant. + type Unregistered interface{ marker() } + mustPanic(t, "not a registered variant", func() { compile(reflect.TypeFor[Unregistered]()) }) + + // A value outside the declared enum range must not be silently truncated. + c := compile(reflect.TypeFor[Status]()) + mustPanic(t, "outside the declared enum range", func() { + encodeWith(c, reflect.ValueOf(Status(99))) + }) + + // A nil interface holds no case. + vc := compile(reflect.TypeFor[PaymentMethod]()) + mustPanic(t, "must hold one of its cases", func() { + encodeWith(vc, reflect.ValueOf(&[]PaymentMethod{nil}[0]).Elem()) + }) + + // Declaration-time validation. + mustPanic(t, "requires an interface type", func() { DefineVariant[Money]() }) + mustPanic(t, "requires a named integer type", func() { DefineEnum[string]("a") }) +} + +// A decoded variant must be usable through its interface, not just structurally +// equal — the decoder sets a concrete type into the interface slot. +func TestDecodedVariantSatisfiesItsInterface(t *testing.T) { + got := roundTrip(t, PaymentMethod(Transfer{IBAN: "NL01"})) + tr, ok := got.(Transfer) + if !ok { + t.Fatalf("decoded value is %T, want Transfer", got) + } + if tr.IBAN != "NL01" { + t.Fatalf("IBAN = %q", tr.IBAN) + } +} diff --git a/sdks/go/golem_test.go b/sdks/go/golem_test.go index c855480968..a62a9c207b 100644 --- a/sdks/go/golem_test.go +++ b/sdks/go/golem_test.go @@ -269,3 +269,54 @@ func TestWorkerRunsOneOfSeveralAgentTypes(t *testing.T) { t.Fatal("unknown agent type should map to invalid-type") } } + +// Regression: a method whose declared output is an interface (a variant) must +// keep that declared type through encoding. reflect.ValueOf on an interface +// yields the concrete type it holds, so encoding the handler result directly +// would look up the wrong codec. +var tPay = DefineMethod[tEchoId, Unit, PaymentMethod]("pay") + +func init() { + Implement(tEcho, tPay, func(*Context[tEchoState], Unit) (PaymentMethod, error) { + return Transfer{IBAN: "GB33"}, nil + }) +} + +func TestVariantTypedMethodOutputRoundTripsThroughTheExports(t *testing.T) { + active = nil + if res := guestExports.Initialize("TestEcho", params(types.MakeSchemaValueNodeStringValue("> ")), + common.MakePrincipalAnonymous()); res.IsErr() { + t.Fatalf("initialize failed: %v", res.Err()) + } + + out := guestExports.Invoke("pay", params(), common.MakePrincipalAnonymous()) + if out.IsErr() { + t.Fatalf("pay errored: %v", out.Err()) + } + tree := out.Ok().Some() + node := tree.ValueNodes[tree.Root] + if node.Tag() != types.SchemaValueNodeVariantValue { + t.Fatalf("expected a variant value, got tag %d", node.Tag()) + } + if got := node.VariantValue().Case; got != 2 { + t.Fatalf("case index = %d, want 2 (transfer)", got) + } + + // and the published schema agrees + def := guestExports.GetDefinition() + var pay *common.AgentMethod + for i := range def.Methods { + if def.Methods[i].Name == "pay" { + pay = &def.Methods[i] + } + } + if pay == nil { + t.Fatal("method pay missing from the definition") + } + if pay.OutputSchema.Tag() != common.OutputSchemaSingle { + t.Fatal("pay should declare a single output") + } + if body := def.Schema.TypeNodes[pay.OutputSchema.Single()].Body; body.Tag() != types.SchemaTypeBodyVariantType { + t.Fatalf("pay output type tag = %d, want variant", body.Tag()) + } +} diff --git a/sdks/go/registry.go b/sdks/go/registry.go index 315d724d63..8b03592aee 100644 --- a/sdks/go/registry.go +++ b/sdks/go/registry.go @@ -201,7 +201,10 @@ func Implement[Id any, S any, In any, Out any]( } stage = stageEncode - encoded := encodeWith(me.outCodec, reflect.ValueOf(result)) + // &result, not result: reflect.ValueOf unwraps an interface to the + // concrete type it holds, which would lose the declared type of a + // variant-typed output. + encoded := encodeWith(me.outCodec, reflect.ValueOf(&result).Elem()) return &encoded, nil } diff --git a/sdks/go/variant.go b/sdks/go/variant.go new file mode 100644 index 0000000000..422ce08d35 --- /dev/null +++ b/sdks/go/variant.go @@ -0,0 +1,139 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "reflect" +) + +// Go has no sum types, so a WIT variant is expressed as an interface plus the +// set of concrete types that inhabit it. The set has to be declared rather than +// discovered: Go offers no way to enumerate a package's implementors of an +// interface, and the wire format needs a stable case order anyway. +// +// type PaymentMethod interface{ isPaymentMethod() } +// +// type Card struct{ Number string } +// func (Card) isPaymentMethod() {} +// +// type Cash struct{} +// func (Cash) isPaymentMethod() {} +// +// var _ = golem.DefineVariant[PaymentMethod]( +// golem.Case[Card]("card"), +// golem.Case[Cash]("cash"), +// ) +// +// An unexported marker method keeps the set closed: no type outside the +// declaring package can join the variant. + +// CaseDef is one case of a variant, produced by [Case]. +type CaseDef struct { + name string + typ reflect.Type +} + +// Case declares a variant case: the payload type T, carried under name on the +// wire. +func Case[T any](name string) CaseDef { + return CaseDef{name: name, typ: reflect.TypeFor[T]()} +} + +// variantDef is the registered case list for one interface type. Case order is +// declaration order, and it is the wire order — reordering [DefineVariant]'s +// arguments is a breaking change. +type variantDef struct { + iface reflect.Type + cases []CaseDef +} + +var variantRegistry = map[reflect.Type]*variantDef{} + +// DefineVariant registers the closed set of types inhabiting the interface +// Iface. Call it from a package-level var so registration happens before the +// component is invoked. +func DefineVariant[Iface any](cases ...CaseDef) *variantDef { + it := reflect.TypeFor[Iface]() + if it.Kind() != reflect.Interface { + panic(fmt.Sprintf("golem: DefineVariant requires an interface type, got %s", it)) + } + if len(cases) == 0 { + panic(fmt.Sprintf("golem: DefineVariant[%s] needs at least one case", it)) + } + if _, dup := variantRegistry[it]; dup { + panic(fmt.Sprintf("golem: variant already defined for %s", it)) + } + + seen := map[string]bool{} + for _, c := range cases { + if !c.typ.Implements(it) && !reflect.PointerTo(c.typ).Implements(it) { + panic(fmt.Sprintf("golem: variant case %s (%s) does not implement %s", c.name, c.typ, it)) + } + if seen[c.name] { + panic(fmt.Sprintf("golem: variant %s has duplicate case name %q", it, c.name)) + } + seen[c.name] = true + } + + d := &variantDef{iface: it, cases: cases} + variantRegistry[it] = d + return d +} + +// --------------------------------------------------------------------------- +// enums +// --------------------------------------------------------------------------- + +// enumDef is the registered name list for one named integer type. A value's +// wire representation is its position in this list, so the Go constants are +// expected to run 0..n-1 in declaration order. +type enumDef struct { + typ reflect.Type + names []string +} + +var enumRegistry = map[reflect.Type]*enumDef{} + +// DefineEnum registers a named integer type as a WIT enum: +// +// type Status int32 +// const ( +// StatusActive Status = iota +// StatusClosed +// ) +// +// var _ = golem.DefineEnum[Status]("active", "closed") +// +// Values are positional: Status(0) is "active". A value outside 0..len(names)-1 +// is rejected at encode time rather than silently truncated. +func DefineEnum[T any](names ...string) *enumDef { + t := reflect.TypeFor[T]() + switch t.Kind() { + case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, + reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + default: + panic(fmt.Sprintf("golem: DefineEnum requires a named integer type, got %s (kind %s)", t, t.Kind())) + } + if len(names) == 0 { + panic(fmt.Sprintf("golem: DefineEnum[%s] needs at least one name", t)) + } + if _, dup := enumRegistry[t]; dup { + panic(fmt.Sprintf("golem: enum already defined for %s", t)) + } + d := &enumDef{typ: t, names: names} + enumRegistry[t] = d + return d +} From 7e42c45dbddc033a63b9054ed23e3c7a75ae3df1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Wed, 22 Jul 2026 23:40:55 +0200 Subject: [PATCH 005/149] go sdk: markers, time types, secrets and an orders example --- sdks/go/codec.go | 80 +++++++++++++++++ sdks/go/codec_test.go | 63 ++++++++++++++ sdks/go/examples/orders/go.mod | 17 ++++ sdks/go/examples/orders/go.sum | 21 +++++ sdks/go/examples/orders/orders.go | 139 ++++++++++++++++++++++++++++++ sdks/go/types.go | 44 ++++++++++ 6 files changed, 364 insertions(+) create mode 100644 sdks/go/examples/orders/go.mod create mode 100644 sdks/go/examples/orders/go.sum create mode 100644 sdks/go/examples/orders/orders.go diff --git a/sdks/go/codec.go b/sdks/go/codec.go index ae5ad246fe..b800af6c5e 100644 --- a/sdks/go/codec.go +++ b/sdks/go/codec.go @@ -18,6 +18,7 @@ import ( "fmt" "reflect" "sort" + "time" types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" @@ -83,6 +84,13 @@ func buildCodec(c *codec) { return } + // Concrete named types are matched exactly, before the kind switch would + // treat them as their underlying primitive. + if fill, ok := namedTypeCodecs[c.typ]; ok { + fill(c) + return + } + none := witTypes.None[types.NumericRestrictions]() switch c.typ.Kind() { @@ -209,6 +217,9 @@ func sdkComposite(c *codec) bool { zero := reflect.New(c.typ).Elem().Interface() switch z := zero.(type) { + case secretish: + compileSecret(c, compile(z.secretElem())) + return true case optionish: compileOption(c, compile(z.optionElem()), optionValueOps()) return true @@ -664,3 +675,72 @@ func compileEnum(c *codec, d *enumDef) { return nil } } + +// --------------------------------------------------------------------------- +// named types and markers +// --------------------------------------------------------------------------- + +// namedTypeCodecs holds the types recognised by identity rather than by kind: +// each has a Go representation indistinguishable from a primitive, so only the +// named type reveals the intent. +var namedTypeCodecs = map[reflect.Type]func(*codec){ + reflect.TypeFor[Char](): func(c *codec) { + scalar(c, types.MakeSchemaTypeBodyCharType(), types.SchemaValueNodeCharValue, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeCharValue(rune(v.Int()))) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetInt(int64(n.CharValue())) }) + }, + reflect.TypeFor[URL](): func(c *codec) { + scalar(c, types.MakeSchemaTypeBodyUrlType(types.UrlRestrictions{ + AllowedSchemes: witTypes.None[[]string](), + AllowedHosts: witTypes.None[[]string](), + }), types.SchemaValueNodeUrlValue, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeUrlValue(v.String())) + }, + func(dst reflect.Value, n types.SchemaValueNode) { dst.SetString(n.UrlValue()) }) + }, + reflect.TypeFor[time.Time](): func(c *codec) { + scalar(c, types.MakeSchemaTypeBodyDatetimeType(), types.SchemaValueNodeDatetimeValue, + func(b *valBuilder, v reflect.Value) int32 { + t := v.Interface().(time.Time) + return b.push(types.MakeSchemaValueNodeDatetimeValue(types.Datetime{ + Seconds: t.Unix(), + Nanoseconds: uint32(t.Nanosecond()), + })) + }, + func(dst reflect.Value, n types.SchemaValueNode) { + d := n.DatetimeValue() + // UTC, so a round trip is stable: the wire carries no zone. + dst.Set(reflect.ValueOf(time.Unix(d.Seconds, int64(d.Nanoseconds)).UTC())) + }) + }, + reflect.TypeFor[time.Duration](): func(c *codec) { + scalar(c, types.MakeSchemaTypeBodyDurationType(), types.SchemaValueNodeDurationValue, + func(b *valBuilder, v reflect.Value) int32 { + return b.push(types.MakeSchemaValueNodeDurationValue( + types.DurationValuePayload{Nanoseconds: v.Int()})) + }, + func(dst reflect.Value, n types.SchemaValueNode) { + dst.SetInt(n.DurationValue().Nanoseconds) + }) + }, +} + +func compileSecret(c *codec, inner *codec) { + c.body = func(g *graphBuilder) types.SchemaTypeBody { + return types.MakeSchemaTypeBodySecretType(types.SecretSpec{ + Inner: g.node(inner), + Category: witTypes.None[string](), + }) + } + // A secret is a transparent wrapper on the value side: the payload is + // encoded as its revealed type, and the schema marks it as sensitive. + c.encode = func(b *valBuilder, v reflect.Value) int32 { + return inner.encode(b, v.Interface().(secretish).secretGet()) + } + c.decode = func(d *decoder, dst reflect.Value, idx int32) error { + return inner.decode(d, dst.Addr().Interface().(secretSetter).secretSet(), idx) + } +} diff --git a/sdks/go/codec_test.go b/sdks/go/codec_test.go index 1fd19ca1f8..08a1513368 100644 --- a/sdks/go/codec_test.go +++ b/sdks/go/codec_test.go @@ -5,6 +5,7 @@ import ( "reflect" "strings" "testing" + "time" types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" ) @@ -505,3 +506,65 @@ func TestDecodedVariantSatisfiesItsInterface(t *testing.T) { t.Fatalf("IBAN = %q", tr.IBAN) } } + +// --------------------------------------------------------------------------- +// markers, time and secrets +// --------------------------------------------------------------------------- + +func TestRoundTripMarkersAndTimeTypes(t *testing.T) { + assertRoundTrip(t, "char", Char('é')) + assertRoundTrip(t, "url", URL("https://golem.cloud/agents")) + assertRoundTrip(t, "duration", 90*time.Second) + assertRoundTrip(t, "datetime", time.Unix(1_700_000_000, 123_456_789).UTC()) + + // and they compose like everything else + assertRoundTrip(t, "option", Some(time.Unix(42, 0).UTC())) + assertRoundTrip(t, "list", []URL{"https://a.example", "https://b.example"}) +} + +func TestMarkersLowerToTheirOwnWitTypes(t *testing.T) { + // Char is an int32 and URL is a string underneath, so without recognition by + // named type they would silently lower to s32 and string. + for _, tc := range []struct { + name string + rt reflect.Type + want uint8 + }{ + {"Char", reflect.TypeFor[Char](), types.SchemaTypeBodyCharType}, + {"URL", reflect.TypeFor[URL](), types.SchemaTypeBodyUrlType}, + {"time.Time", reflect.TypeFor[time.Time](), types.SchemaTypeBodyDatetimeType}, + {"time.Duration", reflect.TypeFor[time.Duration](), types.SchemaTypeBodyDurationType}, + } { + var g graphBuilder + root := g.node(compile(tc.rt)) + if got := g.build().TypeNodes[root].Body.Tag(); got != tc.want { + t.Errorf("%s lowered to tag %d, want %d", tc.name, got, tc.want) + } + } +} + +func TestSecretRoundTripsAndStaysOutOfLogs(t *testing.T) { + got := roundTrip(t, NewSecret("hunter2")) + if got.Reveal() != "hunter2" { + t.Fatalf("revealed %q", got.Reveal()) + } + // The whole point: formatting must not leak the payload. + for _, s := range []string{ + fmt.Sprintf("%v", got), fmt.Sprintf("%s", got), fmt.Sprintf("%#v", got), + } { + if strings.Contains(s, "hunter2") { + t.Fatalf("secret leaked through formatting: %s", s) + } + } + + // The schema marks it secret, while the value stays the revealed type. + var g graphBuilder + root := g.node(compile(reflect.TypeFor[Secret[string]]())) + if tag := g.build().TypeNodes[root].Body.Tag(); tag != types.SchemaTypeBodySecretType { + t.Fatalf("Secret lowered to tag %d, want secret-type", tag) + } + assertRoundTrip(t, "secret in a record", struct { + Name string + Token Secret[string] + }{Name: "svc", Token: NewSecret("abc")}) +} diff --git a/sdks/go/examples/orders/go.mod b/sdks/go/examples/orders/go.mod new file mode 100644 index 0000000000..ece25a3961 --- /dev/null +++ b/sdks/go/examples/orders/go.mod @@ -0,0 +1,17 @@ +module orders + +go 1.25.5 + +require github.com/golemcloud/golem-go v0.0.0 + +require ( + github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 // indirect + github.com/bytecodealliance/componentize-go v0.4.0 // indirect + github.com/gofrs/flock v0.13.0 // indirect + go.bytecodealliance.org/pkg v0.2.3 // indirect + golang.org/x/sys v0.37.0 // indirect +) + +replace github.com/golemcloud/golem-go => ../.. + +tool github.com/bytecodealliance/componentize-go diff --git a/sdks/go/examples/orders/go.sum b/sdks/go/examples/orders/go.sum new file mode 100644 index 0000000000..3a9de667b9 --- /dev/null +++ b/sdks/go/examples/orders/go.sum @@ -0,0 +1,21 @@ +github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 h1:JtuelWqyixKApmXm3qghhZ7O96P6NKpyrlSIe8Rwnhw= +github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13/go.mod h1:7kfpUbyCdGJ9fDRCp3fopPQi5+cKNHgTE4ZuNrO71Cw= +github.com/bytecodealliance/componentize-go v0.4.0 h1:rzNC0pnrXl2PGaTlXkVnAvw9IH6JLMN5K49SYBcYEdU= +github.com/bytecodealliance/componentize-go v0.4.0/go.mod h1:w1QFtPLGI9o38epvMOPyCKbMc7q7GJ7yZhIvhGTpzA0= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/gofrs/flock v0.13.0 h1:95JolYOvGMqeH31+FC7D2+uULf6mG61mEZ/A8dRYMzw= +github.com/gofrs/flock v0.13.0/go.mod h1:jxeyy9R1auM5S6JYDBhDt+E2TCo7DkratH4Pgi8P+Z0= +github.com/google/go-cmp v0.3.0 h1:crn/baboCvb5fXaQ0IJ1SGTsTVrWpDsCWC8EGETZijY= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= +github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +go.bytecodealliance.org/pkg v0.2.3 h1:So9zHg8ahW+TH1JmgBHgIYuKHcinLiEcpV1tqVEZvLA= +go.bytecodealliance.org/pkg v0.2.3/go.mod h1:OjA+V8g3uUFixeCKFfamm6sYhTJdg8fvwEdJ2GO0GSk= +golang.org/x/sys v0.0.0-20190509141414-a5b02f93d862/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ= +golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/sdks/go/examples/orders/orders.go b/sdks/go/examples/orders/orders.go new file mode 100644 index 0000000000..8345e7543f --- /dev/null +++ b/sdks/go/examples/orders/orders.go @@ -0,0 +1,139 @@ +// Package main shows the Golem Go SDK's type vocabulary: nested options and +// results, a variant, an enum, and a secret — all derived from ordinary Go +// types, with no code generation and no schema DSL. +package main + +import ( + "fmt" + "time" + + golem "github.com/golemcloud/golem-go" +) + +// --- domain types ----------------------------------------------------------- + +type Money struct { + Amount int64 // minor units + Currency string +} + +// PaymentMethod is a WIT variant. Go has no sum types, so it is an interface +// plus a declared, closed set of cases; the unexported marker method keeps any +// other package from joining it. +type PaymentMethod interface{ isPaymentMethod() } + +type Card struct { + Last4 string + Token golem.Secret[string] // never logged, never persisted in the clear +} +type Cash struct{} +type Transfer struct{ IBAN string } + +func (Card) isPaymentMethod() {} +func (Cash) isPaymentMethod() {} +func (Transfer) isPaymentMethod() {} + +var _ = golem.DefineVariant[PaymentMethod]( + golem.Case[Card]("card"), + golem.Case[Cash]("cash"), + golem.Case[Transfer]("transfer"), +) + +// State is a WIT enum: a named integer plus its case names, positionally. +type State int32 + +const ( + StateOpen State = iota + StatePaid + StateRefunded +) + +var _ = golem.DefineEnum[State]("open", "paid", "refunded") + +type Line struct { + Sku string + Qty int32 + Price Money +} + +// Order shows the nesting that motivated the design. Each field lowers to the +// WIT type in the comment; nothing here is annotated or generated. +type Order struct { + ID string + State State // enum + Lines []Line // list + Coupon *string // option + Method PaymentMethod // variant + Refund golem.Option[golem.Result[Money, string]] // option> + Labels map[string]string // map + PlacedAt time.Time // datetime + Deadline time.Duration // duration +} + +// --- agent ------------------------------------------------------------------ + +type OrderId struct{ OrderID string } + +type OrderState struct{ order Order } + +type PlaceIn struct { + Lines []Line + Method PaymentMethod + Coupon *string +} + +type RefundIn struct{ Amount Money } + +var Orders = golem.DefineAgent[OrderId, OrderState]( + golem.Spec{Name: "OrderAgent", Description: "A durable order", Mode: golem.Durable}, + func(id OrderId) *OrderState { + return &OrderState{order: Order{ + ID: id.OrderID, + State: StateOpen, + Lines: []Line{}, + Labels: map[string]string{}, + Refund: golem.None[golem.Result[Money, string]](), + PlacedAt: time.Now().UTC(), + Deadline: 24 * time.Hour, + }} + }, +) + +var ( + Place = golem.DefineMethod[OrderId, PlaceIn, Order]("place", golem.Desc("Place the order")) + Get = golem.DefineMethod[OrderId, golem.Unit, Order]("get") + Refund = golem.DefineMethod[OrderId, RefundIn, Order]("refund", golem.Desc("Refund, recording success or failure as a value")) +) + +func init() { + golem.Implement(Orders, Place, func(ctx *golem.Context[OrderState], in PlaceIn) (Order, error) { + if len(in.Lines) == 0 { + // A real failure: this becomes the WIT agent-error channel. + return Order{}, fmt.Errorf("an order needs at least one line") + } + ctx.State.order.Lines = in.Lines + ctx.State.order.Method = in.Method + ctx.State.order.Coupon = in.Coupon + ctx.State.order.State = StatePaid + return ctx.State.order, nil + }) + + golem.Implement(Orders, Get, golem.Bind0NoErr((*OrderState).snapshot)) + + golem.Implement(Orders, Refund, func(ctx *golem.Context[OrderState], in RefundIn) (Order, error) { + // An expected, typed failure: this is a *value*, not an error, so + // callers see result rather than a failed invocation. + if ctx.State.order.State != StatePaid { + ctx.State.order.Refund = golem.Some(golem.Err[Money, string]("order is not paid")) + return ctx.State.order, nil + } + ctx.State.order.Refund = golem.Some(golem.Ok[Money, string](in.Amount)) + ctx.State.order.State = StateRefunded + return ctx.State.order, nil + }) +} + +// snapshot is an ordinary Go method, bound with a method expression. +func (s *OrderState) snapshot() Order { return s.order } + +func main() {} diff --git a/sdks/go/types.go b/sdks/go/types.go index 2e9d124945..40ddce1d8b 100644 --- a/sdks/go/types.go +++ b/sdks/go/types.go @@ -191,3 +191,47 @@ func (r *Result[Ok, Err]) resultSetErr() reflect.Value { r.isErr = true return reflect.ValueOf(&r.err).Elem() } + +// --------------------------------------------------------------------------- +// Markers +// --------------------------------------------------------------------------- + +// Char is a single Unicode code point, lowering to the WIT char type. Go's rune +// is an alias for int32 and so is indistinguishable from a plain integer; this +// named type is what makes the intent visible to the deriver. +type Char rune + +// URL is a string constrained to a URL, lowering to the WIT url type. +type URL string + +// Secret wraps a value whose payload must not be logged or persisted in the +// clear. It lowers to the WIT secret type, which carries the revealed payload +// type alongside the handle. +type Secret[T any] struct { + value T +} + +// NewSecret wraps v as a Secret. +func NewSecret[T any](v T) Secret[T] { return Secret[T]{value: v} } + +// Reveal returns the wrapped value. +func (s Secret[T]) Reveal() T { return s.value } + +// String keeps secrets out of logs and error messages formatted with %v or %s. +func (s Secret[T]) String() string { return "golem.Secret(redacted)" } + +// GoString does the same for %#v. +func (s Secret[T]) GoString() string { return "golem.Secret(redacted)" } + +type secretish interface { + secretElem() reflect.Type + secretGet() reflect.Value +} + +type secretSetter interface{ secretSet() reflect.Value } + +func (s Secret[T]) secretElem() reflect.Type { return reflect.TypeFor[T]() } + +func (s Secret[T]) secretGet() reflect.Value { return reflect.ValueOf(&s.value).Elem() } + +func (s *Secret[T]) secretSet() reflect.Value { return reflect.ValueOf(&s.value).Elem() } From 120a451573278ef3ce4652d5318b13b1fa8ff9da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Wed, 22 Jul 2026 23:41:08 +0200 Subject: [PATCH 006/149] point generated go glue at the hand-written export packages --- Makefile.toml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Makefile.toml b/Makefile.toml index a85ed74aba..70d00623bd 100644 --- a/Makefile.toml +++ b/Makefile.toml @@ -414,7 +414,11 @@ script = ''' # (never `latest`); `go tool` therefore resolves the exact pinned build. # --all-features is a GLOBAL flag and must precede the subcommand: golem's p3 WIT # uses @unstable annotations (timezone). -exec --fail-on-error go tool componentize-go --all-features bindings --output internal/wit --pkg-name github.com/golemcloud/golem-go/internal/wit --generate-stubs --format +# Imports + the wasmexport glue are generated into internal/wit (wiped each run). +# The export packages are NOT generated: --export-pkg-name points the glue at +# internal/exports, which we hand-write (the `Exports` slots the SDK fills in at +# init). That keeps generated and hand-written code strictly separated. +exec --fail-on-error go tool componentize-go --all-features bindings --output internal/wit --pkg-name github.com/golemcloud/golem-go/internal/wit --export-pkg-name github.com/golemcloud/golem-go/internal/exports --format # Works around a wit-bindgen crates/go codegen bug; see dev-tools/go-bindgen-fixup. exec --fail-on-error cargo run --quiet --manifest-path ../../dev-tools/Cargo.toml --bin go-bindgen-fixup -- internal/wit From 10c654e15e67d03dee57c450684373217ff1fa80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Wed, 22 Jul 2026 23:58:01 +0200 Subject: [PATCH 007/149] go sdk: emit recursive types as named defs via ref-type --- sdks/go/codec.go | 39 +++++++- sdks/go/codec_test.go | 215 ++++++++++++++++++++++++++++++++++++++++-- sdks/go/schema.go | 74 ++++++++++++++- 3 files changed, 313 insertions(+), 15 deletions(-) diff --git a/sdks/go/codec.go b/sdks/go/codec.go index b800af6c5e..4244901af0 100644 --- a/sdks/go/codec.go +++ b/sdks/go/codec.go @@ -18,6 +18,7 @@ import ( "fmt" "reflect" "sort" + "strings" "time" types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" @@ -38,8 +39,19 @@ import ( // codec for Result[T, E], which is built from the codecs for T and E. No // composite needs to know how deep it sits. type codec struct { - typ reflect.Type - body func(*graphBuilder) types.SchemaTypeBody + typ reflect.Type + id string + body func(*graphBuilder) types.SchemaTypeBody + + // recursive marks a type reachable from itself. WIT cannot express a raw + // cycle in the flat node list — a consumer decoding one rejects it with + // CyclicTypeWithoutRef — so such a type is emitted as a named def and + // referenced through ref-type, which is the only valid recursion form. + recursive bool + // building is true while this codec's children are being compiled. Re-entry + // while building is exactly what identifies a recursive type. + building bool + encode func(*valBuilder, reflect.Value) int32 decode func(*decoder, reflect.Value, int32) error } @@ -57,14 +69,35 @@ var codecCache = map[reflect.Type]*codec{} // outer compile has filled them in. func compile(t reflect.Type) *codec { if c, ok := codecCache[t]; ok { + if c.building { + // Reached t again while still compiling it: t is reachable from + // itself. Marking one member of each cycle is enough — its ref-type + // node breaks the cycle for every path through it. + c.recursive = true + } return c } - c := &codec{typ: t} + c := &codec{typ: t, id: typeID(t), building: true} codecCache[t] = c buildCodec(c) + c.building = false return c } +// typeID derives the stable, language-independent identifier a named def +// carries. Cross-language interop requires both sides to agree on it; pinning it +// explicitly is not supported yet. +func typeID(t reflect.Type) string { + name := t.Name() + if name == "" { + return "" + } + if pkg := t.PkgPath(); pkg != "" { + return strings.ReplaceAll(pkg, "/", ".") + "." + name + } + return name +} + func buildCodec(c *codec) { // User-declared variants and enums are looked up before the kind switch: // an enum is a named integer, which would otherwise compile as a plain diff --git a/sdks/go/codec_test.go b/sdks/go/codec_test.go index 08a1513368..5b27eed5f2 100644 --- a/sdks/go/codec_test.go +++ b/sdks/go/codec_test.go @@ -7,6 +7,7 @@ import ( "testing" "time" + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" ) @@ -263,16 +264,90 @@ type Tree struct { Children []*Tree } -func TestRecursiveTypeProducesAFiniteGraph(t *testing.T) { - // Without the reserve-before-recurse guard in compile and graphBuilder.node, - // either of these would recurse until the stack overflows. +// assertNoCycleWithoutRef mirrors the consumer's own validation: it walks the +// type nodes exactly as golem-schema's decoder does, tracking the nodes on the +// current path. Re-entering a node without passing through a ref-type is +// DecodeError::CyclicTypeWithoutRef — a graph the platform rejects outright. +// ref-type deliberately does not recurse into the def body, which is what makes +// it the only valid recursion form. +func assertNoCycleWithoutRef(t *testing.T, g types.SchemaGraph, idx int32, path map[int32]bool) { + t.Helper() + if path[idx] { + t.Fatalf("node %d re-entered without passing through a ref-type: "+ + "this graph would be rejected as CyclicTypeWithoutRef", idx) + } + path[idx] = true + defer delete(path, idx) + + body := g.TypeNodes[idx].Body + switch body.Tag() { + case types.SchemaTypeBodyRefType: + return // a reference terminates the walk + case types.SchemaTypeBodyRecordType: + for _, f := range body.RecordType() { + assertNoCycleWithoutRef(t, g, f.Body, path) + } + case types.SchemaTypeBodyVariantType: + for _, c := range body.VariantType() { + if c.Payload.IsSome() { + assertNoCycleWithoutRef(t, g, c.Payload.Some(), path) + } + } + case types.SchemaTypeBodyOptionType: + assertNoCycleWithoutRef(t, g, body.OptionType(), path) + case types.SchemaTypeBodyListType: + assertNoCycleWithoutRef(t, g, body.ListType(), path) + case types.SchemaTypeBodyFixedListType: + assertNoCycleWithoutRef(t, g, body.FixedListType().Element, path) + case types.SchemaTypeBodyMapType: + spec := body.MapType() + assertNoCycleWithoutRef(t, g, spec.Key, path) + assertNoCycleWithoutRef(t, g, spec.Value, path) + case types.SchemaTypeBodyResultType: + spec := body.ResultType() + if spec.Ok.IsSome() { + assertNoCycleWithoutRef(t, g, spec.Ok.Some(), path) + } + if spec.Err.IsSome() { + assertNoCycleWithoutRef(t, g, spec.Err.Some(), path) + } + } +} + +func TestRecursiveTypeIsEmittedAsANamedDefNotARawCycle(t *testing.T) { c := compile(reflect.TypeFor[Tree]()) + if !c.recursive { + t.Fatal("Tree should have been detected as recursive at compile time") + } var g graphBuilder - g.node(c) + root := g.node(c) graph := g.build() - if len(graph.TypeNodes) > 8 { - t.Fatalf("recursive type produced %d nodes; expected a small finite graph", len(graph.TypeNodes)) + + // The root of a recursive type is a reference to its def. + if tag := graph.TypeNodes[root].Body.Tag(); tag != types.SchemaTypeBodyRefType { + t.Fatalf("root node tag = %d, want ref-type", tag) + } + if len(graph.Defs) != 1 { + t.Fatalf("expected exactly 1 def, got %d", len(graph.Defs)) + } + def := graph.Defs[0] + if def.Id == "" { + t.Fatal("def must carry a stable type-id") + } + if !strings.HasSuffix(def.Id, ".Tree") { + t.Fatalf("type-id %q should end in .Tree", def.Id) + } + // The def body is the record itself, not another reference. + if tag := graph.TypeNodes[def.Body].Body.Tag(); tag != types.SchemaTypeBodyRecordType { + t.Fatalf("def body tag = %d, want record-type", tag) + } + + // The whole graph must satisfy the consumer's rule, from the root and from + // every def body. + assertNoCycleWithoutRef(t, graph, root, map[int32]bool{}) + for _, d := range graph.Defs { + assertNoCycleWithoutRef(t, graph, d.Body, map[int32]bool{}) } assertRoundTrip(t, "recursive tree", Tree{ @@ -284,6 +359,77 @@ func TestRecursiveTypeProducesAFiniteGraph(t *testing.T) { }) } +// Mutually recursive types: marking one member of each cycle is enough, since +// its ref-type node breaks every path through the cycle. +type nodeA struct { + Name string + B *nodeB +} +type nodeB struct { + Count int64 + A []nodeA +} + +func TestMutuallyRecursiveTypesBreakTheCycle(t *testing.T) { + var g graphBuilder + root := g.node(compile(reflect.TypeFor[nodeA]())) + graph := g.build() + + assertNoCycleWithoutRef(t, graph, root, map[int32]bool{}) + for _, d := range graph.Defs { + assertNoCycleWithoutRef(t, graph, d.Body, map[int32]bool{}) + } + if len(graph.Defs) == 0 { + t.Fatal("a mutually recursive pair must produce at least one named def") + } + assertRoundTrip(t, "mutually recursive", nodeA{ + Name: "a", B: &nodeB{Count: 2, A: []nodeA{{Name: "inner"}}}, + }) +} + +// Every schema the SDK publishes must satisfy the rule, not just the ones with +// obvious cycles. +func TestPublishedAgentSchemasHaveNoRawCycles(t *testing.T) { + for _, name := range registryOrder { + at := buildAgentType(registry[name]) + for _, f := range at.Constructor.InputSchema.Parameters() { + assertNoCycleWithoutRef(t, at.Schema, f.Schema, map[int32]bool{}) + } + for _, m := range at.Methods { + for _, f := range m.InputSchema.Parameters() { + assertNoCycleWithoutRef(t, at.Schema, f.Schema, map[int32]bool{}) + } + if m.OutputSchema.Tag() == common.OutputSchemaSingle { + assertNoCycleWithoutRef(t, at.Schema, m.OutputSchema.Single(), map[int32]bool{}) + } + } + for _, d := range at.Schema.Defs { + assertNoCycleWithoutRef(t, at.Schema, d.Body, map[int32]bool{}) + } + } +} + +func TestDefsAreSortedForDeterminism(t *testing.T) { + var g graphBuilder + g.node(compile(reflect.TypeFor[nodeA]())) + g.node(compile(reflect.TypeFor[Tree]())) + graph := g.build() + + for i := 1; i < len(graph.Defs); i++ { + if graph.Defs[i-1].Id > graph.Defs[i].Id { + t.Fatalf("defs not sorted: %q before %q", graph.Defs[i-1].Id, graph.Defs[i].Id) + } + } + // and the ref nodes still resolve to the right defs after the sort + for _, n := range graph.TypeNodes { + if n.Body.Tag() == types.SchemaTypeBodyRefType { + if int(n.Body.RefType()) >= len(graph.Defs) { + t.Fatalf("ref-type index %d out of range after sorting", n.Body.RefType()) + } + } + } +} + func TestSharedTypeIsEmittedOnce(t *testing.T) { type Pair struct { Left Money @@ -365,9 +511,11 @@ func TestMalformedInputIsAnErrorNotAPanic(t *testing.T) { } } -// A nil slice and an empty slice are indistinguishable on the wire — both are an -// empty list — so decoding normalizes nil to empty. This matches encoding/json -// and is worth pinning, since it is the one place a round trip is not identity. +// A nil slice and an empty slice are both an empty list on the wire, so decoding +// normalizes nil to empty. Unlike encoding/json — which emits null for a nil +// slice and [] for an empty one — there is no ambiguity here: []T is ALWAYS +// list-type and never option, so "absent" is simply not representable. Spell the +// optional list *[]T if the distinction matters. func TestNilSliceDecodesAsEmptySlice(t *testing.T) { got := roundTrip(t, Tree{Label: "leaf", Children: nil}) if got.Children == nil { @@ -568,3 +716,52 @@ func TestSecretRoundTripsAndStaysOutOfLogs(t *testing.T) { Token Secret[string] }{Name: "svc", Token: NewSecret("abc")}) } + +// Containers must never be modelled as optional: absence is only expressible +// through a pointer or Option[T], so there is no nil-vs-empty ambiguity. +func TestNilContainersAreNeverOptional(t *testing.T) { + tagOf := func(rt reflect.Type) uint8 { + var g graphBuilder + root := g.node(compile(rt)) + return g.build().TypeNodes[root].Body.Tag() + } + for _, tc := range []struct { + name string + rt reflect.Type + want uint8 + }{ + {"[]string", reflect.TypeFor[[]string](), types.SchemaTypeBodyListType}, + {"[]byte", reflect.TypeFor[[]byte](), types.SchemaTypeBodyListType}, + {"map[string]int64", reflect.TypeFor[map[string]int64](), types.SchemaTypeBodyMapType}, + {"[2]int64", reflect.TypeFor[[2]int64](), types.SchemaTypeBodyFixedListType}, + {"*[]string", reflect.TypeFor[*[]string](), types.SchemaTypeBodyOptionType}, + } { + if got := tagOf(tc.rt); got != tc.want { + t.Errorf("%s lowered to tag %d, want %d", tc.name, got, tc.want) + } + } + + // A nil slice encodes as an EMPTY LIST, never as none. + var nilSlice []string + tree := encodeWith(compile(reflect.TypeFor[[]string]()), reflect.ValueOf(&nilSlice).Elem()) + if n := tree.ValueNodes[tree.Root]; n.Tag() != types.SchemaValueNodeListValue || len(n.ListValue()) != 0 { + t.Fatalf("nil slice encoded as tag %d", n.Tag()) + } + var nilMap map[string]int64 + mt := encodeWith(compile(reflect.TypeFor[map[string]int64]()), reflect.ValueOf(&nilMap).Elem()) + if n := mt.ValueNodes[mt.Root]; n.Tag() != types.SchemaValueNodeMapValue || len(n.MapValue()) != 0 { + t.Fatalf("nil map encoded as tag %d", n.Tag()) + } + + // Only *[]T distinguishes absent from empty. + pc := compile(reflect.TypeFor[*[]string]()) + var absent *[]string + if tr := encodeWith(pc, reflect.ValueOf(&absent).Elem()); !tr.ValueNodes[tr.Root].OptionValue().IsNone() { + t.Fatal("a nil *[]string must encode as none") + } + empty := []string{} + present := &empty + if tr := encodeWith(pc, reflect.ValueOf(&present).Elem()); tr.ValueNodes[tr.Root].OptionValue().IsNone() { + t.Fatal("a pointer to an empty slice must encode as some(empty list)") + } +} diff --git a/sdks/go/schema.go b/sdks/go/schema.go index cef5f330cd..fc134492a6 100644 --- a/sdks/go/schema.go +++ b/sdks/go/schema.go @@ -16,6 +16,7 @@ package golem import ( "reflect" + "sort" common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" @@ -29,9 +30,14 @@ import ( type graphBuilder struct { nodes []types.SchemaTypeNode - // seen deduplicates by Go type, so a type used by several methods yields - // one node — and, more importantly, so a self-referential type terminates. + // seen deduplicates by Go type, so a type used by several methods yields one + // node. Sharing is legal: a consumer tracks cycles along the current path + // only, so the same node reached twice by sibling paths is fine. seen map[reflect.Type]int32 + // refs maps a recursive type to its ref-type node, and defs holds the named + // definitions those nodes point at. + refs map[reflect.Type]int32 + defs []types.SchemaTypeDef } // node returns the index of c's type node, adding it if absent. @@ -41,6 +47,9 @@ type graphBuilder struct { // makes recursive types (a record reachable from its own fields) produce a // finite graph instead of overflowing the stack. func (g *graphBuilder) node(c *codec) int32 { + if c.recursive { + return g.refNode(c) + } if g.seen == nil { g.seen = map[reflect.Type]int32{} } @@ -58,13 +67,72 @@ func (g *graphBuilder) node(c *codec) int32 { return idx } +// refNode emits a recursive type as a named def plus the ref-type node that +// points at it. The ref node is registered before the body is built, so when the +// body reaches this type again it resolves to the ref instead of recursing — +// which is what keeps the flat node list acyclic. +func (g *graphBuilder) refNode(c *codec) int32 { + if g.refs == nil { + g.refs = map[reflect.Type]int32{} + } + if idx, ok := g.refs[c.typ]; ok { + return idx + } + + defIdx := int32(len(g.defs)) + g.defs = append(g.defs, types.SchemaTypeDef{ + Id: c.id, + Name: witTypes.Some(c.typ.String()), + }) + + refIdx := int32(len(g.nodes)) + g.nodes = append(g.nodes, types.SchemaTypeNode{Body: types.MakeSchemaTypeBodyRefType(defIdx)}) + g.refs[c.typ] = refIdx + + bodyIdx := int32(len(g.nodes)) + g.nodes = append(g.nodes, types.SchemaTypeNode{}) + body := c.body(g) + g.nodes[bodyIdx].Body = body + g.defs[defIdx].Body = bodyIdx + + return refIdx +} + +// sortDefs orders defs by id and rewrites the ref-type nodes accordingly, so a +// given set of Go types always produces a byte-identical graph. +func (g *graphBuilder) sortDefs() { + if len(g.defs) < 2 { + return + } + order := make([]int, len(g.defs)) + for i := range order { + order[i] = i + } + sort.Slice(order, func(a, b int) bool { return g.defs[order[a]].Id < g.defs[order[b]].Id }) + + remap := make([]int32, len(g.defs)) + sorted := make([]types.SchemaTypeDef, len(g.defs)) + for newIdx, oldIdx := range order { + sorted[newIdx] = g.defs[oldIdx] + remap[oldIdx] = int32(newIdx) + } + g.defs = sorted + + for i := range g.nodes { + if g.nodes[i].Body.Tag() == types.SchemaTypeBodyRefType { + g.nodes[i].Body = types.MakeSchemaTypeBodyRefType(remap[g.nodes[i].Body.RefType()]) + } + } +} + func (g *graphBuilder) build() types.SchemaGraph { // schema.root is a structurally required placeholder, not the semantic root: // the meaningful roots are the per-parameter and per-output indices. if len(g.nodes) == 0 { g.nodes = append(g.nodes, types.SchemaTypeNode{Body: types.MakeSchemaTypeBodyBoolType()}) } - return types.SchemaGraph{TypeNodes: g.nodes, Root: 0} + g.sortDefs() + return types.SchemaGraph{TypeNodes: g.nodes, Defs: g.defs, Root: 0} } // namedFields turns a parameter list into WIT named-fields, adding each From 95cced3828236e5fecc6b88acea0e0ef44403699 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 15:30:49 +0200 Subject: [PATCH 008/149] go sdk: typed cross-agent rpc with futures --- sdks/go/client.go | 122 +++++++++++++ sdks/go/examples/orders/orders.go | 60 ++++++- sdks/go/future.go | 71 ++++++++ sdks/go/rpc.go | 277 ++++++++++++++++++++++++++++++ sdks/go/rpc_test.go | 206 ++++++++++++++++++++++ 5 files changed, 734 insertions(+), 2 deletions(-) create mode 100644 sdks/go/client.go create mode 100644 sdks/go/future.go create mode 100644 sdks/go/rpc.go create mode 100644 sdks/go/rpc_test.go diff --git a/sdks/go/client.go b/sdks/go/client.go new file mode 100644 index 0000000000..8c0daa0753 --- /dev/null +++ b/sdks/go/client.go @@ -0,0 +1,122 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "reflect" + + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" + apiHost "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// A Client addresses one agent instance for remote calls. It is produced by +// [ClientFor] and consumed by the call methods on [MethodDef]. +// +// The Id type parameter is what makes cross-agent calls type-safe: a +// MethodDef[PaymentId, …] only accepts a Client[PaymentId], so aiming a method +// at the wrong agent is a compile error rather than a runtime not-found. +// +// Client carries no type parameter for state: the caller does not know, and +// must not depend on, how the target stores anything. +type Client[Id any] struct { + rpc *host.WasmRpc + agentType string + agentID string +} + +// AgentID returns the target's agent id, as resolved by the host. +func (c Client[Id]) AgentID() string { return c.agentID } + +// ClientOpt configures a client. +type ClientOpt func(*clientOpts) + +type clientOpts struct { + phantomID witTypes.Option[types.Uuid] +} + +// WithPhantomID addresses a specific phantom instance of the target agent. +// Use [NewPhantom] to allocate a fresh one. +func WithPhantomID(id types.Uuid) ClientOpt { + return func(o *clientOpts) { o.phantomID = witTypes.Some(id) } +} + +// ClientFor returns a client addressing the agent instance identified by id. +// +// The id is encoded with the same codecs the target uses to decode its +// constructor parameters — they are derived from the same Go types — so caller +// and callee agree by construction rather than by convention. +func ClientFor[Id any, S any](a *Agent[Id, S], id Id, opts ...ClientOpt) (Client[Id], error) { + e := registry[a.name] + if e == nil { + return Client[Id]{}, fmt.Errorf("golem: ClientFor: unknown agent %s", a.name) + } + + var o clientOpts + o.phantomID = witTypes.None[types.Uuid]() + for _, f := range opts { + f(&o) + } + + idVal := reflect.ValueOf(&id).Elem() + ctor := encodeParams(e.idFields, idVal) + + // Resolve the id up front: it is wanted for error messages, and a failure + // here means the constructor parameters are wrong — better to surface that + // now than as an opaque not-found on the first call. + resolved := host.MakeAgentId(a.name, ctor, o.phantomID) + if resolved.IsErr() { + return Client[Id]{}, fmt.Errorf("golem: ClientFor %s: %w", a.name, agentErrorToGo(resolved.Err())) + } + + return Client[Id]{ + rpc: host.MakeWasmRpc(a.name, ctor, o.phantomID, nil), + agentType: a.name, + agentID: resolved.Ok(), + }, nil +} + +// NewPhantom allocates a fresh phantom instance of the target agent and returns +// a client for it, together with the phantom id needed to address it again. +// +// Ephemeral agents have no durable identity, so this is the only way to obtain +// a client for one. +func NewPhantom[Id any, S any](a *Agent[Id, S], id Id) (Client[Id], types.Uuid, error) { + // The host's generator, not crypto/rand: a phantom id is chosen once and + // must come back identical on replay, so it has to be recorded in the oplog. + phantom := apiHost.GenerateIdempotencyKey() + c, err := ClientFor(a, id, WithPhantomID(phantom)) + return c, phantom, err +} + +// agentErrorToGo converts a host agent-error into a Go error, keeping the case +// distinguishable rather than flattening everything to a string. +func agentErrorToGo(e common.AgentError) error { + switch e.Tag() { + case common.AgentErrorInvalidInput: + return fmt.Errorf("invalid input: %s", e.InvalidInput()) + case common.AgentErrorInvalidMethod: + return fmt.Errorf("invalid method: %s", e.InvalidMethod()) + case common.AgentErrorInvalidType: + return fmt.Errorf("invalid type: %s", e.InvalidType()) + case common.AgentErrorCustomError: + return fmt.Errorf("custom error: %v", e.CustomError()) + default: + return fmt.Errorf("agent error (tag %d)", e.Tag()) + } +} diff --git a/sdks/go/examples/orders/orders.go b/sdks/go/examples/orders/orders.go index 8345e7543f..dcf73f0ec4 100644 --- a/sdks/go/examples/orders/orders.go +++ b/sdks/go/examples/orders/orders.go @@ -103,8 +103,30 @@ var ( Place = golem.DefineMethod[OrderId, PlaceIn, Order]("place", golem.Desc("Place the order")) Get = golem.DefineMethod[OrderId, golem.Unit, Order]("get") Refund = golem.DefineMethod[OrderId, RefundIn, Order]("refund", golem.Desc("Refund, recording success or failure as a value")) + Audit = golem.DefineMethod[OrderId, golem.Unit, []Money]("audit", golem.Desc("Fan out to the ledger agents")) ) +// --- a second agent, called over RPC -------------------------------------- + +type LedgerId struct{ Region string } +type LedgerState struct{ total Money } + +var Ledger = golem.DefineAgent[LedgerId, LedgerState]( + golem.Spec{Name: "LedgerAgent", Description: "Per-region ledger", Mode: golem.Durable}, + func(id LedgerId) *LedgerState { + return &LedgerState{total: Money{Currency: "EUR"}} + }, +) + +var Record = golem.DefineMethod[LedgerId, RefundIn, Money]("record") + +func init() { + golem.Implement(Ledger, Record, func(ctx *golem.Context[LedgerState], in RefundIn) (Money, error) { + ctx.State.total.Amount += in.Amount.Amount + return ctx.State.total, nil + }) +} + func init() { golem.Implement(Orders, Place, func(ctx *golem.Context[OrderState], in PlaceIn) (Order, error) { if len(in.Lines) == 0 { @@ -118,8 +140,6 @@ func init() { return ctx.State.order, nil }) - golem.Implement(Orders, Get, golem.Bind0NoErr((*OrderState).snapshot)) - golem.Implement(Orders, Refund, func(ctx *golem.Context[OrderState], in RefundIn) (Order, error) { // An expected, typed failure: this is a *value*, not an error, so // callers see result rather than a failed invocation. @@ -136,4 +156,40 @@ func init() { // snapshot is an ordinary Go method, bound with a method expression. func (s *OrderState) snapshot() Order { return s.order } +func init() { + golem.Implement(Orders, Audit, func(ctx *golem.Context[OrderState], _ golem.Unit) ([]Money, error) { + regions := []string{"eu-west", "eu-central", "us-east"} + + // Fan out. CallAsync returns immediately, so all three are in flight; + // a goroutine blocked in Get yields to the component-model event loop. + // (Concurrency is across DIFFERENT targets — one agent instance still + // handles a single invocation at a time.) + futures := make([]*golem.Future[Money], 0, len(regions)) + for _, region := range regions { + client, err := golem.ClientFor(Ledger, LedgerId{Region: region}) + if err != nil { + return nil, err + } + f, err := Record.CallAsync(client, RefundIn{Amount: Money{Amount: 1, Currency: "EUR"}}) + if err != nil { + return nil, err + } + futures = append(futures, f) + } + + totals := make([]Money, 0, len(futures)) + for _, f := range futures { + total, err := f.Get() + if err != nil { + return nil, fmt.Errorf("ledger fan-out failed: %w", err) + } + totals = append(totals, total) + } + return totals, nil + }) + + // The blocking form, for the single-call case. + golem.Implement(Orders, Get, golem.Bind0NoErr((*OrderState).snapshot)) +} + func main() {} diff --git a/sdks/go/future.go b/sdks/go/future.go new file mode 100644 index 0000000000..434b0efaa6 --- /dev/null +++ b/sdks/go/future.go @@ -0,0 +1,71 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + + host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" +) + +// Future is an invocation that has been started but not yet awaited, returned by +// [MethodDef.CallAsync]. +// +// Several futures can be in flight at once. This is the SDK's only source of +// concurrency: `invoke-and-await` is a synchronous import that blocks the whole +// component, while a future's Get is async, so a goroutine blocked in Get yields +// to the component-model event loop and lets other goroutines run. +// +// It wraps the host resource rather than replacing it — a handle, not data, so +// nothing here crosses the schema marshaler. +type Future[Out any] struct { + // ID identifies the invocation, available before the result is. + ID InvocationID + + fut *host.FutureInvokeResult + method string + target string +} + +// Get waits for the invocation to finish and decodes its result. +// +// It consumes the future: the underlying host handle is owned, so it is dropped +// here and a second call reports an error rather than reusing a freed handle. +func (f *Future[Out]) Get() (Out, error) { + var zero Out + if f == nil || f.fut == nil { + return zero, fmt.Errorf("golem: Get on an already-consumed or zero Future") + } + + res := f.fut.Get() + f.fut.Drop() + f.fut = nil + + if res.IsErr() { + return zero, rpcErrorToGo(f.target, f.method, res.Err()) + } + return decodeOutput[Out](f.target, f.method, res.Ok()) +} + +// Cancel makes a best-effort attempt to cancel the invocation. It is a no-op if +// the invocation already started or finished, and it consumes the future. +func (f *Future[Out]) Cancel() { + if f == nil || f.fut == nil { + return + } + f.fut.Cancel() + f.fut.Drop() + f.fut = nil +} diff --git a/sdks/go/rpc.go b/sdks/go/rpc.go new file mode 100644 index 0000000000..8bbd1745b8 --- /dev/null +++ b/sdks/go/rpc.go @@ -0,0 +1,277 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "reflect" + "time" + + host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + clock "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// Cross-agent calls hang off the method descriptor rather than the client: +// +// res, err := Charge.Call(pay, ChargeIn{AmountCents: 500}) +// +// Go methods cannot introduce type parameters, so a Client[Id] could never have +// a Call[In, Out] method. The descriptor already binds In and Out, and shares Id +// with the client — which is what makes aiming a method at the wrong agent a +// compile error. + +// Call invokes the method and waits for its result. +// +// This maps to the synchronous `invoke-and-await` import, so it blocks the whole +// component until the remote returns. To have several calls in flight at once, +// use [MethodDef.CallAsync]. +func (m MethodDef[Id, In, Out]) Call(c Client[Id], in In) (Out, error) { + var zero Out + if c.rpc == nil { + return zero, fmt.Errorf("golem: %s: called on a zero Client", m.name) + } + + tree, err := m.encodeInput(in) + if err != nil { + return zero, err + } + + res := c.rpc.InvokeAndAwait(m.name, tree) + if res.IsErr() { + return zero, rpcErrorToGo(c.agentID, m.name, res.Err()) + } + return decodeOutput[Out](c.agentID, m.name, res.Ok().Result) +} + +// Trigger invokes the method without waiting for a result, returning the +// invocation's identity. Failures after the invocation is accepted are not +// reported here. +func (m MethodDef[Id, In, Out]) Trigger(c Client[Id], in In) (InvocationID, error) { + if c.rpc == nil { + return InvocationID{}, fmt.Errorf("golem: %s: called on a zero Client", m.name) + } + tree, err := m.encodeInput(in) + if err != nil { + return InvocationID{}, err + } + res := c.rpc.Invoke(m.name, tree) + if res.IsErr() { + return InvocationID{}, rpcErrorToGo(c.agentID, m.name, res.Err()) + } + return invocationIDFrom(res.Ok()), nil +} + +// Schedule arranges for the method to be invoked at the given time and returns a +// token that can cancel it beforehand. +func (m MethodDef[Id, In, Out]) Schedule(c Client[Id], at time.Time, in In) (*ScheduledInvocation, error) { + if c.rpc == nil { + return nil, fmt.Errorf("golem: %s: called on a zero Client", m.name) + } + tree, err := m.encodeInput(in) + if err != nil { + return nil, err + } + receipt := c.rpc.ScheduleCancelableInvocation(instantFrom(at), m.name, tree) + return &ScheduledInvocation{ + ID: invocationIDFrom(receipt.Metadata), + token: receipt.CancellationToken, + }, nil +} + +// CallAsync starts the invocation and returns immediately with a future. +// +// This is the only way to have several invocations in flight: `invoke-and-await` +// is a synchronous import and blocks the component, whereas the future's Get is +// async, so a goroutine blocked in it yields to the component-model event loop +// and lets other goroutines proceed. +// +// Note the platform contract: a single target instance handles one invocation at +// a time, so fanning out to the SAME agent instance does not run in parallel. +// Concurrency is across DIFFERENT targets. +func (m MethodDef[Id, In, Out]) CallAsync(c Client[Id], in In) (*Future[Out], error) { + if c.rpc == nil { + return nil, fmt.Errorf("golem: %s: called on a zero Client", m.name) + } + tree, err := m.encodeInput(in) + if err != nil { + return nil, err + } + inv := c.rpc.AsyncInvokeAndAwait(m.name, tree) + return &Future[Out]{ + ID: invocationIDFrom(inv.Metadata), + fut: inv.Future, + method: m.name, + target: c.agentID, + }, nil +} + +// --------------------------------------------------------------------------- +// encoding / decoding, shared by every call shape +// --------------------------------------------------------------------------- + +// rpcInputs caches the parameter field list per In type. The callee derives the +// same list from the same Go type, which is what keeps the two sides symmetric. +func (m MethodDef[Id, In, Out]) encodeInput(in In) (tree types.SchemaValueTree, err error) { + defer func() { + if r := recover(); r != nil { + err = fmt.Errorf("golem: %s: encoding input: %v", m.name, r) + } + }() + inType := reflect.TypeFor[In]() + return encodeParams(structFields(inType), reflect.ValueOf(&in).Elem()), nil +} + +// decodeOutput decodes a remote result through the LOCAL descriptor's Out codec. +// That codec checks every node tag, so a remote returning the wrong shape yields +// an error rather than a panic. +func decodeOutput[Out any](target, method string, out witTypes.Option[types.SchemaValueTree]) (Out, error) { + var zero Out + outType := reflect.TypeFor[Out]() + if outType == reflect.TypeFor[Unit]() { + return zero, nil + } + if out.IsNone() { + return zero, &RemoteCallError{ + Target: target, Method: method, Kind: RemoteProtocol, + Msg: "remote returned no value for a non-unit output", + } + } + tree := out.Some() + dst := reflect.New(outType).Elem() + d := decoder{nodes: tree.ValueNodes} + if err := compile(outType).decode(&d, dst, tree.Root); err != nil { + return zero, &RemoteCallError{ + Target: target, Method: method, Kind: RemoteProtocol, + Msg: "remote returned an undecodable value: " + err.Error(), + } + } + return dst.Interface().(Out), nil +} + +// --------------------------------------------------------------------------- +// invocation identity and scheduling +// --------------------------------------------------------------------------- + +// InvocationID identifies one remote invocation. +type InvocationID struct { + AgentID string + IdempotencyKey string +} + +func invocationIDFrom(m host.InvocationMetadata) InvocationID { + return InvocationID{AgentID: m.AgentId, IdempotencyKey: m.IdempotencyKey} +} + +// ScheduledInvocation is a future invocation that has not run yet. +type ScheduledInvocation struct { + ID InvocationID + token *host.CancellationToken +} + +// Cancel prevents the invocation, if it has not already started. +func (s *ScheduledInvocation) Cancel() { + if s.token != nil { + s.token.Cancel() + s.token = nil + } +} + +func instantFrom(t time.Time) clock.Instant { + return clock.Instant{ + Seconds: t.Unix(), + Nanoseconds: uint32(t.Nanosecond()), + } +} + +// --------------------------------------------------------------------------- +// errors +// --------------------------------------------------------------------------- + +// RemoteErrorKind classifies an RPC failure, mirroring the WIT rpc-error cases. +type RemoteErrorKind uint8 + +const ( + // RemoteProtocol is a transport or encoding level failure. + RemoteProtocol RemoteErrorKind = iota + // RemoteDenied means the caller is not permitted to make this call. + RemoteDenied + // RemoteNotFound means the target agent or method does not exist. + RemoteNotFound + // RemoteInternal is an unexpected failure on the remote side. + RemoteInternal + // RemoteAgent means the remote returned a domain error; see Cause. + RemoteAgent +) + +func (k RemoteErrorKind) String() string { + switch k { + case RemoteDenied: + return "denied" + case RemoteNotFound: + return "not found" + case RemoteInternal: + return "remote internal error" + case RemoteAgent: + return "remote agent error" + default: + return "protocol error" + } +} + +// RemoteCallError is returned by every cross-agent call that fails. +// +// A remote domain error keeps its Cause rather than being flattened into a +// string, so a remote custom-error stays inspectable by the caller. +type RemoteCallError struct { + Target string + Method string + Kind RemoteErrorKind + Msg string + Cause error +} + +func (e *RemoteCallError) Error() string { + target := e.Target + if target == "" { + target = "" + } + return fmt.Sprintf("golem: calling %s.%s: %s: %s", target, e.Method, e.Kind, e.Msg) +} + +func (e *RemoteCallError) Unwrap() error { return e.Cause } + +func rpcErrorToGo(target, method string, e host.RpcError) error { + err := &RemoteCallError{Target: target, Method: method} + switch e.Tag() { + case host.RpcErrorProtocolError: + err.Kind, err.Msg = RemoteProtocol, e.ProtocolError() + case host.RpcErrorDenied: + err.Kind, err.Msg = RemoteDenied, e.Denied() + case host.RpcErrorNotFound: + err.Kind, err.Msg = RemoteNotFound, e.NotFound() + case host.RpcErrorRemoteInternalError: + err.Kind, err.Msg = RemoteInternal, e.RemoteInternalError() + case host.RpcErrorRemoteAgentError: + remote := e.RemoteAgentError() + err.Kind = RemoteAgent + err.Cause = agentErrorToGo(remote) + err.Msg = err.Cause.Error() + default: + err.Kind, err.Msg = RemoteProtocol, fmt.Sprintf("unknown rpc-error (tag %d)", e.Tag()) + } + return err +} diff --git a/sdks/go/rpc_test.go b/sdks/go/rpc_test.go new file mode 100644 index 0000000000..1f971741a2 --- /dev/null +++ b/sdks/go/rpc_test.go @@ -0,0 +1,206 @@ +package golem + +import ( + "errors" + "reflect" + "strings" + "testing" + + common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" + types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// What is testable natively, and why the rest is not. +// +// `empty.s` lets a generated package COMPILE for the host, but the linker still +// needs a definition for any `//go:wasmimport` symbol that host-arch code +// actually references. So anything reaching a host import — Call, Trigger, +// Schedule, CallAsync, Future.Get/Cancel, ClientFor — can only run under wasm, +// and is covered by the component build plus the Phase 8 end-to-end tests. +// +// Everything the SDK itself is responsible for is pure and covered here: +// encoding arguments, decoding results, and mapping errors. That is where the +// bugs would be; the wrappers are a handful of straight-line calls. + +type tPayId struct{ Merchant string } +type tPayState struct{ charged int64 } +type tChargeIn struct { + AmountCents int64 + Note *string +} + +var tPayment = DefineAgent[tPayId, tPayState]( + Spec{Name: "TestPayment", Mode: Durable}, + func(id tPayId) *tPayState { return &tPayState{} }, +) + +var tCharge = DefineMethod[tPayId, tChargeIn, Money]("charge") + +func init() { + Implement(tPayment, tCharge, func(ctx *Context[tPayState], in tChargeIn) (Money, error) { + ctx.State.charged += in.AmountCents + return Money{Amount: ctx.State.charged, Currency: "EUR"}, nil + }) +} + +// The caller encodes arguments with the same codecs the callee decodes with, +// because both are derived from the same Go types. This is the symmetry claim +// the design rests on, and it is checkable without a host. +func TestCallerEncodingMatchesCalleeDecoding(t *testing.T) { + note := "tip" + in := tChargeIn{AmountCents: 1250, Note: ¬e} + + tree, err := tCharge.encodeInput(in) + if err != nil { + t.Fatalf("encodeInput: %v", err) + } + + // Decode it the way the callee's invoke path does. + fields := structFields(reflect.TypeFor[tChargeIn]()) + dst := reflect.New(reflect.TypeFor[tChargeIn]()).Elem() + if err := decodeParams(tree, fields, dst); err != nil { + t.Fatalf("callee could not decode the caller's arguments: %v", err) + } + if got := dst.Interface().(tChargeIn); !reflect.DeepEqual(got, in) { + t.Fatalf("round trip changed the arguments\n got: %#v\nwant: %#v", got, in) + } +} + +// The encoded argument list must agree with the schema the callee publishes. +func TestCallArgumentsAgreeWithThePublishedSchema(t *testing.T) { + tree, err := tCharge.encodeInput(tChargeIn{AmountCents: 7}) + if err != nil { + t.Fatalf("encodeInput: %v", err) + } + at := buildAgentType(registry["TestPayment"]) + + var charge *common.AgentMethod + for i := range at.Methods { + if at.Methods[i].Name == "charge" { + charge = &at.Methods[i] + } + } + if charge == nil { + t.Fatal("charge missing from the published agent type") + } + + params := charge.InputSchema.Parameters() + root := tree.ValueNodes[tree.Root] + if root.Tag() != types.SchemaValueNodeRecordValue { + t.Fatalf("argument list root tag = %d, want record", root.Tag()) + } + idxs := root.RecordValue() + if len(idxs) != len(params) { + t.Fatalf("encoded %d argument(s), schema declares %d", len(idxs), len(params)) + } + // Each argument must match its declared parameter type. + for i, p := range params { + checkAgreement2(t, at.Schema, p.Schema, tree, idxs[i], p.Name) + } +} + +// checkAgreement2 adapts the Phase 3 helper, which returns an error. +func checkAgreement2(t *testing.T, g types.SchemaGraph, s int32, tree types.SchemaValueTree, v int32, path string) { + t.Helper() + if err := checkAgreement(g, s, tree, v, path); err != nil { + t.Fatalf("argument %q disagrees with its declared type: %v", path, err) + } +} + +// The constructor tree a client builds must be decodable as the target's +// constructor parameters — otherwise the agent id would address nothing. +func TestClientConstructorTreeMatchesTheTargetConstructor(t *testing.T) { + e := registry["TestPayment"] + id := tPayId{Merchant: "acme"} + ctor := encodeParams(e.idFields, reflect.ValueOf(&id).Elem()) + + dst := reflect.New(reflect.TypeFor[tPayId]()).Elem() + if err := decodeParams(ctor, e.idFields, dst); err != nil { + t.Fatalf("target cannot decode the client's constructor tree: %v", err) + } + if got := dst.Interface().(tPayId); got != id { + t.Fatalf("constructor round trip = %#v, want %#v", got, id) + } +} + +func TestDecodeOutputRejectsAMismatchedRemote(t *testing.T) { + // A remote claiming to return Money but sending a bare string. + bad := types.SchemaValueTree{ + ValueNodes: []types.SchemaValueNode{types.MakeSchemaValueNodeStringValue("nope")}, + Root: 0, + } + _, err := decodeOutput[Money]("agent-1", "charge", witTypes.Some(bad)) + if err == nil { + t.Fatal("expected an error decoding a string as Money") + } + var rce *RemoteCallError + if !errors.As(err, &rce) { + t.Fatalf("expected a *RemoteCallError, got %T", err) + } + if rce.Kind != RemoteProtocol || rce.Method != "charge" || rce.Target != "agent-1" { + t.Fatalf("unexpected error detail: %+v", rce) + } + + // A non-unit output with no value at all. + if _, err := decodeOutput[Money]("agent-1", "charge", witTypes.None[types.SchemaValueTree]()); err == nil { + t.Fatal("expected an error for a missing non-unit output") + } + + // A unit output legitimately carries nothing. + if _, err := decodeOutput[Unit]("agent-1", "reset", witTypes.None[types.SchemaValueTree]()); err != nil { + t.Fatalf("unit output should accept no value: %v", err) + } +} + +func TestRpcErrorsMapToDistinguishableKinds(t *testing.T) { + for _, tc := range []struct { + name string + in host.RpcError + want RemoteErrorKind + }{ + {"protocol", host.MakeRpcErrorProtocolError("bad frame"), RemoteProtocol}, + {"denied", host.MakeRpcErrorDenied("nope"), RemoteDenied}, + {"not found", host.MakeRpcErrorNotFound("no such agent"), RemoteNotFound}, + {"internal", host.MakeRpcErrorRemoteInternalError("boom"), RemoteInternal}, + } { + err := rpcErrorToGo("agent-1", "charge", tc.in) + var rce *RemoteCallError + if !errors.As(err, &rce) { + t.Fatalf("%s: expected *RemoteCallError, got %T", tc.name, err) + } + if rce.Kind != tc.want { + t.Errorf("%s: kind = %v, want %v", tc.name, rce.Kind, tc.want) + } + if !strings.Contains(err.Error(), "agent-1") || !strings.Contains(err.Error(), "charge") { + t.Errorf("%s: message should name the target and method: %s", tc.name, err) + } + } +} + +// A remote domain error must stay inspectable rather than collapsing to a string. +func TestRemoteAgentErrorKeepsItsCause(t *testing.T) { + remote := common.MakeAgentErrorInvalidMethod("no such method: charge") + err := rpcErrorToGo("agent-1", "charge", host.MakeRpcErrorRemoteAgentError(remote)) + + var rce *RemoteCallError + if !errors.As(err, &rce) { + t.Fatalf("expected *RemoteCallError, got %T", err) + } + if rce.Kind != RemoteAgent { + t.Fatalf("kind = %v, want RemoteAgent", rce.Kind) + } + cause := errors.Unwrap(rce) + if cause == nil { + t.Fatal("a remote agent-error must be preserved as the cause") + } + if !strings.Contains(cause.Error(), "no such method") { + t.Fatalf("cause lost the remote detail: %v", cause) + } +} + +// Note: Call/Trigger/CallAsync guard against a zero Client, and Future.Get +// guards against reuse after its owned handle is dropped. Both are straight-line +// nil checks that cannot be exercised natively (referencing them pulls in the +// wasmimport symbols), so they are covered by the wasip1 build and Phase 8. From b437043ef3424a56dc8dc58774c90222e57ef478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 15:36:22 +0200 Subject: [PATCH 009/149] drop redundant comment on phantom id generation --- sdks/go/client.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/sdks/go/client.go b/sdks/go/client.go index 8c0daa0753..125f9c49b1 100644 --- a/sdks/go/client.go +++ b/sdks/go/client.go @@ -97,8 +97,6 @@ func ClientFor[Id any, S any](a *Agent[Id, S], id Id, opts ...ClientOpt) (Client // Ephemeral agents have no durable identity, so this is the only way to obtain // a client for one. func NewPhantom[Id any, S any](a *Agent[Id, S], id Id) (Client[Id], types.Uuid, error) { - // The host's generator, not crypto/rand: a phantom id is chosen once and - // must come back identical on replay, so it has to be recorded in the oplog. phantom := apiHost.GenerateIdempotencyKey() c, err := ClientFor(a, id, WithPhantomID(phantom)) return c, phantom, err From b2dcaf9d4242708c242d43e64bb1aa781d8a6beb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 16:43:28 +0200 Subject: [PATCH 010/149] go sdk: publish as a monorepo subdirectory module --- .agents/skills/sdk-development/SKILL.md | 84 +++++++++++++++++-- Makefile.toml | 2 +- sdks/go/client.go | 8 +- sdks/go/codec.go | 2 +- sdks/go/codec_test.go | 4 +- sdks/go/examples/counter/counter.go | 2 +- sdks/go/examples/counter/go.mod | 4 +- sdks/go/examples/orders/go.mod | 4 +- sdks/go/examples/orders/orders.go | 2 +- sdks/go/future.go | 2 +- sdks/go/go.mod | 2 +- sdks/go/golem.go | 6 +- sdks/go/golem_test.go | 6 +- sdks/go/guest.go | 6 +- .../export_golem_agent_guest/exports.go | 4 +- .../export_golem_api_load_snapshot/exports.go | 2 +- .../export_golem_api_save_snapshot/exports.go | 2 +- .../wit/golem_agent_common/wit_bindings.go | 2 +- .../wit/golem_agent_guest/wit_bindings.go | 4 +- .../wit/golem_agent_host/wit_bindings.go | 6 +- .../wit/golem_api_context/wit_bindings.go | 2 +- .../wit/golem_api_host/wit_bindings.go | 2 +- .../golem_api_load_snapshot/wit_bindings.go | 2 +- .../wit/golem_api_oplog/wit_bindings.go | 10 +-- .../golem_api_save_snapshot/wit_bindings.go | 2 +- .../wit_bindings.go | 8 +- .../wit/golem_quota_types/wit_bindings.go | 2 +- .../wit/golem_rdbms_mysql/wit_bindings.go | 2 +- .../wit/golem_rdbms_postgres/wit_bindings.go | 2 +- .../wit/golem_secrets_reveal/wit_bindings.go | 4 +- .../wit/golem_secrets_types/wit_bindings.go | 4 +- .../wasi_blobstore_blobstore/wit_bindings.go | 4 +- .../wasi_blobstore_container/wit_bindings.go | 2 +- .../wasi_http_0_3_0_client/wit_bindings.go | 2 +- .../wasi_keyvalue_eventual/wit_bindings.go | 4 +- .../wit_bindings.go | 4 +- .../wit/wasi_keyvalue_types/wit_bindings.go | 2 +- .../internal/wit/wit_exports/wit_exports.go | 12 +-- sdks/go/marshal.go | 2 +- sdks/go/registry.go | 4 +- sdks/go/rpc.go | 6 +- sdks/go/rpc_test.go | 6 +- sdks/go/schema.go | 4 +- 43 files changed, 160 insertions(+), 86 deletions(-) diff --git a/.agents/skills/sdk-development/SKILL.md b/.agents/skills/sdk-development/SKILL.md index bea69ca6d5..d3151c1cca 100644 --- a/.agents/skills/sdk-development/SKILL.md +++ b/.agents/skills/sdk-development/SKILL.md @@ -1,6 +1,6 @@ --- name: sdk-development -description: "Working on the Rust, TypeScript, or MoonBit SDKs in sdks/. Use when modifying SDK code, adding SDK features, or testing SDK changes with the main Golem platform." +description: "Working on the Rust, TypeScript, MoonBit, or Go SDKs in sdks/. Use when modifying SDK code, adding SDK features, releasing an SDK, or testing SDK changes with the main Golem platform." --- # SDK Development @@ -155,6 +155,78 @@ moon fmt moon info # Regenerate .mbti interface files ``` +## Go SDK (`sdks/go/`) + +Module path **`github.com/golemcloud/golem/sdks/go`**, package `golem`. Built with +`componentize-go`, which is pinned per-project through Go's `tool` directive — never installed +globally. + +### Building and testing + +```shell +cd sdks/go +go build ./... +go test ./... # native tests; fast, no wasm needed +GOOS=wasip1 GOARCH=wasm go vet -unsafeptr=false -composites=false ./... +``` + +Native tests cover everything that does not reach a host import. `empty.s` lets a generated package +*compile* for the host, but the linker still needs a definition for any `//go:wasmimport` symbol that +host-arch code actually **references** — so RPC calls, `Future`, and `ClientFor` can only run under +wasm. Those are covered by building an example component: + +```shell +cd sdks/go/examples/counter # or examples/orders +go tool componentize-go build -o counter.wasm +wasm-tools validate --features all counter.wasm +``` + +### Regenerating WIT bindings + +```shell +cargo make generate-sdk-go-bindings +``` + +Generated code lands in `internal/wit/` and is **wiped on every run**. The hand-written export slots +in `internal/exports/` survive because `--export-pkg-name` points the generated glue at them. The task +also runs `dev-tools/go-bindgen-fixup`, which works around two upstream wit-bindgen `crates/go` bugs +(tag-constant collisions, and a missing `empty.s` for the exports package). + +### ⚠️ Releasing: Go has no package registry + +Every other SDK publishes to a registry (crates.io / npm / maven / mooncakes) from a workflow +triggered by a `golem--v*` tag. **Go has none — the git tag *is* the release**, read directly +from this repo by `proxy.golang.org`. There is no publish workflow to run. + +Because the module lives in a subdirectory, Go **requires** the tag to be prefixed with that +subdirectory. This is a Go rule, not a choice: + +``` +sdks/go/v0.1.0 ✅ the only form Go recognises +golem-go-v0.1.0 ❌ invisible to Go — do not use +``` + +Notes: + +- This deliberately breaks the `golem--v*` convention the other SDKs follow. It cannot be + avoided; see ("module subdirectory ... also serves as a prefix for + semantic version tags"). +- It does **not** collide with anything. There is no root `go.mod`, so the repo's `v1.5.x` release + tags are invisible to Go, and no existing tag has the `sdks/go/` shape. +- **Major version v2+** additionally requires a `/v2` suffix on the module path + (`github.com/golemcloud/golem/sdks/go/v2`), tagged `sdks/go/v2.0.0`. +- Consumers using the default `GOPROXY` download only the `sdks/go` subtree (~7 MB), not the whole + repository. Only `GOPROXY=direct` clones the full repo, once per module cache. +- `sdks/go/examples/*` have their own `go.mod`, so they are nested modules and are **excluded** from + the published module zip. + +### Local SDK overrides + +`GOLEM_GO_PATH` (or `GOLEM_PATH`, which derives it) makes the CLI emit a `replace` directive into a +generated app's `go.mod`, pointing at the local checkout. This is how the playground tests SDK changes +without publishing — and, until the first tag exists, the **only** way a generated Go app can resolve +the SDK. + ## Downstream Rebuild Requirements SDK changes can require rebuilding test components. This is the most common source of errors. @@ -176,7 +248,8 @@ SDK changes can require rebuilding test components. This is the most common sour ## WIT Dependencies -Both SDKs have WIT files synced from the root `wit/` directory. **Never manually edit** `wit/deps/` in either SDK. +Every SDK has WIT files synced from the root `wit/` directory. **Never manually edit** `wit/deps/` in +any SDK — `cargo make wit` mirrors them, and `cargo make diff-wit` guards against drift. ```shell # From repository root @@ -189,6 +262,7 @@ cargo make wit 2. SDK builds successfully 3. SDK tests pass 4. Agent template rebuilt (if TS SDK runtime code changed) -5. Dependent test components rebuilt (if any) -6. Platform tests pass (`cargo make worker-executor-tests` for Rust SDK, `cargo make cli-integration-tests` for TS SDK) -7. Code formatted and linted +5. Example component still builds and validates (Go SDK — the only cover for host-call paths) +6. Dependent test components rebuilt (if any) +7. Platform tests pass (`cargo make worker-executor-tests` for Rust SDK, `cargo make cli-integration-tests` for TS SDK) +8. Code formatted and linted diff --git a/Makefile.toml b/Makefile.toml index 70d00623bd..8e67d7d7cb 100644 --- a/Makefile.toml +++ b/Makefile.toml @@ -418,7 +418,7 @@ script = ''' # The export packages are NOT generated: --export-pkg-name points the glue at # internal/exports, which we hand-write (the `Exports` slots the SDK fills in at # init). That keeps generated and hand-written code strictly separated. -exec --fail-on-error go tool componentize-go --all-features bindings --output internal/wit --pkg-name github.com/golemcloud/golem-go/internal/wit --export-pkg-name github.com/golemcloud/golem-go/internal/exports --format +exec --fail-on-error go tool componentize-go --all-features bindings --output internal/wit --pkg-name github.com/golemcloud/golem/sdks/go/internal/wit --export-pkg-name github.com/golemcloud/golem/sdks/go/internal/exports --format # Works around a wit-bindgen crates/go codegen bug; see dev-tools/go-bindgen-fixup. exec --fail-on-error cargo run --quiet --manifest-path ../../dev-tools/Cargo.toml --bin go-bindgen-fixup -- internal/wit diff --git a/sdks/go/client.go b/sdks/go/client.go index 125f9c49b1..60f27e7aa1 100644 --- a/sdks/go/client.go +++ b/sdks/go/client.go @@ -18,10 +18,10 @@ import ( "fmt" "reflect" - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" - apiHost "github.com/golemcloud/golem-go/internal/wit/golem_api_host" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" + apiHost "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/codec.go b/sdks/go/codec.go index 4244901af0..deeb75ff7c 100644 --- a/sdks/go/codec.go +++ b/sdks/go/codec.go @@ -21,7 +21,7 @@ import ( "strings" "time" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/codec_test.go b/sdks/go/codec_test.go index 5b27eed5f2..626173789c 100644 --- a/sdks/go/codec_test.go +++ b/sdks/go/codec_test.go @@ -7,8 +7,8 @@ import ( "testing" "time" - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" ) // --------------------------------------------------------------------------- diff --git a/sdks/go/examples/counter/counter.go b/sdks/go/examples/counter/counter.go index f87c8dff16..6d18d43c18 100644 --- a/sdks/go/examples/counter/counter.go +++ b/sdks/go/examples/counter/counter.go @@ -1,7 +1,7 @@ // Package main is the canonical Golem Go agent example: a durable counter. package main -import golem "github.com/golemcloud/golem-go" +import golem "github.com/golemcloud/golem/sdks/go" type CounterId struct{ Name string } // constructor params; also the type-level marker type CounterState struct{ count int64 } // private durable state diff --git a/sdks/go/examples/counter/go.mod b/sdks/go/examples/counter/go.mod index d3bb999132..ada2bb5581 100644 --- a/sdks/go/examples/counter/go.mod +++ b/sdks/go/examples/counter/go.mod @@ -2,7 +2,7 @@ module counter go 1.25.5 -require github.com/golemcloud/golem-go v0.0.0 +require github.com/golemcloud/golem/sdks/go v0.0.0 require ( github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 // indirect @@ -12,6 +12,6 @@ require ( golang.org/x/sys v0.37.0 // indirect ) -replace github.com/golemcloud/golem-go => ../.. +replace github.com/golemcloud/golem/sdks/go => ../.. tool github.com/bytecodealliance/componentize-go diff --git a/sdks/go/examples/orders/go.mod b/sdks/go/examples/orders/go.mod index ece25a3961..e28c071996 100644 --- a/sdks/go/examples/orders/go.mod +++ b/sdks/go/examples/orders/go.mod @@ -2,7 +2,7 @@ module orders go 1.25.5 -require github.com/golemcloud/golem-go v0.0.0 +require github.com/golemcloud/golem/sdks/go v0.0.0 require ( github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 // indirect @@ -12,6 +12,6 @@ require ( golang.org/x/sys v0.37.0 // indirect ) -replace github.com/golemcloud/golem-go => ../.. +replace github.com/golemcloud/golem/sdks/go => ../.. tool github.com/bytecodealliance/componentize-go diff --git a/sdks/go/examples/orders/orders.go b/sdks/go/examples/orders/orders.go index dcf73f0ec4..0cd5f3cb4f 100644 --- a/sdks/go/examples/orders/orders.go +++ b/sdks/go/examples/orders/orders.go @@ -7,7 +7,7 @@ import ( "fmt" "time" - golem "github.com/golemcloud/golem-go" + golem "github.com/golemcloud/golem/sdks/go" ) // --- domain types ----------------------------------------------------------- diff --git a/sdks/go/future.go b/sdks/go/future.go index 434b0efaa6..d7548ade08 100644 --- a/sdks/go/future.go +++ b/sdks/go/future.go @@ -17,7 +17,7 @@ package golem import ( "fmt" - host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" + host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" ) // Future is an invocation that has been started but not yet awaited, returned by diff --git a/sdks/go/go.mod b/sdks/go/go.mod index b302e9c8ee..ca08485849 100644 --- a/sdks/go/go.mod +++ b/sdks/go/go.mod @@ -1,4 +1,4 @@ -module github.com/golemcloud/golem-go +module github.com/golemcloud/golem/sdks/go go 1.25.5 diff --git a/sdks/go/golem.go b/sdks/go/golem.go index d379103fcb..73293a465c 100644 --- a/sdks/go/golem.go +++ b/sdks/go/golem.go @@ -45,14 +45,14 @@ // Importing this package links the generated golem:agent/guest export glue into // the component, so an agent's main package needs only: // -// import _ "github.com/golemcloud/golem-go" +// import _ "github.com/golemcloud/golem/sdks/go" package golem import ( - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" // Links the generated wasmexport glue into the component. - _ "github.com/golemcloud/golem-go/internal/wit/wit_exports" + _ "github.com/golemcloud/golem/sdks/go/internal/wit/wit_exports" ) // Unit is the empty input/output marker. Go has no arity overloading, so a diff --git a/sdks/go/golem_test.go b/sdks/go/golem_test.go index a62a9c207b..5102b4601f 100644 --- a/sdks/go/golem_test.go +++ b/sdks/go/golem_test.go @@ -4,9 +4,9 @@ import ( "strings" "testing" - guestExports "github.com/golemcloud/golem-go/internal/exports/export_golem_agent_guest" - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + guestExports "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_agent_guest" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" ) // These tests run natively (host arch): they exercise the real export slots and diff --git a/sdks/go/guest.go b/sdks/go/guest.go index dcf8b1d477..b7fc1b2fee 100644 --- a/sdks/go/guest.go +++ b/sdks/go/guest.go @@ -20,9 +20,9 @@ import ( "os" "reflect" - guestExports "github.com/golemcloud/golem-go/internal/exports/export_golem_agent_guest" - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + guestExports "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_agent_guest" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/exports/export_golem_agent_guest/exports.go b/sdks/go/internal/exports/export_golem_agent_guest/exports.go index 2aa3da2393..4c1f3c2049 100644 --- a/sdks/go/internal/exports/export_golem_agent_guest/exports.go +++ b/sdks/go/internal/exports/export_golem_agent_guest/exports.go @@ -27,8 +27,8 @@ package export_golem_agent_guest import ( - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go b/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go index fb404cbc7a..02c0e8ecef 100644 --- a/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go +++ b/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go @@ -17,7 +17,7 @@ package export_golem_api_load_snapshot import ( - host "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go b/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go index 8f13c1a4e0..51e5ff681d 100644 --- a/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go +++ b/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go @@ -17,7 +17,7 @@ // the generated glue). See export_golem_agent_guest for the pattern. package export_golem_api_save_snapshot -import host "github.com/golemcloud/golem-go/internal/wit/golem_api_host" +import host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" var Exports struct { Save func() host.Snapshot diff --git a/sdks/go/internal/wit/golem_agent_common/wit_bindings.go b/sdks/go/internal/wit/golem_agent_common/wit_bindings.go index 9ce6ea87cd..a3ff04ccb0 100644 --- a/sdks/go/internal/wit/golem_agent_common/wit_bindings.go +++ b/sdks/go/internal/wit/golem_agent_common/wit_bindings.go @@ -32,7 +32,7 @@ package golem_agent_common import ( - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go b/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go index 45849d4651..58db29ea40 100644 --- a/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go +++ b/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go @@ -32,8 +32,8 @@ package golem_agent_guest import ( - "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" ) type SchemaValueTree = golem_core_types.SchemaValueTree diff --git a/sdks/go/internal/wit/golem_agent_host/wit_bindings.go b/sdks/go/internal/wit/golem_agent_host/wit_bindings.go index 7acddf5a38..bb8b81a13f 100644 --- a/sdks/go/internal/wit/golem_agent_host/wit_bindings.go +++ b/sdks/go/internal/wit/golem_agent_host/wit_bindings.go @@ -32,9 +32,9 @@ package golem_agent_host import ( - "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" - "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/internal/wit/golem_api_context/wit_bindings.go b/sdks/go/internal/wit/golem_api_context/wit_bindings.go index 08ec1d6f28..209ef11a46 100644 --- a/sdks/go/internal/wit/golem_api_context/wit_bindings.go +++ b/sdks/go/internal/wit/golem_api_context/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_context import ( - "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_api_host/wit_bindings.go b/sdks/go/internal/wit/golem_api_host/wit_bindings.go index bca6662bbc..b030183996 100644 --- a/sdks/go/internal/wit/golem_api_host/wit_bindings.go +++ b/sdks/go/internal/wit/golem_api_host/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_host import ( - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go b/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go index c964b18173..66835a5d08 100644 --- a/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go +++ b/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_load_snapshot import ( - "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" ) type Snapshot = golem_api_host.Snapshot diff --git a/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go b/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go index 9c8364b902..a9499e4576 100644 --- a/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go +++ b/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go @@ -32,11 +32,11 @@ package golem_api_oplog import ( - "github.com/golemcloud/golem-go/internal/wit/golem_api_context" - "github.com/golemcloud/golem-go/internal/wit/golem_api_host" - "github.com/golemcloud/golem-go/internal/wit/golem_api_retry" - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" - "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_context" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_retry" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go b/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go index 4c67d52db1..8dd77335b0 100644 --- a/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go +++ b/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_save_snapshot import ( - "github.com/golemcloud/golem-go/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" ) type Snapshot = golem_api_host.Snapshot diff --git a/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go b/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go index 1f75055e85..0dbc887c77 100644 --- a/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go +++ b/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go @@ -32,10 +32,10 @@ package golem_durability_durability import ( - "github.com/golemcloud/golem-go/internal/wit/golem_api_host" - "github.com/golemcloud/golem-go/internal/wit/golem_api_oplog" - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" - "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_oplog" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_quota_types/wit_bindings.go b/sdks/go/internal/wit/golem_quota_types/wit_bindings.go index 5efb31b454..9b29315dc2 100644 --- a/sdks/go/internal/wit/golem_quota_types/wit_bindings.go +++ b/sdks/go/internal/wit/golem_quota_types/wit_bindings.go @@ -32,7 +32,7 @@ package golem_quota_types import ( - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go b/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go index c095930b33..7b90654826 100644 --- a/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go +++ b/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go @@ -32,7 +32,7 @@ package golem_rdbms_mysql import ( - "github.com/golemcloud/golem-go/internal/wit/golem_rdbms_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_rdbms_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go b/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go index d81869336e..2eb922aeac 100644 --- a/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go +++ b/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go @@ -32,7 +32,7 @@ package golem_rdbms_postgres import ( - "github.com/golemcloud/golem-go/internal/wit/golem_rdbms_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_rdbms_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go b/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go index 187de165f8..c908f44f2a 100644 --- a/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go +++ b/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go @@ -32,8 +32,8 @@ package golem_secrets_reveal import ( - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" - "github.com/golemcloud/golem-go/internal/wit/golem_secrets_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_secrets_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go b/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go index d423683834..d492a20502 100644 --- a/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go +++ b/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go @@ -32,8 +32,8 @@ package golem_secrets_types import ( - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" - "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go b/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go index b87b145950..a85de1df1e 100644 --- a/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go +++ b/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go @@ -32,8 +32,8 @@ package wasi_blobstore_blobstore import ( - "github.com/golemcloud/golem-go/internal/wit/wasi_blobstore_container" - "github.com/golemcloud/golem-go/internal/wit/wasi_blobstore_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_blobstore_container" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_blobstore_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go b/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go index 507b8880f3..53e1965e62 100644 --- a/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go +++ b/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go @@ -32,7 +32,7 @@ package wasi_blobstore_container import ( - "github.com/golemcloud/golem-go/internal/wit/wasi_blobstore_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_blobstore_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go b/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go index 8ea55e9a5a..2a316f5adb 100644 --- a/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go +++ b/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go @@ -32,7 +32,7 @@ package wasi_http_0_3_0_client import ( - "github.com/golemcloud/golem-go/internal/wit/wasi_http_0_3_0_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_http_0_3_0_types" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go b/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go index 1ce019652f..9ceefecf02 100644 --- a/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go +++ b/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go @@ -32,8 +32,8 @@ package wasi_keyvalue_eventual import ( - "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_types" - "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go b/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go index 19d353ba10..8a4358322c 100644 --- a/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go +++ b/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go @@ -32,8 +32,8 @@ package wasi_keyvalue_eventual_batch import ( - "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_types" - "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_types" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go b/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go index 92955106d7..e2a25c2d2e 100644 --- a/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go +++ b/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go @@ -32,7 +32,7 @@ package wasi_keyvalue_types import ( - "github.com/golemcloud/golem-go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wit_exports/wit_exports.go b/sdks/go/internal/wit/wit_exports/wit_exports.go index 9cddb6c414..83f14a9c9c 100644 --- a/sdks/go/internal/wit/wit_exports/wit_exports.go +++ b/sdks/go/internal/wit/wit_exports/wit_exports.go @@ -32,12 +32,12 @@ package wit_exports import ( - "github.com/golemcloud/golem-go/internal/exports/export_golem_agent_guest" - "github.com/golemcloud/golem-go/internal/exports/export_golem_api_load_snapshot" - "github.com/golemcloud/golem-go/internal/exports/export_golem_api_save_snapshot" - "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - "github.com/golemcloud/golem-go/internal/wit/golem_api_host" - "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_agent_guest" + "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_api_load_snapshot" + "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_api_save_snapshot" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/marshal.go b/sdks/go/marshal.go index 0b35c066bd..d4ad845256 100644 --- a/sdks/go/marshal.go +++ b/sdks/go/marshal.go @@ -18,7 +18,7 @@ import ( "fmt" "reflect" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" ) // Values cross the boundary as a schema-value-tree: a flat pool of nodes plus diff --git a/sdks/go/registry.go b/sdks/go/registry.go index 8b03592aee..6e7919c54e 100644 --- a/sdks/go/registry.go +++ b/sdks/go/registry.go @@ -18,8 +18,8 @@ import ( "fmt" "reflect" - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" ) // fieldInfo is one exported struct field, in declaration order. Declaration diff --git a/sdks/go/rpc.go b/sdks/go/rpc.go index 8bbd1745b8..dc2c264085 100644 --- a/sdks/go/rpc.go +++ b/sdks/go/rpc.go @@ -19,9 +19,9 @@ import ( "reflect" "time" - host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" - clock "github.com/golemcloud/golem-go/internal/wit/wasi_clocks_0_3_0_system_clock" + host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + clock "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/rpc_test.go b/sdks/go/rpc_test.go index 1f971741a2..1bdecaa3d9 100644 --- a/sdks/go/rpc_test.go +++ b/sdks/go/rpc_test.go @@ -6,9 +6,9 @@ import ( "strings" "testing" - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - host "github.com/golemcloud/golem-go/internal/wit/golem_agent_host" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/schema.go b/sdks/go/schema.go index fc134492a6..522c7a5ac2 100644 --- a/sdks/go/schema.go +++ b/sdks/go/schema.go @@ -18,8 +18,8 @@ import ( "reflect" "sort" - common "github.com/golemcloud/golem-go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem-go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) From 50a4dc84fd0635a5447d0a40607cbefa877ff9ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 16:57:26 +0200 Subject: [PATCH 011/149] go sdk: move module to sdks/go/golem so imports need no alias --- .agents/skills/sdk-development/SKILL.md | 40 +++-- Makefile.toml | 12 +- cli/golem-cli/build.rs | 2 +- cli/golem-cli/src/app/build/check/agents.rs | 1 + .../src/app/build/check/requirements.rs | 16 ++ cli/golem-cli/src/app/template/generator.rs | 22 ++- cli/golem-cli/src/model/app.rs | 1 + cli/golem-cli/src/model/deploy.rs | 3 + cli/golem-cli/src/model/mod.rs | 9 + cli/golem-cli/src/sdk_overrides.rs | 52 +++++- cli/golem-cli/src/versions.rs | 11 ++ .../templates/go/common-on-demand/golem.yaml | 20 +++ .../go/common-on-demand/metadata.json | 4 + cli/golem-cli/templates/go/common/.gitignore | 4 + cli/golem-cli/templates/go/common/AGENTS.md | 157 ++++++++++++++++++ cli/golem-cli/templates/go/common/golem.yaml | 24 +++ .../templates/go/common/metadata.json | 4 + .../go/component/component-dir/go.mod._ | 19 +++ .../templates/go/component/golem.yaml | 6 + .../templates/go/component/metadata.json | 4 + .../go/default/component-dir/counter.go | 52 ++++++ cli/golem-cli/templates/go/default/golem.yaml | 8 + .../templates/go/default/metadata.json | 4 + sdks/go/examples/counter/counter.go | 2 +- sdks/go/examples/counter/counter.wasm | Bin 0 -> 3982482 bytes sdks/go/examples/counter/go.mod | 4 +- sdks/go/examples/orders/go.mod | 4 +- sdks/go/examples/orders/orders.go | 2 +- sdks/go/examples/orders/orders.wasm | Bin 0 -> 4478627 bytes sdks/go/{ => golem}/.gitignore | 0 sdks/go/{ => golem}/client.go | 8 +- sdks/go/{ => golem}/codec.go | 2 +- sdks/go/{ => golem}/codec_test.go | 4 +- sdks/go/{ => golem}/componentize-go.toml | 0 sdks/go/{ => golem}/future.go | 2 +- sdks/go/{ => golem}/go.mod | 2 +- sdks/go/{ => golem}/go.sum | 0 sdks/go/{ => golem}/golem.go | 6 +- sdks/go/{ => golem}/golem_test.go | 6 +- sdks/go/{ => golem}/guest.go | 6 +- .../export_golem_agent_guest/exports.go | 4 +- .../export_golem_api_load_snapshot/exports.go | 2 +- .../export_golem_api_save_snapshot/exports.go | 2 +- .../internal/wit/golem_agent_common/empty.s | 0 .../wit/golem_agent_common/wit_bindings.go | 2 +- .../internal/wit/golem_agent_guest/empty.s | 0 .../wit/golem_agent_guest/wit_bindings.go | 4 +- .../internal/wit/golem_agent_host/empty.s | 0 .../wit/golem_agent_host/wit_bindings.go | 6 +- .../internal/wit/golem_api_context/empty.s | 0 .../wit/golem_api_context/wit_bindings.go | 2 +- .../internal/wit/golem_api_host/empty.s | 0 .../wit/golem_api_host/wit_bindings.go | 2 +- .../wit/golem_api_load_snapshot/empty.s | 0 .../golem_api_load_snapshot/wit_bindings.go | 2 +- .../internal/wit/golem_api_oplog/empty.s | 0 .../wit/golem_api_oplog/wit_bindings.go | 10 +- .../internal/wit/golem_api_retry/empty.s | 0 .../wit/golem_api_retry/wit_bindings.go | 0 .../wit/golem_api_save_snapshot/empty.s | 0 .../golem_api_save_snapshot/wit_bindings.go | 2 +- .../internal/wit/golem_core_types/empty.s | 0 .../wit/golem_core_types/wit_bindings.go | 0 .../wit/golem_durability_durability/empty.s | 0 .../wit_bindings.go | 8 +- .../internal/wit/golem_quota_types/empty.s | 0 .../wit/golem_quota_types/wit_bindings.go | 2 +- .../internal/wit/golem_rdbms_ignite2/empty.s | 0 .../wit/golem_rdbms_ignite2/wit_bindings.go | 0 .../internal/wit/golem_rdbms_mysql/empty.s | 0 .../wit/golem_rdbms_mysql/wit_bindings.go | 2 +- .../internal/wit/golem_rdbms_postgres/empty.s | 0 .../wit/golem_rdbms_postgres/wit_bindings.go | 2 +- .../internal/wit/golem_rdbms_types/empty.s | 0 .../wit/golem_rdbms_types/wit_bindings.go | 0 .../internal/wit/golem_secrets_reveal/empty.s | 0 .../wit/golem_secrets_reveal/wit_bindings.go | 4 +- .../internal/wit/golem_secrets_types/empty.s | 0 .../wit/golem_secrets_types/wit_bindings.go | 4 +- .../wit/golem_websocket_client/empty.s | 0 .../golem_websocket_client/wit_bindings.go | 0 .../wit/wasi_blobstore_blobstore/empty.s | 0 .../wasi_blobstore_blobstore/wit_bindings.go | 4 +- .../wit/wasi_blobstore_container/empty.s | 0 .../wasi_blobstore_container/wit_bindings.go | 2 +- .../internal/wit/wasi_blobstore_types/empty.s | 0 .../wit/wasi_blobstore_types/wit_bindings.go | 0 .../wit/wasi_cli_0_3_0_environment/empty.s | 0 .../wit_bindings.go | 0 .../wasi_clocks_0_3_0_system_clock/empty.s | 0 .../wit_bindings.go | 0 .../wit/wasi_clocks_0_3_0_types/empty.s | 0 .../wasi_clocks_0_3_0_types/wit_bindings.go | 0 .../internal/wit/wasi_config_store/empty.s | 0 .../wit/wasi_config_store/wit_bindings.go | 0 .../wit/wasi_http_0_3_0_client/empty.s | 0 .../wasi_http_0_3_0_client/wit_bindings.go | 2 +- .../wit/wasi_http_0_3_0_types/empty.s | 0 .../wit/wasi_http_0_3_0_types/wit_bindings.go | 0 .../wit/wasi_keyvalue_eventual/empty.s | 0 .../wasi_keyvalue_eventual/wit_bindings.go | 4 +- .../wit/wasi_keyvalue_eventual_batch/empty.s | 0 .../wit_bindings.go | 4 +- .../internal/wit/wasi_keyvalue_types/empty.s | 0 .../wit/wasi_keyvalue_types/wit_bindings.go | 2 +- .../wasi_keyvalue_wasi_keyvalue_error/empty.s | 0 .../wit_bindings.go | 0 .../internal/wit/wit_exports/empty.s | 0 .../internal/wit/wit_exports/wit_exports.go | 12 +- sdks/go/{ => golem}/marshal.go | 2 +- sdks/go/{ => golem}/registry.go | 4 +- sdks/go/{ => golem}/rpc.go | 6 +- sdks/go/{ => golem}/rpc_test.go | 6 +- sdks/go/{ => golem}/schema.go | 4 +- sdks/go/{ => golem}/types.go | 0 sdks/go/{ => golem}/variant.go | 0 .../wit/deps/blobstore/blobstore.wit | 0 .../wit/deps/blobstore/container.wit | 0 .../{ => golem}/wit/deps/blobstore/types.wit | 0 .../{ => golem}/wit/deps/blobstore/world.wit | 0 .../go/{ => golem}/wit/deps/cli-0.2.6/cli.wit | 0 sdks/go/{ => golem}/wit/deps/cli/cli.wit | 0 .../wit/deps/clocks-0.2.6/clocks.wit | 0 .../go/{ => golem}/wit/deps/clocks/clocks.wit | 0 sdks/go/{ => golem}/wit/deps/config/store.wit | 0 sdks/go/{ => golem}/wit/deps/config/world.wit | 0 .../wit/deps/filesystem-0.2.6/filesystem.wit | 0 .../wit/deps/filesystem/filesystem.wit | 0 .../wit/deps/golem-1.x/golem-context.wit | 0 .../wit/deps/golem-1.x/golem-host.wit | 0 .../deps/golem-1.x/golem-oplog-processor.wit | 0 .../wit/deps/golem-1.x/golem-oplog.wit | 0 .../wit/deps/golem-1.x/golem-retry.wit | 0 .../wit/deps/golem-agent/common.wit | 0 .../wit/deps/golem-agent/guest.wit | 0 .../{ => golem}/wit/deps/golem-agent/host.wit | 0 .../wit/deps/golem-core-v2/golem-core-v2.wit | 0 .../golem-durability/golem-durability.wit | 0 .../wit/deps/golem-quota/types.wit | 0 .../wit/deps/golem-rdbms/ignite.wit | 0 .../wit/deps/golem-rdbms/mysql.wit | 0 .../wit/deps/golem-rdbms/postgres.wit | 0 .../wit/deps/golem-rdbms/types.wit | 0 .../wit/deps/golem-rdbms/world.wit | 0 .../wit/deps/golem-secrets/reveal.wit | 0 .../wit/deps/golem-secrets/types.wit | 0 .../wit/deps/golem-tool/common.wit | 0 .../{ => golem}/wit/deps/golem-tool/guest.wit | 0 .../{ => golem}/wit/deps/golem-tool/host.wit | 0 .../wit/deps/golem-websocket/websocket.wit | 0 .../{ => golem}/wit/deps/http-0.2.6/http.wit | 0 sdks/go/{ => golem}/wit/deps/http/http.wit | 0 sdks/go/{ => golem}/wit/deps/io-0.2.6/io.wit | 0 .../{ => golem}/wit/deps/keyvalue/caching.wit | 0 .../{ => golem}/wit/deps/keyvalue/error.wit | 0 .../wit/deps/keyvalue/eventual-batch.wit | 0 .../wit/deps/keyvalue/eventual.wit | 0 .../wit/deps/keyvalue/handle-watch.wit | 0 .../{ => golem}/wit/deps/keyvalue/types.wit | 0 .../{ => golem}/wit/deps/keyvalue/world.wit | 0 .../{ => golem}/wit/deps/logging/logging.wit | 0 .../wit/deps/random-0.2.6/random.wit | 0 .../go/{ => golem}/wit/deps/random/random.wit | 0 .../wit/deps/sockets-0.2.6/sockets.wit | 0 .../{ => golem}/wit/deps/sockets/sockets.wit | 0 sdks/go/{ => golem}/wit/main.wit | 0 166 files changed, 534 insertions(+), 101 deletions(-) create mode 100644 cli/golem-cli/templates/go/common-on-demand/golem.yaml create mode 100644 cli/golem-cli/templates/go/common-on-demand/metadata.json create mode 100644 cli/golem-cli/templates/go/common/.gitignore create mode 100644 cli/golem-cli/templates/go/common/AGENTS.md create mode 100644 cli/golem-cli/templates/go/common/golem.yaml create mode 100644 cli/golem-cli/templates/go/common/metadata.json create mode 100644 cli/golem-cli/templates/go/component/component-dir/go.mod._ create mode 100644 cli/golem-cli/templates/go/component/golem.yaml create mode 100644 cli/golem-cli/templates/go/component/metadata.json create mode 100644 cli/golem-cli/templates/go/default/component-dir/counter.go create mode 100644 cli/golem-cli/templates/go/default/golem.yaml create mode 100644 cli/golem-cli/templates/go/default/metadata.json create mode 100644 sdks/go/examples/counter/counter.wasm create mode 100644 sdks/go/examples/orders/orders.wasm rename sdks/go/{ => golem}/.gitignore (100%) rename sdks/go/{ => golem}/client.go (92%) rename sdks/go/{ => golem}/codec.go (99%) rename sdks/go/{ => golem}/codec_test.go (99%) rename sdks/go/{ => golem}/componentize-go.toml (100%) rename sdks/go/{ => golem}/future.go (96%) rename sdks/go/{ => golem}/go.mod (87%) rename sdks/go/{ => golem}/go.sum (100%) rename sdks/go/{ => golem}/golem.go (95%) rename sdks/go/{ => golem}/golem_test.go (97%) rename sdks/go/{ => golem}/guest.go (95%) rename sdks/go/{ => golem}/internal/exports/export_golem_agent_guest/exports.go (94%) rename sdks/go/{ => golem}/internal/exports/export_golem_api_load_snapshot/exports.go (93%) rename sdks/go/{ => golem}/internal/exports/export_golem_api_save_snapshot/exports.go (92%) rename sdks/go/{ => golem}/internal/wit/golem_agent_common/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_agent_common/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_agent_guest/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_agent_guest/wit_bindings.go (87%) rename sdks/go/{ => golem}/internal/wit/golem_agent_host/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_agent_host/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_api_context/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_api_context/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_api_host/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_api_host/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_api_load_snapshot/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_api_load_snapshot/wit_bindings.go (92%) rename sdks/go/{ => golem}/internal/wit/golem_api_oplog/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_api_oplog/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_api_retry/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_api_retry/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/golem_api_save_snapshot/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_api_save_snapshot/wit_bindings.go (92%) rename sdks/go/{ => golem}/internal/wit/golem_core_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_core_types/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/golem_durability_durability/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_durability_durability/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_quota_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_quota_types/wit_bindings.go (98%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_ignite2/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_ignite2/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_mysql/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_mysql/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_postgres/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_postgres/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_rdbms_types/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/golem_secrets_reveal/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_secrets_reveal/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/golem_secrets_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_secrets_types/wit_bindings.go (97%) rename sdks/go/{ => golem}/internal/wit/golem_websocket_client/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/golem_websocket_client/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wasi_blobstore_blobstore/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_blobstore_blobstore/wit_bindings.go (98%) rename sdks/go/{ => golem}/internal/wit/wasi_blobstore_container/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_blobstore_container/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/wasi_blobstore_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_blobstore_types/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wasi_cli_0_3_0_environment/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wasi_clocks_0_3_0_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wasi_config_store/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_config_store/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wasi_http_0_3_0_client/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_http_0_3_0_client/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/wasi_http_0_3_0_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_http_0_3_0_types/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_eventual/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_eventual/wit_bindings.go (97%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_eventual_batch/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go (97%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_types/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_types/wit_bindings.go (99%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go (100%) rename sdks/go/{ => golem}/internal/wit/wit_exports/empty.s (100%) rename sdks/go/{ => golem}/internal/wit/wit_exports/wit_exports.go (99%) rename sdks/go/{ => golem}/marshal.go (97%) rename sdks/go/{ => golem}/registry.go (98%) rename sdks/go/{ => golem}/rpc.go (97%) rename sdks/go/{ => golem}/rpc_test.go (96%) rename sdks/go/{ => golem}/schema.go (97%) rename sdks/go/{ => golem}/types.go (100%) rename sdks/go/{ => golem}/variant.go (100%) rename sdks/go/{ => golem}/wit/deps/blobstore/blobstore.wit (100%) rename sdks/go/{ => golem}/wit/deps/blobstore/container.wit (100%) rename sdks/go/{ => golem}/wit/deps/blobstore/types.wit (100%) rename sdks/go/{ => golem}/wit/deps/blobstore/world.wit (100%) rename sdks/go/{ => golem}/wit/deps/cli-0.2.6/cli.wit (100%) rename sdks/go/{ => golem}/wit/deps/cli/cli.wit (100%) rename sdks/go/{ => golem}/wit/deps/clocks-0.2.6/clocks.wit (100%) rename sdks/go/{ => golem}/wit/deps/clocks/clocks.wit (100%) rename sdks/go/{ => golem}/wit/deps/config/store.wit (100%) rename sdks/go/{ => golem}/wit/deps/config/world.wit (100%) rename sdks/go/{ => golem}/wit/deps/filesystem-0.2.6/filesystem.wit (100%) rename sdks/go/{ => golem}/wit/deps/filesystem/filesystem.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-1.x/golem-context.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-1.x/golem-host.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-1.x/golem-oplog-processor.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-1.x/golem-oplog.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-1.x/golem-retry.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-agent/common.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-agent/guest.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-agent/host.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-core-v2/golem-core-v2.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-durability/golem-durability.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-quota/types.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-rdbms/ignite.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-rdbms/mysql.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-rdbms/postgres.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-rdbms/types.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-rdbms/world.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-secrets/reveal.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-secrets/types.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-tool/common.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-tool/guest.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-tool/host.wit (100%) rename sdks/go/{ => golem}/wit/deps/golem-websocket/websocket.wit (100%) rename sdks/go/{ => golem}/wit/deps/http-0.2.6/http.wit (100%) rename sdks/go/{ => golem}/wit/deps/http/http.wit (100%) rename sdks/go/{ => golem}/wit/deps/io-0.2.6/io.wit (100%) rename sdks/go/{ => golem}/wit/deps/keyvalue/caching.wit (100%) rename sdks/go/{ => golem}/wit/deps/keyvalue/error.wit (100%) rename sdks/go/{ => golem}/wit/deps/keyvalue/eventual-batch.wit (100%) rename sdks/go/{ => golem}/wit/deps/keyvalue/eventual.wit (100%) rename sdks/go/{ => golem}/wit/deps/keyvalue/handle-watch.wit (100%) rename sdks/go/{ => golem}/wit/deps/keyvalue/types.wit (100%) rename sdks/go/{ => golem}/wit/deps/keyvalue/world.wit (100%) rename sdks/go/{ => golem}/wit/deps/logging/logging.wit (100%) rename sdks/go/{ => golem}/wit/deps/random-0.2.6/random.wit (100%) rename sdks/go/{ => golem}/wit/deps/random/random.wit (100%) rename sdks/go/{ => golem}/wit/deps/sockets-0.2.6/sockets.wit (100%) rename sdks/go/{ => golem}/wit/deps/sockets/sockets.wit (100%) rename sdks/go/{ => golem}/wit/main.wit (100%) diff --git a/.agents/skills/sdk-development/SKILL.md b/.agents/skills/sdk-development/SKILL.md index d3151c1cca..4d207ee848 100644 --- a/.agents/skills/sdk-development/SKILL.md +++ b/.agents/skills/sdk-development/SKILL.md @@ -155,16 +155,30 @@ moon fmt moon info # Regenerate .mbti interface files ``` -## Go SDK (`sdks/go/`) +## Go SDK (`sdks/go/golem/`) -Module path **`github.com/golemcloud/golem/sdks/go`**, package `golem`. Built with +Module path **`github.com/golemcloud/golem/sdks/go/golem`**, package `golem`. + +The directory is `sdks/go/golem`, not `sdks/go`, on purpose: Go binds an import to the *package +clause*, but tooling and readers expect it to match the **last path element**. Naming the directory +`golem` makes them agree, so agents import the SDK with no alias: + +```go +import "github.com/golemcloud/golem/sdks/go/golem" // binds `golem` +``` + +A hyphenated name (`golem-go-sdk`) could not do this — hyphens are not valid Go identifiers, so it +would force an alias back. It also leaves `sdks/go/` free for siblings; `sdks/go/examples/` already +lives there. + +Built with `componentize-go`, which is pinned per-project through Go's `tool` directive — never installed globally. ### Building and testing ```shell -cd sdks/go +cd sdks/go/golem go build ./... go test ./... # native tests; fast, no wasm needed GOOS=wasip1 GOARCH=wasm go vet -unsafeptr=false -composites=false ./... @@ -202,8 +216,8 @@ Because the module lives in a subdirectory, Go **requires** the tag to be prefix subdirectory. This is a Go rule, not a choice: ``` -sdks/go/v0.1.0 ✅ the only form Go recognises -golem-go-v0.1.0 ❌ invisible to Go — do not use +sdks/go/golem/v0.1.0 ✅ the only form Go recognises +golem-go-v0.1.0 ❌ invisible to Go — do not use ``` Notes: @@ -212,13 +226,17 @@ Notes: avoided; see ("module subdirectory ... also serves as a prefix for semantic version tags"). - It does **not** collide with anything. There is no root `go.mod`, so the repo's `v1.5.x` release - tags are invisible to Go, and no existing tag has the `sdks/go/` shape. + tags are invisible to Go, and no existing tag has the `sdks/go/golem/` shape. - **Major version v2+** additionally requires a `/v2` suffix on the module path - (`github.com/golemcloud/golem/sdks/go/v2`), tagged `sdks/go/v2.0.0`. -- Consumers using the default `GOPROXY` download only the `sdks/go` subtree (~7 MB), not the whole - repository. Only `GOPROXY=direct` clones the full repo, once per module cache. -- `sdks/go/examples/*` have their own `go.mod`, so they are nested modules and are **excluded** from - the published module zip. + (`github.com/golemcloud/golem/sdks/go/golem/v2`), tagged `sdks/go/golem/v2.0.0`. +- Consumers using the default `GOPROXY` download only the `sdks/go/golem` subtree (~7 MB), not the + whole repository. Only `GOPROXY=direct` clones the full repo, once per module cache. Repo size is + not a concern: the mirror serves far larger monorepos of exactly this shape (aws-sdk-go-v2 is + ~1.2 GB with subdirectory-tagged modules); the only hard limit is 500 MiB on the *module zip*. +- `sdks/go/examples/*` are siblings of the module with their own `go.mod`, so they are never part of + the published zip. +- The mirror stores a module permanently only if it can **detect a license**. Confirm licensing is + visible for the `sdks/go/golem` subtree before cutting the first tag. ### Local SDK overrides diff --git a/Makefile.toml b/Makefile.toml index 8e67d7d7cb..8dafe2c7f3 100644 --- a/Makefile.toml +++ b/Makefile.toml @@ -111,7 +111,7 @@ args = [ "--src", "wit/deps", "--dst", "sdks/ts/wit/deps", "--src", "wit/deps", "--dst", "sdks/scala/wit/deps", "--src", "wit/deps", "--dst", "sdks/moonbit/golem_sdk/wit/deps", - "--src", "wit/deps", "--dst", "sdks/go/wit/deps", + "--src", "wit/deps", "--dst", "sdks/go/golem/wit/deps", ] [tasks.wit-golem-cli] @@ -130,7 +130,7 @@ args = [ private = true script_runner = "@duckscript" script = ''' -status = exec git status --porcelain -- golem-common/wit/deps cli/golem-cli/wit/deps sdks/rust/golem-rust/wit/deps sdks/ts/wit/deps sdks/scala/wit/deps sdks/moonbit/golem_sdk/wit/deps sdks/go/wit/deps +status = exec git status --porcelain -- golem-common/wit/deps cli/golem-cli/wit/deps sdks/rust/golem-rust/wit/deps sdks/ts/wit/deps sdks/scala/wit/deps sdks/moonbit/golem_sdk/wit/deps sdks/go/golem/wit/deps ok = eq ${status.code} 0 if not ${ok} echo "git status failed (exit ${status.code}):" @@ -405,12 +405,12 @@ fi ''' [tasks.generate-sdk-go-bindings] -description = "Regenerates the Go SDK's WIT bindings (sdks/go/internal/wit)" +description = "Regenerates the Go SDK's WIT bindings (sdks/go/golem/internal/wit)" dependencies = ["wit"] -cwd = "./sdks/go" +cwd = "./sdks/go/golem" script_runner = "@duckscript" script = ''' -# The componentize-go version is pinned in sdks/go/go.mod via the `tool` directive +# The componentize-go version is pinned in sdks/go/golem/go.mod via the `tool` directive # (never `latest`); `go tool` therefore resolves the exact pinned build. # --all-features is a GLOBAL flag and must precede the subcommand: golem's p3 WIT # uses @unstable annotations (timezone). @@ -418,7 +418,7 @@ script = ''' # The export packages are NOT generated: --export-pkg-name points the glue at # internal/exports, which we hand-write (the `Exports` slots the SDK fills in at # init). That keeps generated and hand-written code strictly separated. -exec --fail-on-error go tool componentize-go --all-features bindings --output internal/wit --pkg-name github.com/golemcloud/golem/sdks/go/internal/wit --export-pkg-name github.com/golemcloud/golem/sdks/go/internal/exports --format +exec --fail-on-error go tool componentize-go --all-features bindings --output internal/wit --pkg-name github.com/golemcloud/golem/sdks/go/golem/internal/wit --export-pkg-name github.com/golemcloud/golem/sdks/go/golem/internal/exports --format # Works around a wit-bindgen crates/go codegen bug; see dev-tools/go-bindgen-fixup. exec --fail-on-error cargo run --quiet --manifest-path ../../dev-tools/Cargo.toml --bin go-bindgen-fixup -- internal/wit diff --git a/cli/golem-cli/build.rs b/cli/golem-cli/build.rs index f07d659e06..c9227e32be 100644 --- a/cli/golem-cli/build.rs +++ b/cli/golem-cli/build.rs @@ -23,7 +23,7 @@ use std::process::Command; static SKIP_ENV_VAR_NAME: &str = "GOLEM_BUILD_SKIP_SHADOW"; const GENERATED_TEMPLATES_DIR_NAME: &str = "templates"; const SKILL_DESTINATION: &str = ".agents/skills"; -const SUPPORTED_LANGUAGES: &[&str] = &["ts", "rust", "scala", "moonbit"]; +const SUPPORTED_LANGUAGES: &[&str] = &["ts", "rust", "scala", "moonbit", "go"]; fn main() { generate_embedded_templates().unwrap(); diff --git a/cli/golem-cli/src/app/build/check/agents.rs b/cli/golem-cli/src/app/build/check/agents.rs index fb95cb1c3a..409956d72f 100644 --- a/cli/golem-cli/src/app/build/check/agents.rs +++ b/cli/golem-cli/src/app/build/check/agents.rs @@ -120,6 +120,7 @@ mod tests { GuestLanguage::TypeScript, GuestLanguage::Rust, GuestLanguage::MoonBit, + GuestLanguage::Go, ] { let source = repo .common_template_file_contents(language, Path::new("AGENTS.md")) diff --git a/cli/golem-cli/src/app/build/check/requirements.rs b/cli/golem-cli/src/app/build/check/requirements.rs index 8d34782b6f..2d7ab57fd4 100644 --- a/cli/golem-cli/src/app/build/check/requirements.rs +++ b/cli/golem-cli/src/app/build/check/requirements.rs @@ -162,12 +162,28 @@ const MOONBIT_TOOL_REQUIREMENTS: &[ToolRequirement] = &[ }, ]; +// Go needs only the stock `go` toolchain. componentize-go arrives through the +// project's `tool` directive (so it is pinned per-app, never installed +// globally), and it downloads the patched Go it needs into its own cache +// side-by-side with the user's installation. +const GO_TOOL_REQUIREMENTS: &[ToolRequirement] = &[ToolRequirement { + key: "go", + name: "Go", + check: ToolRequirementCheck::CommandVersion { + command: "go", + args: &["version"], + }, + version_range: Some(VersionRange::at_least(versions::build_tool::GO_MIN)), + install_hint: "Install Go 1.25.5 or newer: https://go.dev/dl/", +}]; + pub fn tool_requirements_for_language(language: GuestLanguage) -> &'static [ToolRequirement] { match language { GuestLanguage::Rust => RUST_TOOL_REQUIREMENTS, GuestLanguage::TypeScript => TYPESCRIPT_TOOL_REQUIREMENTS, GuestLanguage::Scala => SCALA_TOOL_REQUIREMENTS, GuestLanguage::MoonBit => MOONBIT_TOOL_REQUIREMENTS, + GuestLanguage::Go => GO_TOOL_REQUIREMENTS, } } diff --git a/cli/golem-cli/src/app/template/generator.rs b/cli/golem-cli/src/app/template/generator.rs index 9c53f742ed..fe7586857c 100644 --- a/cli/golem-cli/src/app/template/generator.rs +++ b/cli/golem-cli/src/app/template/generator.rs @@ -16,7 +16,7 @@ use crate::app::template::AppTemplate; use crate::app::template::repo::TEMPLATES_DIR; use crate::app::template::snippet::{APP_MANIFEST_HEADER, DEP_ENV_VARS_DOC}; use crate::fs; -use crate::sdk_overrides::sdk_overrides; +use crate::sdk_overrides::{GO_SDK_MODULE, sdk_overrides}; use crate::versions; use anyhow::{anyhow, bail}; use golem_common::base_model::application::ApplicationName; @@ -102,6 +102,7 @@ enum Transform { RustSdk, ScalaSdk, MoonBitSdk, + GoSdk, ApplicationName, } @@ -290,6 +291,7 @@ fn generate_directory( Transform::ManifestHints, Transform::ApplicationName, Transform::MoonBitSdk, + Transform::GoSdk, ] } (true, "package.json") => vec![Transform::TsSdk], @@ -310,6 +312,7 @@ fn generate_directory( ] } (false, "package.json") => vec![Transform::TsSdk], + (false, "go.mod") => vec![Transform::ComponentName, Transform::GoSdk], (false, "Cargo.toml") => vec![Transform::ComponentName, Transform::RustSdk], (false, "build.sbt") => vec![ Transform::ComponentName, @@ -465,6 +468,20 @@ fn transform( sdk_overrides.moonbit_sdk_build_path(), ); } + Transform::GoSdk => { + replacements.insert("GOLEM_GO_DEP_SDK_MODULE", GO_SDK_MODULE.to_string()); + replacements.insert("GOLEM_GO_DEP_SDK_VERSION", sdk_overrides.go_sdk_dep()); + // Empty unless a local SDK checkout is being used. + replacements.insert("GOLEM_GO_DEP_SDK_REPLACE", sdk_overrides.go_sdk_replace()); + replacements.insert( + "GOLEM_GO_DEP_GO_VERSION", + versions::build_tool::GO_MIN.to_string(), + ); + replacements.insert( + "GOLEM_GO_DEP_COMPONENTIZE_GO_VERSION", + versions::go_dep::COMPONENTIZE_GO.to_string(), + ); + } Transform::TsSdk => { replacements.insert( "GOLEM_TS_SDK_VERSION_OR_PATH", @@ -555,7 +572,8 @@ fn transform_file_name( file_name: impl AsRef, ) -> anyhow::Result { Ok(transform(ctx, file_name, &[Transform::ComponentName])? - .replace("Cargo.toml._", "Cargo.toml")) + .replace("Cargo.toml._", "Cargo.toml") + .replace("go.mod._", "go.mod")) } fn transform_target_file_path( diff --git a/cli/golem-cli/src/model/app.rs b/cli/golem-cli/src/model/app.rs index 0b35214818..509ccba388 100644 --- a/cli/golem-cli/src/model/app.rs +++ b/cli/golem-cli/src/model/app.rs @@ -1740,6 +1740,7 @@ impl<'a> Component<'a> { "rust" => Some(GuestLanguage::Rust), "scala" => Some(GuestLanguage::Scala), "moonbit" => Some(GuestLanguage::MoonBit), + "go" => Some(GuestLanguage::Go), _ => None, }) }) diff --git a/cli/golem-cli/src/model/deploy.rs b/cli/golem-cli/src/model/deploy.rs index fd99c7ffba..b9702db008 100644 --- a/cli/golem-cli/src/model/deploy.rs +++ b/cli/golem-cli/src/model/deploy.rs @@ -405,6 +405,9 @@ pub fn preferred_source_language_for_setup( Some(GuestLanguage::TypeScript) => SourceLanguage::TypeScript, Some(GuestLanguage::Scala) => SourceLanguage::Scala, Some(GuestLanguage::MoonBit) => SourceLanguage::MoonBit, + // The Go SDK reports "go" as its source-language; there is no dedicated + // agent-id renderer/parser for it yet, so it takes the Other(_) path. + Some(GuestLanguage::Go) => SourceLanguage::Other("go".to_string()), None => SourceLanguage::Other(String::new()), } } diff --git a/cli/golem-cli/src/model/mod.rs b/cli/golem-cli/src/model/mod.rs index 63db75f247..dc1122d26d 100644 --- a/cli/golem-cli/src/model/mod.rs +++ b/cli/golem-cli/src/model/mod.rs @@ -79,6 +79,8 @@ pub enum GuestLanguage { Rust, Scala, MoonBit, + #[value(alias = "golang")] + Go, } impl GuestLanguage { @@ -88,6 +90,7 @@ impl GuestLanguage { "ts" | "typescript" => Some(GuestLanguage::TypeScript), "scala" => Some(GuestLanguage::Scala), "moonbit" => Some(GuestLanguage::MoonBit), + "go" | "golang" => Some(GuestLanguage::Go), _ => None, } } @@ -98,6 +101,7 @@ impl GuestLanguage { "ts" => Some(GuestLanguage::TypeScript), "scala" => Some(GuestLanguage::Scala), "moonbit" => Some(GuestLanguage::MoonBit), + "go" => Some(GuestLanguage::Go), _ => None, } } @@ -108,6 +112,7 @@ impl GuestLanguage { GuestLanguage::TypeScript => "ts", GuestLanguage::Scala => "scala", GuestLanguage::MoonBit => "moonbit", + GuestLanguage::Go => "go", } } @@ -117,6 +122,9 @@ impl GuestLanguage { | GuestLanguage::TypeScript | GuestLanguage::Scala | GuestLanguage::MoonBit => true, + // No `src/bridge_gen/go` yet; cross-component clients for Go are + // written by hand against the SDK until it lands. + GuestLanguage::Go => false, } } @@ -126,6 +134,7 @@ impl GuestLanguage { GuestLanguage::TypeScript => "TypeScript", GuestLanguage::Scala => "Scala", GuestLanguage::MoonBit => "MoonBit", + GuestLanguage::Go => "Go", } } } diff --git a/cli/golem-cli/src/sdk_overrides.rs b/cli/golem-cli/src/sdk_overrides.rs index 5217a18bc1..37342c3d78 100644 --- a/cli/golem-cli/src/sdk_overrides.rs +++ b/cli/golem-cli/src/sdk_overrides.rs @@ -29,8 +29,10 @@ const GOLEM_TS_VERSION: &str = "GOLEM_TS_VERSION"; const GOLEM_SCALA_SDK_VERSION: &str = "GOLEM_SCALA_SDK_VERSION"; const GOLEM_MOONBIT_SDK_PATH: &str = "GOLEM_MOONBIT_SDK_PATH"; const GOLEM_MOONBIT_SDK_VERSION: &str = "GOLEM_MOONBIT_SDK_VERSION"; +const GOLEM_GO_PATH: &str = "GOLEM_GO_PATH"; +const GOLEM_GO_VERSION: &str = "GOLEM_GO_VERSION"; -const SDK_OVERRIDE_KEYS: [&str; 8] = [ +const SDK_OVERRIDE_KEYS: [&str; 10] = [ GOLEM_PATH, GOLEM_RUST_PATH, GOLEM_RUST_VERSION, @@ -39,10 +41,15 @@ const SDK_OVERRIDE_KEYS: [&str; 8] = [ GOLEM_SCALA_SDK_VERSION, GOLEM_MOONBIT_SDK_PATH, GOLEM_MOONBIT_SDK_VERSION, + GOLEM_GO_PATH, + GOLEM_GO_VERSION, ]; pub const SDK_OVERRIDES_FILE_NAME: &str = ".golem-sdk-overrides"; +/// Module path of the Go SDK, as required/replaced in a generated `go.mod`. +pub const GO_SDK_MODULE: &str = "github.com/golemcloud/golem/sdks/go/golem"; + #[derive(Debug, Clone, Copy, Eq, PartialEq)] pub enum SdkOverridesTestProfile { LocalWorkspace, @@ -65,6 +72,8 @@ pub struct SdkOverrides { pub scala_sdk_version: Option, pub moonbit_sdk_path: Option, pub moonbit_sdk_version: Option, + pub go_sdk_path: Option, + pub go_sdk_version: Option, } #[derive(Debug, Clone, PartialEq, Eq)] @@ -96,6 +105,8 @@ impl SdkOverrides { fs::path_to_str(&workspace_dir.join("sdks/moonbit/golem_sdk"))?.to_string(), ), moonbit_sdk_version: None, + go_sdk_path: Some(fs::path_to_str(&workspace_dir.join("sdks/go/golem"))?.to_string()), + go_sdk_version: None, } .to_env_vars()) } @@ -138,6 +149,32 @@ impl SdkOverrides { } } + /// The version for the SDK's `require` line in a generated `go.mod`. + /// + /// When a local path override is active the version is a placeholder: the + /// `replace` directive from [`Self::go_sdk_replace`] is what actually + /// resolves the module, and Go requires the module to be `require`d anyway. + pub fn go_sdk_dep(&self) -> String { + match &self.go_sdk_path { + Some(_) => "v0.0.0".to_string(), + None => format!( + "v{}", + self.go_sdk_version.as_deref().unwrap_or(versions::sdk::GO) + ), + } + } + + /// The `replace` directive pointing at a local SDK checkout, or an empty + /// string when resolving the SDK from the module proxy. + pub fn go_sdk_replace(&self) -> String { + match &self.go_sdk_path { + Some(path) => { + format!("\nreplace {GO_SDK_MODULE} => {path}\n") + } + None => String::new(), + } + } + pub fn moonbit_sdk_tools_bin_deps(&self) -> String { match &self.moonbit_sdk_path { Some(_) => String::new(), @@ -327,6 +364,13 @@ impl SdkOverrides { "sdks/moonbit/golem_sdk", )?, moonbit_sdk_version: get_normalized_value_by_key(&values, GOLEM_MOONBIT_SDK_VERSION), + go_sdk_path: resolved_path_override( + &values, + GOLEM_GO_PATH, + golem_path.as_deref(), + "sdks/go/golem", + )?, + go_sdk_version: get_normalized_value_by_key(&values, GOLEM_GO_VERSION), }) } @@ -353,6 +397,12 @@ impl SdkOverrides { if let Some(value) = &self.moonbit_sdk_version { values.insert(GOLEM_MOONBIT_SDK_VERSION.to_string(), value.clone()); } + if let Some(value) = &self.go_sdk_path { + values.insert(GOLEM_GO_PATH.to_string(), value.clone()); + } + if let Some(value) = &self.go_sdk_version { + values.insert(GOLEM_GO_VERSION.to_string(), value.clone()); + } values } diff --git a/cli/golem-cli/src/versions.rs b/cli/golem-cli/src/versions.rs index ec45e5846e..8507c604e5 100644 --- a/cli/golem-cli/src/versions.rs +++ b/cli/golem-cli/src/versions.rs @@ -17,6 +17,7 @@ pub mod sdk { pub const TS: &str = "1.1.1"; pub const SCALA: &str = "1.5.1"; pub const MOONBIT: &str = "0.5.2"; + pub const GO: &str = "0.1.0"; pub const MANIFEST: &str = "1.6.0"; #[macro_export] @@ -36,6 +37,16 @@ pub mod build_tool { pub const MOON_MIN: &str = "0.1.20260409"; pub const JAVA_MIN: &str = "17.0.0"; pub const WASM_TOOLS_MIN: &str = "1.227.1"; + pub const GO_MIN: &str = "1.25.5"; +} + +// Keep this aligned with the Go component template's `tool` directive. +// +// componentize-go must be pinned to a concrete version, never `latest`: below +// v0.4.0 the Go wrapper resolves its Rust binary from a *canary* channel and +// silently ignores the pin. +pub mod go_dep { + pub const COMPONENTIZE_GO: &str = "v0.4.0"; } // Keep this aligned with the TS component template diff --git a/cli/golem-cli/templates/go/common-on-demand/golem.yaml b/cli/golem-cli/templates/go/common-on-demand/golem.yaml new file mode 100644 index 0000000000..bb3a7056a0 --- /dev/null +++ b/cli/golem-cli/templates/go/common-on-demand/golem.yaml @@ -0,0 +1,20 @@ +# golem-app-manifest-header + +componentTemplates: + go: + presets: + debug: + default: true + build: + - command: go tool componentize-go build -o "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" + dir: "{{ componentDir }}" + mkdirs: + - "{{ componentDir }}/golem-temp" + componentWasm: "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" + release: + build: + - command: go tool componentize-go build -o "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" + dir: "{{ componentDir }}" + mkdirs: + - "{{ componentDir }}/golem-temp" + componentWasm: "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" diff --git a/cli/golem-cli/templates/go/common-on-demand/metadata.json b/cli/golem-cli/templates/go/common-on-demand/metadata.json new file mode 100644 index 0000000000..af7fc9fa61 --- /dev/null +++ b/cli/golem-cli/templates/go/common-on-demand/metadata.json @@ -0,0 +1,4 @@ +{ + "type": "common-on-demand", + "description": "On demand common template for Go Agents" +} diff --git a/cli/golem-cli/templates/go/common/.gitignore b/cli/golem-cli/templates/go/common/.gitignore new file mode 100644 index 0000000000..70a62f3d27 --- /dev/null +++ b/cli/golem-cli/templates/go/common/.gitignore @@ -0,0 +1,4 @@ +*.wasm +golem-temp/ +.golem/ +.golem-local/ diff --git a/cli/golem-cli/templates/go/common/AGENTS.md b/cli/golem-cli/templates/go/common/AGENTS.md new file mode 100644 index 0000000000..1b79edbb00 --- /dev/null +++ b/cli/golem-cli/templates/go/common/AGENTS.md @@ -0,0 +1,157 @@ + + + +# Skills + +This project includes coding-agent skills in `.agents/skills/`. Load a skill when the task matches its description. + +**Activation cues for `golem.yaml` edits**: whenever a task involves editing `golem.yaml`, load `golem-edit-manifest` for the manifest schema, and also load the section-specific skill — `golem-add-env-vars` for `env`/`envDefaults`/`secretDefaults` changes, `golem-add-initial-files` for `files:` blocks, `golem-profiles-and-environments` for `presets`/environment-scoped sections, `golem-manage-plugins` for `plugins:` entries, `golem-configure-api-domain` for `httpApi`, and `golem-configure-mcp-server` for `mcp`. + +| Skill | Description | +|-------|-------------| +| `golem-cloud-account-setup` | Setting up a Golem Cloud account — authentication, cloud profiles, API tokens, and first cloud deployment | +| `golem-new-project` | Creating a new Golem application project with `golem new` | +| `golem-add-component` | Adding a new component or agent templates to an existing application | +| `golem-edit-manifest` | Editing the Golem Application Manifest (golem.yaml) — components, agents, templates, environments, httpApi, mcp, bridge SDKs, plugins, and more | +| `golem-build` | Building a Golem application with `golem build` | +| `golem-troubleshoot-build` | Troubleshooting Golem build failures and debugging manifest file (golem.yaml) configuration — diagnosing tool, dependency, env var, config, and manifest layer issues with `golem component manifest-trace` | +| `golem-deploy` | Deploying a Golem application with `golem deploy` | +| `golem-local-dev-server` | Starting, configuring, and debugging the local Golem development server with `golem server` — verbosity flags, useful tracing targets, and key log lines | +| `golem-rollback` | Rolling back a Golem deployment to a previous revision or version | +| `golem-redeploy-agents` | Redeploying existing agents by deleting and recreating them | +| `golem-configure-api-domain` | Configuring HTTP API domain deployments and security schemes in golem.yaml | +| `golem-configure-mcp-server` | Configuring MCP (Model Context Protocol) server deployments in golem.yaml | +| `golem-manage-plugins` | Managing Golem plugins — listing available plugins, installing and configuring plugins via golem.yaml or CLI, and understanding built-in plugins like the OTLP exporter | +| `golem-profiles-and-environments` | Understanding CLI profiles, app environments, and component presets — switching between local/cloud, managing deployment targets, and activating per-environment configuration | +| `golem-add-env-vars` | Defining environment variables for agents in golem.yaml and via CLI | +| `golem-add-initial-files` | Adding initial files to agent filesystems via golem.yaml | +| `golem-view-agent-logs` | Viewing agent logs and output via streaming | +| `golem-view-agent-files` | Listing files in an agent's virtual filesystem | +| `golem-list-and-filter-agents` | Listing and querying agents with filters | +| `golem-get-agent-metadata` | Checking agent metadata and status | +| `golem-debug-agent-history` | Querying the operation log | +| `golem-undo-agent-state` | Reverting agent state by undoing operations | +| `golem-interrupt-resume-agent` | Interrupting and resuming a Golem agent | +| `golem-test-crash-recovery` | Simulating a crash on an agent for testing crash recovery | +| `golem-integration-test-setup` | Setting up a dedicated Golem environment for integration testing — isolated local server, test environment in golem.yaml, dynamic port discovery, and non-interactive deploys | +| `golem-cancel-queued-invocation` | Canceling a pending (queued) invocation on an agent | +| `golem-delete-agent` | Deleting an agent instance | + +> **Go support is new.** Go-specific skills (`golem-add-agent-go`, `golem-add-http-endpoint-go`, …) +> are not available yet, so only the common skills are listed above. Until they land, use the Go SDK's +> own documentation and the examples under `sdks/go/examples`. + +# Golem Application Development Guide (Go) + +## Overview + +This is a **Golem Application** — a distributed computing project targeting WebAssembly (WASM). Components are compiled to WASM components with `componentize-go` and executed on the Golem platform, which provides durable execution, persistent state, and agent-to-agent communication. + +Key concepts: +- **Component**: A WASM component compiled from Go, defining one or more agent types +- **Agent type**: A struct annotated with `#derive.agent`, defining the agent's API via its public methods +- **Agent (worker)**: A running instance of an agent type, identified by constructor parameters, with persistent state + +## Agent Fundamentals + +- Every agent is uniquely identified by its **constructor parameter values** — two agents with the same parameters are the same agent +- Agents are **durable by default** — their state persists across invocations, failures, and restarts +- Invocations are processed **sequentially in a single thread** — no concurrency within a single agent, no need for locks +- Agents can **spawn other agents** and communicate with them via **RPC** (see Agent-to-Agent Communication) +- An agent is created implicitly on first invocation — no separate creation step needed +- **Async handles cannot outlive invocations** — every WASI `pollable` or `future-*` resource (e.g. those returned by `@http.handle`) must be subscribed to / `get()`-ed within the same invocation; do not store unresolved pollables or futures in agent state to consume them from a later invocation + +## Durability & Automatic Retries + +Golem **automatically retries** failed operations using durable execution. **Do not add manual retry loops, `match` + retry patterns, or backoff utilities in agent code** — let operations fail and Golem will retry them. A built-in default policy (3 retries, exponential backoff with jitter, clamped to [100ms, 1s]) applies when no user-defined policy matches. + +The following are retried transparently: + +- **HTTP requests** to external services (via `wasi:http` and friends) +- **RPC calls** between agents +- **Database / storage calls** — `golem:rdbms/postgres`, `golem:rdbms/mysql`, `golem:rdbms/ignite2`, `wasi:blobstore`, `wasi:keyvalue` +- **Panics and unhandled errors** (raised via `raise` or propagated with `!`) escaping an agent method — the worker is restarted and the invocation is replayed from the oplog, with all previously-recorded side effects skipped + +Only customize when the *strategy* needs to change (different backoff, give-up conditions, per-status-code policies). For that, see the Go SDK's retry-policy helpers. + +## Project Structure + +``` +golem.yaml # Root application manifest +go.mod # One module for the whole app; pins the SDK and componentize-go +/ # Component package (each becomes a WASM component) + golem.yaml # Component manifest + counter.go # Agent definition — package main +golem-temp/ # Build artifacts (gitignored) +``` + +There is a **single Go module at the app root**. Each component directory is its own `package main` +within that module, so components share dependencies but build to separate WASM components. + +## Prerequisites + +- Go toolchain: https://go.dev/dl/ (Go 1.25.5 or newer) +- Golem CLI (`golem`) version 1.5.x: https://github.com/golemcloud/golem/releases +- `wasm-tools`: https://github.com/bytecodealliance/wasm-tools + +## Name Mapping + +Wire names come from the SDK's declarations, not from Go identifiers: + +- **Agent type names**: the `Name` in `golem.Spec{Name: "CounterAgent"}` +- **Method names**: the string passed to `golem.DefineMethod[...]("increment")` +- **Parameter and record field names**: the Go field name **lower-camel-cased** — `AmountCents` → `amountCents` +- **Variant case names**: the string in `golem.Case[Card]("card")` +- **Enum case names**: positional, from `golem.DefineEnum[Status]("active", "closed")` + +## Key Constraints + +- Target is **WASM only** — no raw sockets. `net.Dial`, most database drivers and custom gRPC + transports cannot work; outgoing HTTP goes through the SDK's WASI-backed transport. +- Bare `int`/`uint` are **rejected** at registration: their width is platform-dependent, so the wire + type would be ambiguous. Use `int64`/`uint64` or another sized type. +- A `*T` field means `option`. A nil slice or map is an **empty** list/map, never "absent" — spell + the optional container `*[]T` if you need to distinguish. +- Method descriptors must be **package-level vars**: the same value drives the schema, the + implementation binding and cross-agent calls. +- Cross-agent calls hang off the descriptor (`Charge.Call(client, in)`), because Go methods cannot + introduce type parameters. +- `func main() {}` must exist and can be empty — the SDK wires the component exports from its `init()`. +- Multiple agents can coexist in one component; a worker is initialized as exactly one of them. +- Do NOT edit files under `internal/wit/` in the SDK — they are generated. + +## Coding Convention + +- Standard Go style: `gofmt` decides formatting; `UpperCamelCase` for exported identifiers, + `lowerCamelCase` otherwise. +- Agents are declared with `golem.DefineAgent`, methods with `golem.DefineMethod`, and behaviour + bound with `golem.Implement` in an `init()`. +- Handlers may be plain closures or ordinary Go methods bound with a method expression + (`golem.Bind((*CartState).AddItem)`). + +## Tooling + +- `gofmt -w .` — format code +- `go vet ./...` — static checks +- `go test ./...` — run tests +- `golem app build` — build the components (runs `go tool componentize-go build`) + +## Running Golem CLI commands non-interactively + +The `golem` CLI prompts for confirmation when it needs to apply changes such as syncing project skill files, updating dependency configurations, or recreating deployments. In non-interactive contexts (CI, scripts, coding agents) **always pass `--yes` (or `-y`) to mutating commands** so the CLI auto-confirms instead of aborting: + +```shell +golem build --yes +golem deploy --yes +golem new --yes --template +golem agent update --yes +``` + +If you see `This action requires confirmation, but the current shell is non-interactive.` (older CLI versions: `The current input device is not an interactive one, defaulting to "false"`) followed by `Failed to build application`, re-run the same command with `--yes`. + +## Documentation + +- Golem docs: https://learn.golem.cloud +- Go docs: https://go.dev/doc/ +- App manifest reference: https://learn.golem.cloud/app-manifest + diff --git a/cli/golem-cli/templates/go/common/golem.yaml b/cli/golem-cli/templates/go/common/golem.yaml new file mode 100644 index 0000000000..f544cbf0b2 --- /dev/null +++ b/cli/golem-cli/templates/go/common/golem.yaml @@ -0,0 +1,24 @@ +# golem-app-manifest-header + +manifestVersion: golem-manifest-version + +app: app-name + +version: + git: + tagPattern: "v*" + hashFallback: true + staticFallback: "v0.0.0" + +environments: + local: + server: local + componentPresets: debug + version: + git: + allowDirty: true + cloud: + server: cloud + componentPresets: release + deployment: + versionCheck: true diff --git a/cli/golem-cli/templates/go/common/metadata.json b/cli/golem-cli/templates/go/common/metadata.json new file mode 100644 index 0000000000..385bab0f72 --- /dev/null +++ b/cli/golem-cli/templates/go/common/metadata.json @@ -0,0 +1,4 @@ +{ + "type": "common", + "description": "Common template for Go Agents" +} diff --git a/cli/golem-cli/templates/go/component/component-dir/go.mod._ b/cli/golem-cli/templates/go/component/component-dir/go.mod._ new file mode 100644 index 0000000000..6d2313e855 --- /dev/null +++ b/cli/golem-cli/templates/go/component/component-dir/go.mod._ @@ -0,0 +1,19 @@ +// Each Go component is its OWN module, with go.mod in the component directory. +// +// This is required, not stylistic: componentize-go discovers the SDK's WIT by +// scanning the module and its dependencies for componentize-go.toml, and that +// scan only resolves when it runs from the module root. A single app-level +// module would fail with "failed to read path for WIT". +module component_name + +go GOLEM_GO_DEP_GO_VERSION + +require GOLEM_GO_DEP_SDK_MODULE GOLEM_GO_DEP_SDK_VERSION + +require github.com/bytecodealliance/componentize-go GOLEM_GO_DEP_COMPONENTIZE_GO_VERSION + +// componentize-go is pinned per-app through this directive rather than installed +// globally, so `go tool componentize-go` always runs the version this app was +// built against. +tool github.com/bytecodealliance/componentize-go +GOLEM_GO_DEP_SDK_REPLACE diff --git a/cli/golem-cli/templates/go/component/golem.yaml b/cli/golem-cli/templates/go/component/golem.yaml new file mode 100644 index 0000000000..8b5f84a43c --- /dev/null +++ b/cli/golem-cli/templates/go/component/golem.yaml @@ -0,0 +1,6 @@ +# golem-app-manifest-header + +components: + componentname: + dir: "componentDir" + templates: go diff --git a/cli/golem-cli/templates/go/component/metadata.json b/cli/golem-cli/templates/go/component/metadata.json new file mode 100644 index 0000000000..3b27f1d60e --- /dev/null +++ b/cli/golem-cli/templates/go/component/metadata.json @@ -0,0 +1,4 @@ +{ + "type": "component", + "description": "Go component" +} diff --git a/cli/golem-cli/templates/go/default/component-dir/counter.go b/cli/golem-cli/templates/go/default/component-dir/counter.go new file mode 100644 index 0000000000..56cf830455 --- /dev/null +++ b/cli/golem-cli/templates/go/default/component-dir/counter.go @@ -0,0 +1,52 @@ +// Counter agent in Go. +package main + +import "github.com/golemcloud/golem/sdks/go/golem" + +// CounterID holds the agent's constructor parameters, and doubles as the +// type-level identity used by typed cross-agent calls. +type CounterID struct{ Name string } + +// CounterState is the agent's private, durable state. +type CounterState struct{ value int64 } + +// AddIn is a method's parameter list: one WIT parameter per exported field. +type AddIn struct{ By int64 } + +var Counter = golem.DefineAgent[CounterID, CounterState]( + golem.Spec{ + Name: "CounterAgent", + Description: "A simple durable counter", + Mode: golem.Durable, + }, + func(id CounterID) *CounterState { return &CounterState{} }, +) + +// Method descriptors are package-level vars on purpose: the same value drives +// the published schema, the implementation below, and calls from other agents. +var ( + Increment = golem.DefineMethod[CounterID, golem.Unit, int64]( + "increment", golem.Desc("Increase the count by one")) + Add = golem.DefineMethod[CounterID, AddIn, int64]("add", golem.Desc("Add to the count")) + Value = golem.DefineMethod[CounterID, golem.Unit, int64]("value", golem.Desc("Return the current value")) +) + +func init() { + golem.Implement(Counter, Increment, func(ctx *golem.Context[CounterState], _ golem.Unit) (int64, error) { + ctx.State.value++ + return ctx.State.value, nil + }) + + golem.Implement(Counter, Add, func(ctx *golem.Context[CounterState], in AddIn) (int64, error) { + ctx.State.value += in.By + return ctx.State.value, nil + }) + + // A handler can also be an ordinary Go method, bound with a method expression. + golem.Implement(Counter, Value, golem.Bind0NoErr((*CounterState).current)) +} + +func (s *CounterState) current() int64 { return s.value } + +// The SDK wires the component exports from its own init(); main stays empty. +func main() {} diff --git a/cli/golem-cli/templates/go/default/golem.yaml b/cli/golem-cli/templates/go/default/golem.yaml new file mode 100644 index 0000000000..75e279b372 --- /dev/null +++ b/cli/golem-cli/templates/go/default/golem.yaml @@ -0,0 +1,8 @@ +# golem-app-manifest-header + +httpApi: + deployments: + local: + - subdomain: app-name # resolves to app-name.localhost:9006 by default + agents: + CounterAgent: {} diff --git a/cli/golem-cli/templates/go/default/metadata.json b/cli/golem-cli/templates/go/default/metadata.json new file mode 100644 index 0000000000..cdf6621c3c --- /dev/null +++ b/cli/golem-cli/templates/go/default/metadata.json @@ -0,0 +1,4 @@ +{ + "type": "agent", + "description": "A simple agent implementing a counter" +} diff --git a/sdks/go/examples/counter/counter.go b/sdks/go/examples/counter/counter.go index 6d18d43c18..5974ae85f4 100644 --- a/sdks/go/examples/counter/counter.go +++ b/sdks/go/examples/counter/counter.go @@ -1,7 +1,7 @@ // Package main is the canonical Golem Go agent example: a durable counter. package main -import golem "github.com/golemcloud/golem/sdks/go" +import "github.com/golemcloud/golem/sdks/go/golem" type CounterId struct{ Name string } // constructor params; also the type-level marker type CounterState struct{ count int64 } // private durable state diff --git a/sdks/go/examples/counter/counter.wasm b/sdks/go/examples/counter/counter.wasm new file mode 100644 index 0000000000000000000000000000000000000000..1427752f07e624d57ae16138bd51014037b220b9 GIT binary patch literal 3982482 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%0Dp%fW+GBJwUgzz8T`B%~`HLiA=wc@@{Rp@` zrzNS5xJSt8A98j{PfgA;&>ZWyh`np9BeIEhk8V1XFen<>5 zU~ZWhKxV*$MFUn-B~v#66=cTpbqZP8qEAGnGa^Yo@@6ftWVHc`$XU0J51F0xW zSsf~a6DN7z6x|wG*=bed%CPZ#A|*2nh?6<8Q+pa!?ArfpIisWD)E;wi!WN|)gWPNO8r@ZKY7T3p z$t>{d?rvLdwTk44rLEvqES}ugR@Po?q0Io|CROiW$y)PDTPW0GXJzvEm&bnRR}K|s z!KVx3Q}GgkU&||Q|1V3u!fiHvRoVW}LBkvr84x^5cnpC;1W7jc64n{xF){2)YO5VB zI5m~*UZrLcu}1?yrl(K9R`ej#7Vx0LV5Yk)_Crz8AZb z3GquPUk45n*Xg^wF_YlW3WFkQ#3J(}%1@GYTZfzA=v`*H-{{SJN!Qx~8N7-doLO*9 zjO|-&ikY|_Z{b@fg`=)S~86feUB$UKF?DH{ryg>550f5Q* zSe)HJxVbW~Hg}HRuyN_`Ivh3<-B);aPZG>y!$jecaENlK=ZB)Qg5o*M&7$b*ckIIy zgZUV{Pmg`Y_SS1(hk33_3ovEwfPDw^6{1?~+asH0Ey`R3fNi3ok~~^aI@KPrl@WQD zLD~m%NIN;VnVtq*-~vsljuGwviDSgr$hAd08nvAJI9}QFgY>8uD=4g*9W)-vI0!Jz zT&JU5?SVrXEvF{Lcc(GT`#Yg`c{LaeZeMNx1Nh2(_161XM_R7#qZ(H1vUjd-kQF7fdQi0ptRT z9VYb6sP5r!bVL}1JnZ`-C7 zDoawO>9}Mzgx9f==L^RlOXh(4PqpvRGZMf?5iT;|`@Oph1pzaUlKvL6;iW?IG}-q3|&_;UjTBT4+rjR6-kcr00*Y|-lgZkVBMoKmqpeW9a&GR2Fg6{ zV6W&XiNS}Y|{j%wBc|*%W0vHdp*-ad5Ef{3=YGq-c{&@otmw8p-} z#@XAv%lD#VD?}F7t0>G2>T>VT21QRGz$A`C!?kwEztURBBVRp**;JKR<$9c+8(}X- zC|n2jZvf(gOmDM2Iwgf-v?0@b)+KRpf8ju&y2zk z28CO05I%-XuXUlbhA%_2{w*!)nGSqDVF8&VOOuk<=x zCT6hX7Xu=%4oS*CF^IvubBOc~?2~JydHZ$VscoFBA{RbWzCT3dv7(dFx?e-4;74}Sb;{YW?v2t-4~XlpCt0~TCJiJ zHcTxKjo_t5y7NbBm8La~uwtRdQj2fG<2vv4y*haud1x54!5`pTsHC%xpTqW(dsSA| zTkq}tO!Z=Q545o0AILmx59qR$J?=cj3ggT}ak8y8 z!n2d2 zMv3iVYE-cH5z|Yt%v^4zPXqS8X1SFQj}wjPqV*{|Q*uIP!L4mX5KOK-*7`_q6GJJk z>yvt+*R^dzB@bp9G^786g!-5OHE$X@lq(k`67^M@vyiX3B=_#ZYNeJ!rrnbr1~QS9 z7eNmuOpf@w+1(b=8pI`7bSCPaRCk|*hnkq*4b5VOoh?3}h)Y9dY7TQ zpk$iF_AZt!QpG@a7UyI94B=?-hfTtoZR#=Y)I5gPTz3*=@Wu)o<0-eupdbP(yVA<8Ok909*4!G zrdi!}xt|gebk;d`uNOAJ(PP}FNAD)tX*x zbt0PHE#u{Fgj~>F!bcIeERA<+rL4D;O24C8HO#!b9eA zg4B{N@>wnJL(@Q9Vr_`qoylEUU1Xhi@$fWJ1x3LUXfiZ0>P1y)q$NSZocTw2-iRHR zF39Po^x4adxtWG9^oDnq1P0ZIczSChEvs6zvfPw9K#Zlqj1W_Aaa`$L7e9mMK{3M& z@6l7XsvJ-R^Zzafwp}2_gc^*E`M?fy6 z+HkGtQT!YYX_k^KKF1@_2cMHp8k{$8-pQw&I)DEB(=6WSMGF?3dFEMX4-eOq7xVLy zmz?v`mo0qxD-iGVn%9n;`?}Y^;f=rbrbWN~=JVbXmlICs7{6m??NYAL zI3ixxcdmdb?Ink1m+Ph8M6F7YAL1tK*nV{ReE0Y-*?G+-5PDCGPPih{>2PTKVNZL=y;XuyMNtP1m#dRXsQKd~nOAziA(Ke)ZDw3X>s-!sMV#MHxU$ifR z*(0(TwECuAPXy_9Tg3-{)XrgG!ZO?7J^fZR@ ze$L*YJ7BX!`LG#1Z-FA$rZ>Xvz^)-x|q;G+{cIs4~eZWl2V6 zaju~O;zo$fU>?W~CLfFSuLN;G>1G+IJ{>tnsMXjju~_^$5(3M#Lp*`nZ&xy8q6wF9 zjpW9$tT3>QTOdr$5FN$Zn++zEL34mY`-n->l4y%P&`lA72-y%qb6AvUX%VCM5C@Hu zKB&xCxezMYtiA*JCAMT3XLDk^kTth38i*cYTLlqUV$M^u61I%R(pB3iJ#9B2GZUq^ zxDc5@ahoVT08aQ9Gr9^00~AeBdd5i>)+N{$S8-7G}MnV zT{h$vp?=EgWV1+)O=jgn{qzdl;+UO%-krtl@Xl!vBLAmrl%alWDH`|c$`$MfbVwXF zE`@G^jvspS|E}nOnJYW_KOsta3w-QSC6K}xJ}bo)qVa-Ue2fmVYNU$oF+=asuaE?9ff$JMIrt-`!6wS>>)O6^neURF^TrD@a z9Y6q?l1awwHf{h}tYz{JH;c9bWU+$Dh+<87)C;E zl&6?1pm(utuZQE29#;iRVc7v+YUDtR>?hsA_$i`FimhDi-F{lx%0bOa>Wn(E`UzKDOTIAanMX{)BGbfQQI)G%yeDr<&6k5(TH@b zpf3XGy>fm**=wFJXFc)n@J0;?kLUAn7Q}wJ+Q>!W*8!u&XP@;z1hG*XPkhC)Pk zb}aAmZfz_x(mSgVLqA%V7+>BDm-1D%itt+`Ajo-(ET!L+>rTz$Y&Qn@LB+xvX+it9 zSPOaD*8snP%w*k~>oFhTHx~nx{RTu0KwL)11o#Pwt3=QnBm#BF;f)Ff7<<md5q`T0oKgo6;iuqbHlPEJ@QbZZ#P9R&3ig|johsPNv470s{=p9%4%kNMt7x$? zJdoKKB+93qyC+t#Wu(zoy+RHu0{6DiGgP{90c^Ap+fqG4lbw(zYMBY$=tWc8um*yf zai+kXBMy)I+W1^r;N-y!PKdr3fkyBKn|A~-9g)Q-e+3av+@oRd@G-Ay#Ku!6u#KW2 zA=gwwZgnF2{&ZYjbvVp;_Ae-asUl_S8Ow>AyeQkY816%v;ZlINls7ULF=U6EB^V^u zT(V}Pr62O4t!>1H{InUSG9orM zZb6gFi<(ldvwkX8@6| zu|Q&=PTs;xE@n0^m!jZ#w!kuB9Tb((h4AncEQASOc>jVDKV)s#*YH6~LFN?H($H!5MBzU<% zNJNO(Vz{bhGr*3??^r})8|3#X$pgfn(I|5e$li(;EVx>An<=*Ea-Ypwb~ZZ{KT{|) z420v6p(=|n7*earxWQXAr0EhEzeOeRn<=M-c=+tTjoo@0D4H?5#8!)4dT)k!xx2+( zI@z`|M-;0XvC7@Ls2Q0>2Y^vEOwP%+9XXm_?e#3wg-}^NF^$)GRVVl+IpAo8E=PRX z#!zkCm5fWA@djKU)Xv0lu=Uuihj}X4S`|wlrgYQpyb3U-7nG`G6IMPtXo0lHGDwqP zra_5D=8E3e_lwOrnq;#Ii7w%^ zsq_39>6mDQ=19JTEiu`}9F%~`n7uRgOT1wliLL_mIFkre3&h09R#+1^F}50=J8sxE zcSBeY5El}K6@=HVlYZeb=An7yt&wB+JXXlSQA9?9#JRoe zu0It{^(j(<(j$c)JP{t3oXIN`I`Nd!PN{F2n3yEhsL$IFrV9+LhCfreyXfD@=P)q~ zU8TsKDY>W-QDB!Tuz6vi#$++EI;Udthulk%ib2p*F?7gJVuBLDAl?8*-19Bc24z6X z+#S%waTocNMa18;@Q@qAlv>9MK@agosNgZ5nOm#6_fWB!kL_jr}M?=ZB$qeY6sfQf$hK=&KsBiizl~g5(53v$i5I zq2%6h2`1C~s>!=u`TNz z_Ip&NE6B-skf^D2EZM~$KfF2+@E#Tp?;hk2fFfP)V?l5b`LUNj9=K?YyDEC!F z1gFVaIu*8_Y56j5`J0_blyGYxi;LK4L{B1H7VGz9iHM`y!eM1;@$y{DR6*e7_U7s8 zW*DKQpy0dc)HFOS%Rqajw^^_o5D(NLVI%-kRAEOMsi4EBoL#}VE0n}p|NahLwCX#p zWjejuJGJcnl&s>s3tt$tl&6Al%0iRr{@-p(cYk=M`^~xT*?w{N@?tX=gU-fSvV}i% z34x#H1sb+A>BSw^r>yL-K4n#R8dhahU-s^>K4nz{>0y1!!p86D;FiT5f_i0f-}Qi2 zHs&Q~so*uYg)YofCkmNexY~8V&1jdQ8ARi)^mjO#ZKbOOS-jH6l1XAY4Oog-5~{#P zsoeo5kxim!{tj$(07bWdIA9b6muS*oO#u+5M7#xAx#0#M+pWsQT%)s9uGS0VW0M@6 z3dP0Ol!u7_7V_;AnSGyd)x*s_O*q?gZx}jp7QP$KhHa7!WhziQ`&`wC{n!eoW4m|> z@wpg#!U_`U&sI=@7A_)5YGDj^(n$A%@MKgmJVo{Oj-! zL%pV4N=bd0JdK%hv9mWnTi^^G`oJI(!CfpHrS<n=P#{ z-r(iZ2rT7$D2mKlP#UhyPHJxoD)B6*wivfQ3BmE(D(Kk1vnKY!XclYfT$X7SJ4`ygX<1BDkX z2jD?KmGqQ7Q4%Tm43rqA8%+gR=BD$%m2F}Kn&?T$Fx0NqDHnypZ$?DP5AzD(+v?M;?QAHy`#@fjrCSz@` z7HcU0w$_DWv%&7@C+VVnuB+CAQ6^or*9cCw8jlQ1R>{?IKbv_V-(g!iQ zv>b`(>#j?RLo5AAbjA60t%5%dnVQ*gk-`f^Fg(j&j>3mqf+ z0u*lEa{&rD{#<}4)WS__lu!bq2LA%eO%y(`T7%V-0PF0lcS?bDO8BOOWdeqVQ%-be zYT|0*bipPEdxk;0soIB8rZ=v-@E)=01-K{%9h9NaA2?ha)OsqBn{g~fbso>vk+{mS z1nh8JYLq~G+S6K5qh$0&#N%XiW=oj5jDyIP>rX=WIbrq z*x7I9EqZU5pSBTNYPlR+ik9tD}KN?dn{ft0PGWlAy?PrRaBG z^;hQVNCZV>@vNf~u-CadSI0dQj~~`S|7dwddHE4AOIC)np5)5#|I~j_tN*5y(yGJd zkb)5O$qdW z;bkSc@k2ZJRplAuoc~&$UGe@O-dT}n^hN%aJp0DQd;U>_HF(B;DOKg~h=XsL=ohka z|D|@<;L&Sw)YK|xRR#cIbc~EP;s`#jy#Ft_K+E$h1DRc7gO|KlOa3{>8e6*1-|y7- zf7V_9AqV{@9F`2hA^Q`;yEhB(+atWElnq{7UXV91Gqc?BMa^yL~yBPQYwJlwj>QM?$``K7`VSL z;O0FUS9!@@ioUltfr~phLrVtkVgnbMB#dety}wKJK9+^oa!P<4js-bL(Ap4Fm(eGZ zz;m5?T1$@tw`PXEZ4}IPQ7a!?IrJlEIETgWn*MgGz_pp7>Zf#A=QRxrw_%3&Hmo<> zuoiJxpSb7dJ9L3ion0h^zia2`f7u~JWhyWvoJbnq&yMuB;>?&coFPPrA9cWR?_}uM z#zadOAy%@YN7I=@V4hw}l`tJ0SpHy;4n&ABhe{b;C4c@Z} z@6XoXw`IDp^4;W(wE0w$tG52+ifQuj9zLYur;>c_mhY~dCL`nBC$Rb?jT{G}?MEjf zMK>eqfqlfmv4Jt=1S^eXCgP)B(k9}CO#}Owzqf&%VFN?n2OEP=#OZ`LHxZ{rcvHOQ z$TYlnc`pVp3^T%Oj?D6wyS=E*1dKK*LjQ!nH-Jwufaek5jn_SNpB^as43Q3lOtLe_ zGHH%c1g9uxP#-asRO;zay6=0vZyUx*GK}M@gK3U=Ty-czUc0=aG0YR22K8xwZ-Y9) z26Y??bt3<)_hR7B74Q)unxUG{c}e3ou(G5k;a~i{!F!Cs z3o}S1dFYZmAL|mz|2Iy;QGl$HeDu+a9-Jm;JpBqGp4DVZjFBNI#rN&%rBa^@Rte;9Z#R<*VL{!Atu9 zX>DN!>0k4b1}|?hb$B20_Xh9t3|@rTRFXSyyYi84f%h9kIyCoW=eM%>mAD##cTj_N z$>R@B_p--(F?bnNQ!5XavXNGgcu6CY=QP3l@BZH4h4L@5Bf>c<$per7@RAtaybON7?IjIf>c)=Wz5d?dMT$p(7Z&D9 zvg4cA-!t3kfuY`w9DYSZP1A#Y*VG)r07%W%?0-=pdCYs?qlZhotoKeC5A+KePd3EE z;s3t3@UXVfX)Q3y*URnma)vR!Pd<26u)k4x&4Ty1SGr#}$SF;Y{-?h;y_2!en!S;PmE`pGc)2L z8y->q4nCwP0BkASg7KOx zzXQAmuIfQBh)&t@zC`AWVUcBY$P=b4yHp>jy3acal_hKs`4CYE&L^tvY zI@+XT%mIC24rtV{Am$>ib)%QJWq%Q|!kuVoGiMph;PYayX>0#N)=WNnWtwBCleZoj z+9kPK8$y3eG96s%MU69$N(Ucn+rcKUWnismEr;MTFJL@rUAen{Cy~2`C0pb63a@Dd zu@)6b5M~irPnfY;Z{1B0B*1Lnl^~lGW7Piy(U*{6>Cw^eSw^+aU^W^qNeDs zln&bC_FAuHU^Q6Fo4w8p7;Y~x)UF`qtC8g>V0uM+D!#$nF-)`m)|7N|c)Htnd2vJZ zavAryG`z(t+JOEZ6~`grcjqeoo%A+X%7!i8=p~JU|1XHi^4Qxa5vx|?lY+;Ga~CqTRJ@rnlj-*C|FN%yu~B^qKWuk~lR z!h5}>;q6pJaoGvw-!bDn0)GT#3dH7!l3!fqknQa?U}*nbCqcNrtEN7h68`WOBzm@zIhy+e$gu#Os_*F$LRz9-f()Z;S{#- zN-{%aX33WOTH(NINRrz|Un39Hi1Y|~^sC#G_E)?sn+C*cR*;1$x}lmpB46|3HVv;5 z#Ei?6AM%Pe&PgmGodIo-{FpanNM-|Rp4{XP_`Vl6B%g`q zCxGN1ctsn~0%D;(;qJ>-YUO-*+)Emg>3kRm$^Yq<45l+s$&vg+e{V=0G9;gda;*vX z$6n8HN)JaGr%iU-|MKF7Q#L;VoIc?d4gUEYbbFlsG*^jU5B8R|693Fg8ct7P^X>P! z|Mp4-6M|V&IDOLJ8&2mLPT}CFB(sDkUq;25fvc5drbxv|GFFzZ>)^A7{fX| z9~E&*i^p!La%38iRbJe%euCj)9O+`USF{lxPqehh`kGv&=8+S}$sDsbkrG zd$h0fN(K}iE>6np{k@@mz|ej)%C#ot4PMWXdJK_Dx0Phn$+$r;^5TY6Ha`JU-slw# z{-ZeP_DH=rSLsOUE$?)_#7i1Zk6`odaeAp&GMMQ9ahz`Q_l8phz{ZCn{$m@&<7Jj&uQi#3I-y32NF~mNnsoeEm&XB_Q z6ByqOUeOS95Gp1=YdgMo<|;kA37U8LdxILzr#4G#i+E$;qF_$Kv_UV^NowW5C(O~6cc#DBD}G7|wF?y;zqk8) zL&bDM1+rnZLB;#Lo}mJsH`%H_;%pU0eGRE9+P$`W3x*5!I00PT;S~)RQ;Tp>urGbU zYZ@}9G$G@I{@#$Gez``$T{G&J+c0&UR6Uj9>_2#=kh~|C4g-L+aP4f&xOQaC?(_i5 z5wcq*udB)lJFXu_;XzxY-?S;#adjg$W;mD9s68ZVRP>i-Lm$_8MZ-Clp_9>Ce{Yy; zUUBREy>&bb^^-0C^?dI)q}Ym1k@a55I>mBJbvo+rty8WhhA;K^h9sf+;+!;1 zNFdA^<@z#j>>}kR9+iFLbM__jNoa6EK@?J3YKPkZtg9K^mFW2O}zJPIcQ zcxpZD<~Vr7tW70rlgmiH1D@PTgN+XREebnBx+Fb8%09hIpkSH;KI9P;^tFw632l2U zh_20n%-X!f`?0l2jVO#WtWBOQJzm!41-3S~l|^Yg87~kohDD2$fpAviCo(6$vndVv4pz2QYU$}EqU)VdbvYuxd*86#2Jzqwb>;y@<{NeuJEQT zk<$RiVMCCyF_e{e-yk)e{HCLwv1S4&&#O3f!&G!C+7C7~m+$nZY%Zx?*$`yzn7g3>9J0dEO-f2_W(mOF6-cmRq}KFN{_LTq zn|)?2k<1}NBzE{!7W{y7zW|$aJzwy*cvD}UE<4S^(iA{2j@onEVVVQz8U=JiZ$kWfV;51B&^d8nK`z9&o$Q5ojV_-P~s?mR`^ z-0t1j8l(`qU;K2;o3b@H3u~yEM=8NMM&Ivs3_A#WM4dpGhMjF$)^Uf|GwgKb`oeH? z^*)%ZC;4hQ;=N5+{dzmBj=M|!gLh+CrMk6WSp7$D%CIU20b_g^jRvPyI%ES0E0|cr zkuA`dWBNnh&YkI`MMnH!m0`>8tJIl;vfQoe+Q+7jo6`_7<;)V*Go)0WA|Znqtx1X7 z3#7y=Gg2a_uD(4;iHw3y(f9x3?oHtBuBv;v z*4oC_w&`p8{&}^vd3~?%@rL%LErCPsO>&bkL;@H_!JV zSfEbS`t<+(uC?}Fzq5b8b8>^U@BjH9H20j}Z;xxQz2?1kpo_%r6b)9kV^i-|*^zoh z?)nX3lEi!J6y9hgVcw|BzR#b!A$zL=JDHEOJVhn5x5E^hF*&e&9oi}mmPOr%>Cw?{v zhn-c`<#tt>`$k`ef+WdIJ)WUaL>CG(Xc7yIdp&CTaFn?DwATBywksl`X{*M+m|hEY z=T?NgVOL>D)@bKrqq#9^k`jlTLm`JDLj|}Ui-{0Uz7!Wucu&B0;YxvIknfllhhERmHm^qZZmjnz#adp{*^=99?G(iFtdChIcG5E+FDC4x zL7fL-Dcu3*muC$YVrZbrcX+}wjEbdHCuN3dS(u9_JjNi#kL8lNf_u%*Ff8Xj9P86` zP0L0HTJNIOp0;LmqT=x~WC8vbM?*t$@y@DC+HuZi@YCAMbPUTOLyCyXTlogEiPh2u zzV~P2@q1s^jNh@N(1{48jn&iP2Yd|vqn?edp2kO2F_s<77Out|crSqT!7tJQzewx+ z!g^8$dARViny~|Zlh&oh0r@S>)oDM#hlzdJRlPYdJz8%)NKnw!Rs_Wj1yC5s(8UWq zbx;chlZegNO4gx zOs61p`CFko+9$Bgeu>Y)Q=|1NvMAekc|#mz`mp{0V_G1K6WCFhfK4=vU{(XhqUJhp z_Juz6f{*mFs*e}?w6Q7Bsxz9|y5TqsM3KR30cOOa-Zcyyg{X*S0x)RX(UnqRv`v-B z_|Tq`^B&sN=WhMcEkA!?id&W}U?JeRHPRHKX$_>s7^tu(k(5L(a0d5~PwAT# z;oG#k2I+|3RA#cK0Mxv>F=dyZDYQm|tX^1I+NzGGe45nJK&&VpFK+fF*R1UJo{ZYy znzAr`!8Yy(`64@x_$P#bUxX0wOGH(oX2e$cQXv_@XB7#fJUKWtco3-wB)WbJ)J*>JN?F7dxfv1oG!a-hrw+^_gX$_$c$K?|h#MIgm50x5nGNb!q6ieE@I zrItYoMnXO|3OsP`2HOgJMpJDunwfh(Alv^%2B%`+m4F zYd(LmF>8K5%$PO5zlg|S<%fk?^XVahS@XxCxmmC%{7%}}(Yd}}p6lynxxQYS>+8r| zUn8-vm*o38%KPf)Mgy92AIpAQWLr;Zm%4M(#5b2*9Az1U-@s6|V?W?`d~Qz1<>qv3 zZcfMK<}?oj4)7Qw=`h%g=H}XT0>an8aE0F~xxP-$^>tFNuM=~9osjG66}i6V=lU9t zeHGw0IScq*Q-B|RNr|M2rXnw_%2k?zE=dd`INL~dfEh)F>F)n41Mf2hv_|LGi_w3;yRTQiT-q00=hHA35a3ST|Q^wvb9#^dlwW>p(et{Ne^L{T*tTD^Q z5h=nJq{rfL=3y=4vXR@xALN1Y2lv2=n+CcAUGeQQ9O$o<)EGn<*)aXpam zg@T1_tyh1b60KZi7Z*ySN#~b%ZR;F{(pt8{Vi20mzN{vcAC{`@Jp6xW<*i4p$>3?p z>Z@llx((jGjZQrICD%xmjc%jYj(bBv)1D1zHhFdHob;s(G-@ik?0|h*T5CqN_w^SD zc6uP{g_GQ317cQj7=LK;q0uL#6vqI&m~XZQEV0wlh<2>P&=<`&sb)CUjx`K;tU<+G z41d|~kLYzvQ3wf7B=I*@oMw39*E&{#0($h5h8jjxT8qewrgu;AQYAANEelx&vYkIp z-Ae0xbY`4=Y5ulG5}*)*fC1`#F0}TFk%>CWWbBz`shuwDG{{bp-ovbl0YX0%bL^zt zen=3og<-yGs-b3FG<>0Yh)Ke%*x)4k?L$A#XfE?n8%z;wi9QG{{)Nyso--s%R&F|` z>A7TV;YiesJI5+9;OSVyXl$6$5r#b?EivCjA7h26Rrg6g@x#%P+=tHLOf;)ZJd|Ua zcvvxkhXwH6=e5!2Wp;cT%AzhOBbgLXBDzLF8Ghvr=Q3a3fN~fSgCJbY!A}atnXH?v z(&FMOAvR3V3LR1)mhVfGh1lc+wuMkr%hD{N3_iyjyo%karuR-%{EsheKh^uOo>THNZ4{%BqRdEqlA|F zpl>S-TEoR;(1A7p)tWdzz z6$qeDMR5z5L7)i=s;vOsD)Z$uFydJz8ygFpy{PXUa-b zR0b2}KO-0L-(kF!Uj}3tI^^vKtJ;ZyycsqSijpEKEdF>9!eak^`V~Pa<`HA4 z;qwAyXdd*}>-Cv)5khf*rupfPMfWCHL@!Qjw@QH^IKZPq9+{QxSjjL6l^C?JqiPE) z*=_+;@-{@rWSee$szS6VG_|VG6kId{YYJ&n1q#DVR=?1qyeJK7rf%Ut*m|oO+a?kl za3DwOf>&1}0+Q&t8SnNn4ICot&Wk6c9t#WN+FGw?Ge z91xOJjnD{O8!_3yeyW4?jzqdedpQtpNy5u6_c1(K75$90uw*5SF;FJP+UEJ;MsLIB z0j2@!Mu3agl&)0Wc6 zxlC{aSwr`50&MUjxWWA+Mh4*x7;YDlU`Mj48ROC#j+)&_f(|R&v4Ww41;r%grn{6I zA>J6t2l19|o1)yBE_GSDF_yZ%)|Zv83lr%p=O9E2)4iY+fu9Vt4hC{ixM&Vs(5#V- z43LMw9?>6J#@HYSJKDgNN==D7pw2@!Kmi{3br61v%on4-xhqp`=PDoV*AKbwinS>|RjzRN2+(6_Ke<9}^56bHAnGO6h^1ghBESeU!d1?55XnMj zbl^b;Ay{P?_n!qz1+5i~Q91nZBXAGykw?CSpQDbFRCLYJ(Xns?+6gC~$W(Nv;K%|# z3z(74^U?9nGkkdM8E-t3i_U&MZV%GNH+K@icKgH07WoZsk=-Fx+uks$v{uVR~o zRaj6kIMwV|l@(_~kHa$DnANldnOT?e**U`cQez8*X1G zwGpnSm0!ccxbe?^W-NTTbj^sIOuBxtR35|cmQ;Qw7MEnlu`T2zsAoq=VTNxrr-1~< zX-~)`P|uEx!(>w9e9y=PP@~5L)|8aE+*1HH(+1euR0`DPePzXYMcpKI7togmxg6;R zoyK6}dRkyz6=OaNqY{p{0a_>7%yRsJEP6ivz%{!Je`vHpGpAMiK&XECCm zi24NPQvAVGHU!~`L^q9p-Q~@GUz_FGq}Y;3gce1WUp4T{4g*61O3( zN$TfuK~zkT=V!RTw&P!c0xA*t7I&IIHTYfya~K3=i|nX!nmQy7c02BEuVcxC*jZW_P~_yd9$|PUnbDfXbjd~%IM9fhyn=u1pTYEp5+fFC*bSC z_WFUhs2hPL;WhX1u|c_61@WNXAP<(XjP97+kWtyLR`%WYjCb;QMW}+FOTobl1nh|E zRj}b39I74@DI4n#y%{3~)TkpIu}EP&kre!lEy^Jh_iTv|(Z@}aq4ItcEC43;%P*UMG#)g!g+a{hKjP>BQn&uB$Cc$Kz zH7?gmeWJ@HuVs^id{qoaEIbof0I)}PYF?3?x;RR4wq$HV)cCk$=t*u^z=?iYIU1OB z=dyXjf^AtiwIz-d3W8-DIDcW4DY%Y5YkV*rHs){^iahLqWKq@@>Zr1jH`zk^NNTP3 zTJJ~?AU{NPvTv690%Z21D*RL-ugg&n*qR}%Q(ULz2%zesVD3z$XE_Kzp%Ej%!EDFH z&l)L=2iaG(W2K)5y9JAG-|>UA=!_RNlbt$98qr!ufmxg%#tPMBRFf0uLILWe0uU6z zeyGDipRI!oaLb9F3ao3^#MDfASu6;|t`SziCIS*tf&-f^$c`I)Y_<)6Q52VOV_?60 zX)`RDg7m-;!m>(XakV${3xx%b6SXEvkq*m0j7VW4?@bI(3}XpWT;olCUz=1Nw8?3U z1Tf5*gJ05XD9i^27Q#V{@*@~8jMg--Rn2JqNDZh|D@7$B&H%86ChG1u@<4(k3}TE? z5V)l(Jzlf29c!2e7XfKG`5+~o*xCIUE_X~_6m5~8^lOt$U%!qMe0AZ|P5X;@pls(? z!+CCQOr<)$nWud$b}&$^y(~98{Inb#8Z)~e*FnEZr}|Yo1*C_8fAt(puV7G6IZSJl z{11>lfRHuwzl4r-*@L?h_=^2M_O)>A1% z3%XN+-3f$9nR6_&hc&!pIj|K(iac#d~_{IH&VXUx!Ftqb;k!?@6 zV?$kGXbU5(Gr*6qjPMijw?Jf9dDC_g?ta1Y!+CtHPX=i6FQ{lkaFRj|)~5>veKdio z?A$;>Ppgi@n^m96+BH$TNHXY?Zhr(<<;9ocb`;8j5ZLwyECLFwil;CIkrJfJiU5wo zFaQ(VgDsq%Mla|gf2#QcOW~J$-2uUw zJOn$8O1>>iAQ*=-I|#<&oe;#JV7i($1TXFfJ?s?}su&4eWU4EXu*Gcy=jkl%w^aQHiED)s9Wr1T~CfAr!S?(P1e*!*wT`vPuWCSCe+u z6xuQWoC*NsWS{(gY zYC*o#s~XJofIoIGjctfW2XG`O4CRkLi}&j@u~PpQ#mZE3+u*%)FkzG%2P=Y5(;P14 z#ZAJPHsC(-Y6TJf+5OS>ge(FTg)mB75zvtF0RVm%RD3)^McNEn3!@(~4GCGTqnQmhViHnIvoI<()zRH_=Osz2-W>D?7U@fTDNj{3aZ3TVtJXk%0{JEkj zacnF{RWXbsDpJ7yKK#F562@tP3Dpq^XZ&?5iIn&y8Y6Wi*}pWdK}`$|(unSw zSrkyzq9B9Js>x1R@3Sn~2~pc^phxPcHkxtUB5=yMyz(f2sNJBouuPA1*k10v{*#(= zMW*%w?-fAtI~*+n#u1%3!lE}iyL}JD^}s2!0vO$my4o-_yUG*|CaI)8)sA%xCTjXqXoy^85dv&LlmR63oyq2`4$#IC zg#t&6ZQ9ZgijAkRl9v=Z?_eifPA*Rl7vf6j!l?AiXJ5={b#=ue?SSJClD z++5j?O+BZQgKm%!m5E3vA)*7eX`|eONn5MEE!%8_XgRF12Or53sbi9+)_PM$q?}$} zRYEUSW9~&VpGzPnBvZj)v(xc7f=st#9W$?zBDWgF4JyQQy0;+;yAx(8EH1@X$_i+! z%g+3HGE~ZPk-9_IPPWj>cC27qh!q$sLu+d-ll$!`lY-%)N6@+w6)0^22t}XQZnzg! z$RH*##2boH9VGc&ywXm>ai@}in`Sk8>fIsr7N|r9?;3Yc#J;sY^p4=KPsiMEtaV^g zYki^CuZkS)HFS!!D#LbgXEw+Y>zKW{CvtqXH}O`|Eyw}<*e8NaC&S$*g2W1C2tqNO zB3&=^NE;CJFbshaoY*k0NZO0Fy5Qg1cClz^J?6cY0|rFvK*XL8#$DrNhKlGSGl7V`ph0WU7& z40Q|vEGD=zTANo>=OLq@5C)7*?b~yW*PB+im}(!`!{CI`KRzs3f~ZZ1U?qRkBb4jC zDI0>8m(WJ#HFWTZ`r!k>{gq+h7i)ens_qipK&-WxT8uf{{%K9K>2( zFC{^(sIvX;^tdBZEYd*QyM4e4NIxNYvZ3hjVKPOfe4KsvKMyy5FtC zsjS5ESO6Q#eRN6zF3gtVlhDZwnG5pUXHa+n)Yw;3(NHeK~q_;9I>=Zm%|C&aObk! zxE$_Vw&+%bwj!*xJEm_+F#RPy)0baU<%yU&w(_ujbzeDq@6T;QyH@2mj@zPga`9 z=?CRh`rz?cL_DGec(>bt04w7-CE$>?`y{%Qhk8!ObTk%?yyP@)fULdc=~UymvK;~Z zi@Ipmj1_dceU-nzTWS6Rq{5g2cu5%88mH1a0)3p4pGKW0;TXGnvJmxb*G3DN5OrNl z=S&#(%XB=~d4FFNT5{k?vfxG1gZX@EN66+(!SoAhTQ_=JMzAGnFZ=T5e6?35WPWp@ z7UTGK69r_MP~3i!ECBY++G=nzJ?S4&h3Ghn=^r;F?D*IYpx)|T*gXJzpH2NdPytRS zm3nUTN_GdpF{~7DGnvKhUfM3jn#a;l^%Sg-P%i8?>td{9+*|#m0xr47_{Rb}7rX>R$b zSF$dYdKX~*F)wJarrB^Gu-@sFtaVXXqZI%N5))X{oV5>Ff5IyntVKV}{^gE5PNjE* zKTxP8hWhN=JtgV~3$zP;jRW)!?vf)z9 zLZVxoDnb_9mz79adXR`GiB88^qF281Onere^{Q9D`qgKjtzuV}Wv_V+PZYf#XNnfR z@z>t;>u>&z-(38b-}>#h{?70I-jd({cUX8;KwtFn&u~6wXeA5_cjVzx64KqQ8@SPt{>FM$QQ?Z`LHbI6Hhst1yILgs9(^8oPKB z3ywcIuF5XX7uw5johL~Wl6;j9-Hz{Rd*`bU5Y;zVsj)FkU)->IbO0L91(0_+8k`pD zYwAt#r(ptb;SA{=JYP;J?5d9q==5KXmy4BH?Nn(@#l4?IyCat&wL4ztCTV-QvfBg^efRAODs)|vA6gD4NKoBpqvmlzc^e0$>T7ZMY2q>S4y0rSFTa))!F53 z-u9KcOm8S#ChAtNXX8A*1wARx$G3PB2EW%^L4ax)nLDKtzBfdVp<4Djff^Qd5fHy` zH3A!m3n$>sYq9-TpJ6CtoD>77oAUqPM%J??j+;pyA|7F+HVV?_BagGdY6w2bD_@QG_{c4| zj0!BeS|r|c83bct9j3$RlFouLj6lvez7qZN5TcHc&UJ*c;t&qt%WM&^9%}ItrB?|+ zc6&x+&5dv41Hms-&En{RSHWu^C5-!g=ysAo4;|)C1=zVBpY8{|&ZTPngmw(Ej&Q zbvi9xCtS^b*z=VB$Gw(K>m<~|Q7=*)fd>Qj_k0DNM^hrF`;$Gp%R93@djk6+WhT|B#tZEQJ; zKQ9;?G(*W}Sc7^s&Zf8I2;A{Q%|YWf4T!LfWHfSECriv}T0AKLgJ)%U7?Z->jG}Iw-MLAut6I_{lMoy}dXJS%%N_B~taGH|5 z|L-}&d4NesmGuce(5tk71)DkKK%BTqlxX?DzUBk_yber{ze22F=Xt3jH<-;hFWZuy zkh>1cTx$-71t5|mmZ$YCjsqGt$Bf@t0oa+9sy@kAl8Y{SsX4SjmB<$o5z1vI@}^W~ z`nJzumCk``w`4EMGxndbTg_94t_YbRR;e9X&L9h?2P#KD2M>YT&>U*t@gDbRkJQO! z^J$Nr{OAcUZn%x&Y69OZdxLkKoLxbb%a-i9JDwJsA}G3kx6TQDJH_SW*y|13IC#l$ z*KvH$i`zIfO&*$F&h|I!T`)aH;TS;_U>(SEKt4c_avW&BS}1=&SmVBk?4_fF*~8Zl zBaOrl`3M$(no4@ydn)S5p+%eo%tldm$Ie*xP}m(C5MV?$T*8bgSrZnp0VMDo%y} zX!&yvStFI=)Z*GL2L6EM0KlYwZK4zC$tM7KsCU7T#269t!mu(Z*fKMo)fjp=z3{}P`~2ux(3^Jg(; zE4KLsB~JuF&~!-cME*Aca~soA1kM1di$4q-%2K;kv+w>azp^JJ>$9pIJ1>ChdIs9g z&TS6R1$TKBk%yX-tDnh$HST-p067QS1*W$qFy)@_8BG%_7-3`uf_4O9f5`-q7&x?k zOP}~M4$|l~7Ej8~cv%Z4q8X3z3=1l|>x{o;9IpkSBgg?~8=W)o3RlIz zfYz}L#g5g#`!MtT?r-Y0{B|pT2Nun*-~$vghp%MO3HjV;+R7QWFuE@Iv^A`_8KLOq zXob)_Y`{dAUD=Km44+tGL1mJMyWvKhsfs3lJYXZD8d^X~7C>H3abWea{}47wFb3JA zsZT5DH)=Smyqm4M&sBI!<1kixIU5ek3Hg9Kk3Gysx~bEur$XohBY(>_T>43Yn+`tl zqUh_T6t3xUqWwiPC-j|NITQm!{f;0^%rptnMqc3n!tFX#O_IQqls)IT-YeQ1H4Org z%*KxUBGjnTgrk#D<@BFm#42!hN@7S99EM?#Kw;*XITgU?F(qDq#XC)TMV3CnYY5>N zQo=#GrJ~tNQDl(eGi+uEi!cX313jm@R7#x+L1=&q?xAQ(JTDz5G0G?|Aj!2Y2_OZ0 zAvlcS586LGzy4SHZ1PT=t3Do75i<6J5|VV4S2F%dCr%l?x!OzS9XL`4^%gtWN znkN@1TbEnBq%}`@&e!Eue{bs|5=*2?$c-F;W$Qu#E&F7=-yUrLwIr0yAlp9=oqizVQEn(foNO`9SUyu|;D2c!vSgLNJLN&Wu5P z!I>f6ILJ!}Ulj7qo1+D(+vsXJ`sn89*qG#QJMOsSjz9kR@%i&#aRT$V0iazt)m;Jh z#;F!??RqC7oodHQMify=1A%F}hl_;qzg@yTi&ZhOvT);d<-KIpb8ARP#5$W0cPyDt zU_=sw4`Wa!unS0JVUUpAo+n#ehzPH=D0C9|D+|4x3;-bgXEr!R!z5a2(mpEfGn7zF zTG=2@DWTVF`4lfUY>_daVD;)#QkGE`jO*yn;6swK7kJtERu(!Z`6jEw>V&cYpOl4r z39^ycbC%#r?QB@APIPj>=p>^WiDoW7J&v`JIBl#Sg9T@S$)m}?96!%gsd$i840aZ? zt!d{a>g8bgvt-@+BxoB3*=XuMmJ#6z*zPWX?O2A5FR0v86-j_5@?#{DJbUafVVb~v zk^P05La?SHS6x)0OOvQ_=t~NDK<+Daj93s_4Hu5}{|y~N1KCauRT6X4DBuFW2N>}L ztbEFbk#dp@9NFF)%{d}hNl^+egXGqY>^vmZ0dJSJq4$KcOG6$t=ZI;X4{>Qi#$#-s zq`d$JB+YV(wz&{9G&W!)Z#_!Wx-}c;RB;Up4V)?ykn`(!@QCt){DEZ9U)2_mlGXt? zlC(+ufhBHXlU7jm)W|0*NX9lMexkr6xnj1+1_g#=*3M===e>PeLwR8kk~}6nKLxOT zfo)3?W00E!pFi)FZK#wTP)_=qApV?FJ-ziMHlg{K;LpIkSwxtO>ei`IJb;$cZjzsF`Z$RoHXDL#bnv=w8(9a_;7 z-r;w3a+E)04}_C<(y9i5gqHTz>RxYkueJ)Uwqp&9Am%_%niybTMiW)-{Ujxox&LO8 zN^MgAgT(S@mE=Q-#iSKjS#lq}L78f^h%87v3z5a+LM+iNg_W^+^N?%y*v=?i0IG|) zvON)3&Op(9iYu{_ArvajR$M7o?JBMmi=vl(i7Ofp>*C6(o#G0RV@dYhpm2ZYiW1+Q zNGG@>0pS>wK`vI~z;}rGkbbf~8xVZkr|I+hL^%y2%`b7m!l2dqXRRf>>15Q}e08oC zqX%et=+7R|=w9*8oJbnO$X>`PNPGyX2!FvN`avGSL$J@cWhY{T$zg_6(7L6a!skSu z?ba&TXVZ{!m~&THxY;`-VdLnNU4c^t3isz@*-WR?%rAvoAN z3*V2W$N+JUJ;B@6phVD!5&@pgr9^gN=ANFQVR^V+@gfwxUiucLo{9gnl$V^@MzqqPn;>;dQ zpFPO<98RC}F&W>N8==U~pD*8+6ts}S3Vi=d-j{*(kPf~t72%ibWM)py2Q|{f9y&5tljwLjF0moILK8EFeV9E%_*ti_=O^ z6e_v7<>`NGAqL{h+bYRN3@(sg!UygmdWf{m!Is3Ianf4K;85=Yuwguq=PVR;PFCv_1a zP645TBs2>Vf+Z=vl!y=v6r>!|AwuvWL=Lifxj*3e7gB^^G~aPuL!gB=@B#18777L+ zUTF>)0m4>J;%JEZfI`tIAT44@Af=?kOA=o9L2uZE2HF?E>P+cofRhdue@>#+11w)< zp+%I-fWcxiqvS;q#jJ0`;t(EgJwOHpGtr=ig+V-ugHcI9k8j3-2_Iq~OOtVa!pC{L zDwd31qL@IqLtM*Q0ES`slR(eePr?L#i4&uZNd$iG&geg*`{Lxh<>f&ikx5fWc1lyb zICqm~5{rrmT68GQQc8Nr`!Xqs)*_jHZz)N{F-R|6q$CldBpEmx+dnDkvpy!1lFZ8V z{H3HX6JoFx6{MsucwdJ8!yQtRRD>K`UYRx;d2rP)eD#j0I;Sy$f6z6?1y``jT7onDZJmVy&N&dFJG zBz_wdK0CNz&G``tz^NctIUxyZJwpv904Y{l^VbDy&OfmhZ9u)PInS^dC9v68b4o?A zTM9seD7Fu4&Ofr(S%_kH7TWG6iqS?hJ5h`!yNF^Gc?zN!9|lp3#+MgV6k~%Oq8O|r z>fTAMIVy^&HK!no6|FfD$Df}l1}f{;9QZeYXKKcQm9b0|+gVtsa#3tCg3W20e~<`J zl*Ll(%_qIt4na&jE@pV51O{}|5o0%)Ahwu-7;RyB@nn~`XJq4O6HoL4oCf0Obbw+i zq3mYY(_#LIg`e!qN3x8Z2@Y-*6U2cfwye=1$84aKy|s|yQh@&w0Agr1JtvHO0zIP{m?7T-T?LELM4~S zo*jlfHrpFpf)8x}{zC3rRwj4JZNbdtC0D+Plk6bI^x$*op)@mv7}J;8=jAVFY>#{- zz(<^B^qTR*NT2a>MwE1sv_70jS|^|=&PK@z;x01KR6AC({eVidm9&agyY#ZIyqA4R zT4dIFyVH0gX_3Bwqv9Mg66W;j4QFIv$0NjoY=}u=;Hi-kP?m8Jia{46czP@^O=3)P z;KsQln=CHm9J`c+D>Z~%{C$nWq08M`vSQ3;c)G7tAFEHnrWmvbm3RuqoC9L&kQCkrA`zNcVZ$#*xT%J2(=BXz~Bd zy3r4KqsEZL#Im5W+}t)ifX=g4#16IL34-&nFjT%sj4`?#4*w5%9~*SzsrduKQ6Yut zN4=~85H6qD(X~&MR8_hbwhm5yE~p%DGC@A-=6s_v2(Z%wjq;Lip){-xH)IB4ZR3Nn zr8Ly>^OO!~a|x925k8ocl0uM$2?1`l3BKsUfmA^Ee8Fx9=U03PmY0ChyZ~mh55MZ= zY^YXF$N+DQ5yK_FM53oVD9|mGAV<@7gI`KzKN~LNkq~vD??h zZ~<-1nj+xVD^;=|tw)Zq(`ywA$TC;@5MUzyQZDT_OUc;4LlHT#9T5O4dy$C>Ax376 z(ONEL|9EEck%M>*Jj`%$rMw0Tf{ZE7A-we{dyKq|NT-fPmNx}PAUrkO6>>^ArmSo4 z3{$gA2+;64*y^@yVbm$g?p?_?ufhC7Bo{NG02Q*WdGVfTde>WyG(nD~->R+adOSK}mkOvDml~Fxcee%o-!VWzi`bqHhdyyf$3OcJn}h zjxD?#iO_>aofGGIKxi;sCeF8@!`Tj*xcn>TbWmTJdo_FZJGf*gK=H*W4&iH|AAFs|WHudLj)KCpW*>LDeL#+rqBdo0x|w zinatbOo6AF2ySKO|X zK+ezXxzb&x_Yuk*CuKMBfmo6;`t1CvJW2MUUE@7mqbCL>cChTQkD}biyB{eP^Y2gv zpKzwFJ2LG`kV(#Q4EItLR<>gu=K^F{Gu4pQh4e!dym^o`#asePQe=I&{Vw$Gq@FEp z72Cte3K3elz<59l1V#C|0h)#c4#KtG+(wPORSqExrBd^8`&iH;THEFpbfbk^F%fSTr{WuzV#?61khD%hZv6gRHxdp zKeLx9Cmvx7VnbraWo#;(K9kTk?o&OeiDpMYSYp_IP2mY5o$V;(N?z;zSgvFqgr+(n z)8U9AYLo0y_Y@ z;Uo}_0`VYF&)Z?Y7=~ID0?L3i)s7VmNE+Erkqt*{Y9PUNm_}7(V?)H zn3FbTM{C*@YNsOHZi&hkHh%ohb0*s6p(sevK{BpN)>WVo&)9$v*Ug(wWgS6HC6 zpbX=&i{5ivK1)E_)Q#R$;pqEAeRUpgu3kVkS(~g+>SoFR3v4+;&?Lk!*RLD0^C^~G3Awz+c9ZkjLf1)MYLt;l+0vMuHSO4+ll3~T zp5Jf)m^Z&%d4NO`zi4%{ZxtRPs(2NmD*ChG83rNabMO>`mYV~sR*m891>w<4R%gu_ zNM`o?euT*aBVd;~7ftgEOuttifIYu$OLOonp`P6OWA*IxnT%~-yqq^p)w5G(vZHa@ z3g3>xi(j6H5aew0wTN=AXD7~N&sC=`*m45u4L1Ak-`pJdpuXctEeS`)tLETMH@_D9 z6`$?r-n`kqzH0I&49R{}Q0Q%BSQKTz{^Mf_=oKX!F~YU`U;Fe~Kl?>?@)IAs`R3tY zO5`f~vEvFwt-|Esc%Y$JLZySRm(tuiQHPitE*8@u!$2HK4cqNKf-KgNG9cR>2s9xo zsL~_3bNDluPA2rNsz|KINEC1|->fU!-w25K360U^V4@5t@?bu-M9Jk^LSMhh$pt%Z zWGG>BUG{)Z3s-r3R=XB5R$2~wy{z!?5+%p05G(L8wLxLee zsc{CC7uSiY`q0Dpd9i)u9O}pj0t1f3S=1ylz``TDlcdK3CK%&_zc(K0AXd>V&=RA` ziE1laYDz2Q!sg#u-??T$vwd1&rv>iut49`|#*Ya$JQlXMtPcAE|s=Wk}a3NJ7(HPV) z&6b5N!=N1>AA=$G6^=+=RcQPeTwu|cZ8!#lYBe#nG0FXr?Oav3E&h71YxzgU1X$xL z9yHDd`-EcHThv+z+%cMCX zA?FaiXdiyrP)p*#=z*0{d;k2o%zlzI_U?acp?@|RV!*>Vbl;Z+erJzftmcU@RN-8S zkb8%BV)!SyDNG;*X(mvKPtsa$DnXebsY+$2yS&jyDil2q)J$c7a!~#WDala*(HRG! z37H91WZ5UX&pX8@i7T?cn2VqaC@J?Dc=_mn-~?QZ$oZDc?mi!g%?@WNba#yn5ZRDH z&UinYsj)ex*Juuk%NM6{B^r|_b;Tr}H2t%^vu1zSb*}T3;*F5+hA^#pU^0 zFG*^BqfpEJ%lA?53vx-B^ez^Kmsa#st(|N_9h&YOVBgFP^@5^ zi4~yR2#FB&onPfjVc@4`SRTXqVisDoVoD7blgiYZeI(t~)5IvpRz&*AWxWk;Hz?X8 z!De>h1!$|jLXr$X)D|-YO<_>&wCsY)h&X4-?O;v={l#u;;tvSa2<#&L;??8BaqKqM zSuBeo0wW(|s80Xi(T?-A9ikUTX3u$UZQER`{d?7`yy^o=0M+Ht1a(2L@SWO-IWnkO z5^7^{t2T_%oIF}27>`SesI0z=;%qP%)F$~~hkc}{(c`Ir6}HGa)CnCq)q2UhYtSl) z`%#=VgJ}wx>2_@YCYNH%6km~BKgXE_Gx+|_7`%j36RhpodT@rL+J))yWL+JmQZonU)`vrg~HVsX&0Ot|W#90lehvEYIA z>gozi@+%uxlUyE%8x%E)ORD2J&d;=e6yR-u5bDQj6S-Z6pK8I-2#DCIH?+PMt>&1@%>K9dV z9|By#{b(f`S(heLm}>t#0j=7dmtqRb6f5}^6q9pV#xG$qjBX;s(72K^rUqSibz#pdlcZsJ9jgb9>Hn>GY6C}Rcf{Z?Z&R~K$ z@QDnRZuJhXx50t4S%E{8$R{n<%ZE)Z5XULM3v_njI4XYtJY~}j!;|TTaqnxoy2&3L z%rSy;Nl4j4_!roCtRf?JKE)!sz||fhCo>^B!WKb81POwgZ3vY#L}6vSEh)fYcCkGc zlDaIY{4t~(Bsi$^z@QkqMFD9Y17xsx6oxP?6JvGO?xRs)4DT3}f{HK{O0`I%nMTmO z=?g(sIs=f`7sdgZo5m#B=pd>L^{q>0&jT?dnF`}IlI6Y3o3ZqnEFCOn;%*}=8O2aU zBuB&I^+`r^g*RhR;hdn|9hMCv?~%+4wu?Sglb|>Xd1?XE;|JX2q()IVlV2T(c&&Hw zL}OkBN+c_VkrLl%P;+^TePJb|f^(zSccQI2Bu0jYg~Z&rm3H$-K-Rqdu*AF; zT8adoEyW*fDgIzf_M`0bbz8I?;ld14YyT}itJ`#YlH?0pF;uXL#k!URGWT1i7f8rH z2c_-BNj&fA={|m@clZi+?MT?QB<9??bd}OuN}k&@o$hq9QK|ZXbpR{>nA;S|gnYjN zFX7HJs7g<`-O^P?D~aga)&qFm(8)D!MNlLbKluie38S2?g@53 zH~`AMe>o9>1*4Um46F$ZK|^ReR_pPw#IxiS8Q31U+LJ0MOelRAS2NKZ_>vVrpxP-AOeJ;^uun+ z<_Fk3%t;}$D|ihW=^&4=H!*cdi}?mg9@$3|1EqII$Rh}lL8DjUZoQz^g;ka!~_A-q}zOD-nJ29;=a zqmJ9MJ$W?SoB#2Q|0vTMiM#(A%?|tx@QWrxnFH8&9j-j{|vj8iWVi&hc!{o5|ZJub;u@RquM!fPKi{WdsQ+GV^tAMCT%3d zeq;NRWS_Ev6MNPfFB7re=@pIUAIdAlq5L%K1Usn|kBA2uu#RjCC*m39*$z9A+G8Wp ze$F?LhN0SAa0jA{?e!Q^h`wSx+iLdHc&hUJy>Q%sR*F_EgtC$iy|#+lX8 zSe=8f$9ZuYP_qGcz^L=(s*ZV~gJ8*#so{694;5zD6USaSY<2c{ujAB}X_n>}u*~l$j9q zAUzLt;Y`=~d?at?VfvF#;c5EQPQ!JXyeSh@qP3wK?J`?sXKt2%H&v&nGX!pnOH=N* zc{MDDF|!%f;Uccnm7|Th1(57h1j0;?G1rG z8kt)NS*S?{D_b_Iq%^UdNqR@jMyGQTS93JtYDDdkZqAS%DLs=5VU$Or%IRB-16-w9l{X*Io^X-^o1_+@lD15G;X7YjNCRJs zS!YvK7J{zv6Ic^VU39})NJ6S?-0pC(6?uiu9#a$GOju~q4u+ls{ zFI^}WpWy|mo92%-AZ+VT$lMHw+BCm82Q8s$#HsiD7;Od7bh<=4$_mW^QzDQE_4Ek* z2fI{|bME4O2YU1aF$VPbV^BEv!$_%AsA#qNha* zL-my}ATJR5lK0w<9)k86X<5Oz00%js3{5Be-aH=*K-5Q)sA?06k8oJZsdhQZnXpoe z?9=9U2lHQwKY+z@{J|Yu*q+qoAV~XqJ?PW>w)*1r(BpF5Z%dT2EK}KMsmeZWT;j?> zosT?U?47Y8`$V3>I1wmiykiK+(@2o#fBRqzdC+u;)88{!3V<)u~C=dgN3EohND^4u>q?OCPxAc-BwoqVUl`DOBEIwt4j=k z*vpj%0${Bv3%7v}zUJTXDcG7LuQ}G!)*MD-{#vSQzQotOB^}~eWnB!uO*su(10QPE zB;Ix}$HN1bv?o-?(i<&iDjx4V_F=vUN4BWehBh2ko}8&aP3Rrag{#Y*frxbO0{Q1ymoC|I$p6rXW{`({l0e+! zke8e~v`H%D_bTM&DdqPZHUe&SGU4g=m5E@B-iU8#{p3 zQ1jwS9%i6yiVF&&aGm-XC+Rxc;~km9+KXzw@8RgxN{@8$KE>h>0WNyTFLW zinA2Fz=gq@ef_ule2fW`>`|zakt{A_!nhi_#olPb?y}_jpoH)DUJI1)V~nr}0Z;q# zbA$5X?2dk_5^e$8uATVB=(>dcZ3<**b|<`6wqpgu$#BA}+yM^VdkaVc)pa@RWsYvj zOmKQjv;?pClM~{Eb;>8!dw;j85YS-_6p8@Bg6LKU5$uyQM8KWcD-7DwE{ZJEUe)zZ z!b#&E`-GwQPbF0FFg%nnsEnqV7>d)NvpX*eImr0c7bZM4zbwXhqB z9Vzu^K#Ue@on6F6`s7f6(D2^|kZFIe4atr6)gg7TUQsJWAfO6^bHGXXQ8rmq18AxM zT-?4sV2CX^-IFkS0HDpWu!cO#C#PZc#Ry)s&l4jDxMv~E$?hf>)!4qb8bU2w6~-}S z2d>sF$4(gRQ_JSyjtLNiI&Y{Pn1RHJahJ3l{qz(l)$NjNSz+>zbUK%b7l6uUAOl z%nlTaNf1F#)ir^s(3e1@R38b3fwv>c7P_G@5^ZG!z5Ax&FZ1&>fvoVp=x(7m2d?S{ z5LLF3?|_pq9?)Svfcx2y8=h@$sX4y6vWuG7m~*kY;KHUSyRjP9Bt!87kWIbPJOJ0d z^DksxY!S|8h3rO*Kws8i`N1(#P`rXc`}V@@5V$f|mBOj!;57HS)gA4}Ugl{NE^ex+ z-&xj9{}vb?s5Dllnzdj$A!VzLGD4rK+vQc9tL2#R4_B12?)&W zxhghtK9C*T75NkVQxya&(&(+p)>A|z9iA*uu<3SL>C>viI2lyOVFO`8IM2DDGMFt~ zjm@y2GLTK^m;P*Azw~8I{Zh|H^h-5s=$Fd0)Tw2|tEc6|6#+Nn)}YwVEBW#?tiluj z5;e2G*HQyIFD7h66pWG}k6HpuU8KRg0;EhDq<6YC68%DHWYo%btYB1x6+o|;vQ1fd z{!(WwE00&wm;^X-l@G;FT9JUM=Tr~Ts&FKZ_5F>Sx^PCe#Rwa9V?&oEvYoT;}TJ;dDG$#TAhkT-kk%ZC}8Um2F?D*bo?BwkL7{DTUMwk8}XoU2ZyACl+Chf6J zd?)Eq7c&tCVi@y4=P#LLAQ44b9(b=$!J1c>Q(=58VQz#KZgOt+$;H7PAR}!}K(?U( zGREKGLS-&8;UnS!r>n{a!Wi)}(U-26zrtE(&9v7lY?Jf8(4 znokwp(>a!{`cnRy>GYWEv{$k_nvX{%ZiPjO%(2Q#KBPYN<2t%u?eFal=40_5Bv(Dj zbeQt6ac;mfUc)9NKCn2Uwf^32eIDzmzs}!VkMs+{tEfFvfP#0Yi=XonuWY0YcXi;X zX6@|C_c8zMt~>K-H_lCfahcaP1Qh>|FUAHhU~^-R$?Tdt^G4E_C#}B2E7@X%W5nvG z^yaVdlC~JUfj;}tmHD+!otGQEk~L4i2_cpq553Y$TJy~7oVBmYHy^}r;}+RfUdftg zM3#^FYJYFbMW09Zoon-r!bSs<8EtmKKTC1HWSsBxCU4OcO@|LjUKwRelRZ4|H+WU` zyt7L1ypzf`feFWx(h41AY>*_L^!aS|7Ho;hXtVF{&CjQJk$T+31|)HEM4Z3b8#N$_ zWfj{9TtN&|6d6Em^$DT@I8r^*=tH~RTd|=bNo6&A{Db+S9hhL>7O!MO6RRqEN{uvI zy`-TB6_xC%d-Kg7kTm~puVl@W8gL>LNy$6Bq&3e3Gud-Jo4?a5S@SebN1FfV{Jkx~;82Sko`w*I@q4_O!I$^VGnuort zX5e|GF>B>E&)LAUCM&rQWkfj-2Mt%0S_mE?z&gYq>9wokGojn$kX&9suG(S>`Jxpr zW(*!BnL%jhMs8Cre`WjLz~zkG!ih;OpAj=yCukGn1=GOll1f!*IW?Gzlx|6cCP%Y~ zf}6@s_%jL3t}@za@k|Yd-JtmxS|*ey@!Il!B?+FCGXZpA(0sx}JB-qf`M zu@!tv6Cbx>19>9Rsv0n}s>J;y+U?baA!FyURVc=GG)9_aasbMdayGm9jpuc zM6i_#a9Lof8c3fw;Ca!M+GMZ)KyhAQp)M*32}0O84Qk?|2uC>%#z&p95_!&0N4e$s z2)`pyguXp~h;&)ZH7ggQF^f4?WEtnJNe0>yH@6VTFqS%P>FFE|6*>-NfS}N3CPz6e zCWuYa62}8R49Ssh5`un7dq-HeCmLdj(=;*a2mpmJdYI-Wx!mg+Qb0ar=m6*;G*Jx_ zN-J$FsidRQ-Md_g;Q2^Dh6@0N0#fXzXxQ3QmWhL|NV)Gsa9J(MXQBp!U>KV0{DqUPmQcVs7lAr?~BT0Z|uPaHo$NRR`hv=A+g!h#d z>O~Un>rx?*1PK_B1FxmXP>SF8dz+6deyfK*;I{&H(nNM_!61-|h$@>hJQ>eRPapJl z^AhSedj^qw$SWlhY6v~21qf@AN|YZiR1|^rCwJ!s)}dr;f22@}goDke^6*E!q)C(_ zux|W%zWGCv=0E0@It14F2o+0;;+CX9WJ)F0kNbO5lxeMT?)M3QZ&D?_R@r;MkQY^t zNjk+HN}*FzaW$XKnrHI0<|noOu29SK*<9S8v*-4*%z$?=ad|aw$;5!Wm`^?&hH2&# zsyZ3I6yj8kAQBbK$+-3;499l1 zmTYE7feBAE#Ysw~5;Foy0uP%Wj%tboLqCwnZ>r_d0UFrBI4DYX(?z`1R**1{@;Vh? z@HIY)ZEEo(LaOJxlHDZyk!Du$eT%YfJJ(LL)g)o$woFd5`F<)%pa?X&^~yX#9F-sh zZfFSrF*H(Vc@nJCOsZXytESebm`_BD>beO~ld6|_)l1UDA8UDK&zxEL25Xc5I{yK= z|JFS5k|IMA^O|RoSrYMKY66}B!3WZjhO6OPAATfXq8S)p`m&cF-E5BH)CUcW{OEa) zlW^E$0>?f0;fW9Zyb=dL@HuM;a)GFA4VCs8C?j|cq2PYb`sqQr}2nKA3fEB%^Fy7|LEM-PS#$) z;CBFvL{QzNP>GG(4AL4$|oiu9%@V z$`i04E)Dtxr{ULw{6hCU4EJzFVz?9yXl2JlUX5;W$YX#*;R$3;o}fRur0ZJ>U8AOU zO-DWEJeBvkO5f;{T}zuMLPtrK^Y%iMCy6GIbW=b{`P zt$IXw8rA0rO3g7$s)|e`^m2TtMF%g8)9L!Ww=g4^z0+ymTUJOQnF0_v0cEZs;DFtL z;22conoDp%=~k#fEteBgdYYs~IrmsNL+JJ!BytEE)F@xW`6>-SI7YArmiug!r70Y6 z6{7!1LP;)TB2q&1Z4T1iqfo)l6g3A*Z_Pw!&m2fa1$l(!!Kc^?tkBt6qx3212X|3v zK1yg81Hg)qo3hbFx=r0fa(yxn>+)EWWJrZonBS!=?7mn_MPi8ML}Z|~Y(BZ_kcvTn zbIxjvcaFHqn{(;ohKHP%63L(n@joECoOj_VS`3;9oQpG=N*lqx6kPy^?XW+A(v7fqKfAk5`KW_^UP(o`5`?jsroz69O z;zTzzq8urD$SYdCO#t`Zfa_EO)GYZvi;19zKJRxweQM0r#g4|5eQ zl=~YGlV7>c?^wr^bs1H|M5gegEng{s4Sr~VvO5OgaRgWFgxU8Y)>eOvOy7E4OOj>uzOXZQMd&95S6o3{ymik ziC=*h^^_ur_9R##x4JktnM{IrCH7&#m&BFNkaU$&#KBXnJ&rPx=R-A9@z^whup91r z8q#03vwEQtDa8#74vT)Rbw0lP6f^1B&i35=Pbm(s_mbb#(~vY@N~@fBio2J1af2p{ zL$T)ERl(ucx6?oxU<~#=gIKO?;TjQGk;MUNEe5g&Dgt;O=#c9dIZ?!B(G)v^KRC(< z3l^tZK^hnmOWCKk7m_`Dr4P$e!0N@w<5|DZLz+9~*dSb12o=)($@AOe9CM^vG-m}4 zYrG@7y3n*99b7D#nIQX?f_0PE+M{6A8<8q*oI(=D(*hEOiW^)6+&6TazIhfm8uu z&#f)N6Z{XW&*3n3wTZZFeIh@XU1&)&2yRJNobB9bS?qN&1JB?A#uWND`PlE)hy#r! zQ|J$K{*&M|=v6UdSDD$pnyvdu-ZXf4f<3o*CuTDdS7CNbPyhXGg<5J!3LzChCg6C| z)s|c(HI|4?DEm>*_^Ws4YU%YCA`)h6zMnS*rDoDQ3$@gy6X4AOniS;7vMpCBwdQ@IwLcS7``<8%;xWFZ2XPf{iN@i;C*8s5*Lp`6D=net zBqTuqiPrtg1Cko+i3JAfET{Hy%tq}Q4iiX0fWu_L_jHL5!N@-A0bCP#s*HK085A$` ziblWa5Rq*Q=e|vvh?v^oFE3Q&#xI-G1}|x(_8>_@l2F!?!EN-KHaImNkCTcK7zIiN z^zelWX?7yly~^7&Vnw$HZkP>1#!In8z<8zA@`8MP6arsf`hyji3e=1{?Xq!}0@yk@ z6=sxf`D=UxUr|({cEaRcER1Q5XgmDDw$9hJNSnFNo4G|f1{7AH33J0qOG?$siLJ~y zx3UEibAz|OR!NLfv)<(PUAbCH1Jys$yVgyGTJ9f_d~an3m1>jw`cDa31$wHaxy}VnWa;Q?z;Oc zM`;ZnNIHZU<4=PGC_N`IQb4?jon)1;iTeZS7zGg_92HGPwS zY22Lay|_V;#X)(g2e^a^;(r{-7+A`D-U)QoZOknIM<&8@5!Ve}D^Od=HsC)x@-RSFVUXOj=k6c#01kn@6t z1hp0!094VibR82h6s<*kr2S2{z=-|DT9twOTJO=&2Q?!rEGRzLd2vG@6t6{Hg8Oja zy2K6Mh%Esf$6?QQ;n}!yFc1sF3j#T1O=uihXZE~J`OyFyGY3#K$|b5DFIWR& z1zSdBbcozn=;*n%!vxFK3d4;Kh17YkZzx=p7&<>s>@OrJXVe-LL(ixkM&*fiI1&wg z!aG%5!{_-ERjjaB>3&%6ZNFDJFo}VTD_Pb{yyOPG6#1b1j5u(#KjI9zsorLv$K~FF z8Ir_$T9PM~pe@A~GzneIo4m@Kv~Uw{=j_>@3f0wKsUt$;jGAgW-uyegWG+A>`#{fV z|4m-Wn&;+|rAk10jhD3M#f}(>)wTZK;y+|3#rN0wdyD^|T`-%zFRz5A@!HpWB~wCu zPu(xQBq3HYlE5k~C{E{SyMp{(3&ManTHipXm$fg&#iKR3Yt6L-YBZ_p zzuJdp`r_+huPt21{yH(+*CC?mndH}S{1LS-^+xPEcD|3%BA^Jxe1-rQHAp4Gb89E!ff7(?MEa09MqsP$P>&p3n|v&fsy=j%3`OA- zRc9W(K3n15(qx-h*n1x+B(c2Cn|n-EegtQz%s|sUsQk9<06_)LL1t{!)($9Av#(1k z4BCL1wexYV^TTwpota_-EpN!d2~1FIpr!N-^ykyN)yHGl!1ukd0Z4&G>^r+M57H6E zd=2zKE#kza;zS$E+!HtM@_s+0xN$05K+hIS7wsC832EKtH4Ql!10q!m`GVf#W#6wn z@Dvmc#)`Ojj0j*f2lVNAqjgz71Y)4vW?bzOc42vLElv^{iJ3v=6I_B5c*9-Cj$~Bx zE8-gTNi4xQTK6^hppVklfbR=y(5z|9@KQa+fb`oiaf=68dOl8|0Of%iIaY$ol&TU6 z%5-<`^j>WRjzzER_x#S?sfHyV?#I2NEx<7{Tp3qt?f;|~Hqtl`vJ5T5^p8+=qmUz) zDkAh-o=m`~R*z3dWm=+%^ktJcu43ya`?x-Z5S`>8?5Dg(J39==3TCxbL|RJOqLeH} z-xJ|H?u-yKU2iF?I9I;p+1`s)no!YJX&wFFvR;t8< zfWalLFo)BdMo6Jb5@jfBqNGRyB_t_3YvHY9P*zQBkzeq>p3uH%iWN#1DIjRO_2o2F zu{gvzf<`v$Ny}gKmcOYjzgS40tSD$C=`w|T(E=6xs=%i!^F0DhHTAGEU@MqbU>M3* zX1P*d_hH#e=~?-NgGi^6p}p5i{k=D4D@7H&`%3X{1-2KM#+NxYQO;QlZ+ooNH@z=g zDHjjIF%y@H3J4&$GuFV4!9%Y26>)E`_hh&?Sin7s_%8&Wf4|UI|BzfS z0HLje>lW4Sr@U%G?f%Zdeya!&++SM3M^tXnwUJEQslUTREk@IFZ+0YZNEPRqLQToDwxDtp5}06C z^g3JMIcF-yGnq0xq8XG1v9r=dAdW+rA``G(>h1fs0zf7pB$Ir-baqaHR6yV0%|<7I zn0p(TaB&nHy||5n&H#>rj*90$jH|s}8%ASDhCyXJ-lV64*9X3iqC4alag#S@)J~JU zl>{9@wEuF?lNi@|TLn#gcRp6BK3OaLhfSq9bHc8|WV&pk$CFJ&6G_WAQHl*K+p&VJ zgPKU0;tGKpITJSaK~PkgI8MUIsHN7OF~=C8Jn1cWKd$zE&HYF`DYzfGW5ka`hSkK* z5x$k%XEWZ8IhAyw7pl3ksr;yP!6XAx5amltSm1!nrbsx~d)EcRxocl5TARe0&UG?L z?C-Lody^F<$FuOWZ1bH6@B-T%t6}pK{P?jId4z2XSR%1T9szyMU{$Z?YdcqH8L98wn0I*4))fpGtRK4%a-l1 z;rZZpa&Qg2Cg=N=2Dhf`;Mg>xLb?r(;gzt0W$W6{R^TF5iLoSTP2&iks#dEPan7~L z&Yg+%8?g05e_ht@sbuYF9E=y>1>B2vn3e5V{%0yJ5t$cM8l?MlL%=y{!={;oO_do= zvpc?(w+SAqdm#3*%6lnLqN|yA=lKL<6ls<}0iGD}?>l{Tnt_EOfkH3=Q$qOoe8L2}e?`5u`+{uqmE3}kt}sV+U??|X zTZwjet#^KgkR`_Fg{z3PY-!W8DAGat0lj1o-RM29(`W;^R;;sDBdN5xP)QCvyU=)x z7cd70l~I3xYvDbm>Fg`F=d&E0mGpX>S27Pp2$o4jxZAztLpmwChrIhO{@y$k6lVSX zR)23Eiq3-)@AmgLJt~h`du1=%$sJzFhEM)S3igT-aPocfOkPjiHhwt^GMrGlm%BAD_m-ppY`siff_j>ID zU;0Tu_)<9M;hZJ^4P2&K;m7z3!}`O`v#N*A!94<98Oo0mhLV%AB&PqlADiJ`r9tDr zIi?yLI7>*8$ldYvns$8s0p;wJpd1fo{QdvY_o_Cfxf|DdIfHPc+hVLQDJncB+yT`z z`L9;Oa^h%XFU?xE>zHWm8paMZUNFDjOy$Natm~rOsLoLcXNGVvcon3ejXv<})n+%) zZH`xZQ5z_>5BVtP=tFckZ}JL{tLsMOP;3Dmk(a#2OFpZk050cN>{@@nLs!fWN+gJq z+B$FadWtAL&rE!70r39$MU&!*L{+gGP>6(;a-m z3Ajx!x`Wjj92~)~d)@0_|N1w);SG!MdE*;@?M=V_=HK|u#c%no-+t@w{O<29`Tc+Q z2Y>iS|Nj43`XB!IZEt(qpZv+6{3$+ffBT;;`;UMApZ@b-{FncF{(t-L|KorD<=N8?}&m}}?9m}`&4w(&1&+@k_ zt?hGuJ_PA%TQ)N{ZlG=1Ip+T4iw*e~+lTO`-Tt|>&bK@8z)IOh+-XnHpgq}TPtFMs zcH4ts%Vz^{I>!#h&eP&;Q9bSXYFkV13nBj z_-l>>%tlNZxpoUG$(4n6Q59o|?GB>dsTwqSpb_w(y}k!V0qg}}$fgn;K^S?JM0$?7 z3x;jaFnz?bPGs8ZZ5yor3~gs$>KTysZm(ppetXA&@9_6F;6ELb`#j&)QS2@+W_|O0 zcG;DARWn7hZC=Ux{^O2D@AmiB_kZAw7gWxZ(`Ev-nm`RFBnd30G5hx{LLbbz`E|M1 zo3io!5yyAW9r^K{lOWT5UdhJyhaKa4zrVNf{XrNWM|rM=u~a;it5*hppB(fx#0#?A-B_>4k;TV)W__11+#O7GheW36)i}E{ zhrGoi7(|$KA=R(G)My?zyPi zrwS#Ywo8{shn0G7zv|uJtAW!kX}6Q7Zjfgfey%SZadF6g-J3BCW}IZUvcrgz+G4-q zl?;Q=LnW@>h6IBbCp-M_3pLMWcYoi}ovwh7@v%ZBhC%xKZ~A+~y0dLKyYmoqh0PXenMs7~)c>g_rZwr6wP)lw=oj|#=RrI!>^t!fU ztdq6x$jf^v*q`!BHbusC>J*c?{lJUb+)ifuKk3N1pMvloy^^(m5-RzipZ51Q;S)O< z;Im%9X7vj8`iq_?7yijBS+Daudi|llw_eBbJ_6WW-%*nOkry{&eLRYn6YI;VN^11z zzKM17`4j7(`IwAYA1h<(B-XDj66?)Utdm%8-EU(33-8{D^)b?JC$XN9XPv|vp_#t? z?Te#QXRAv$;68};#a_u)cMO%ddNT=?Ne%of3pGdCU2kGNRjAZNC7;8zzc*xJwiFI$ zpTv5VS2bd-SDy>9R&^anv~Oa)+S@TOzKrwgO{~{=B?BWJkR12s1dLl#sxecj%B&;% zAl7ROl^A2&te#$bZ9-|*c}XMI^iJ-BSg-d=HXTOYays3J^(9`z2%4PwjobcGe{aNE z(j3J1m-%~J_!kdJx^WGQEiR(t%m%M&3&uM8pw;j2N;X6KICX{z1h4R-HZ^f~_NLVv zy^^&*jP`xdSNeOK@4-6XPG9BKUd-m!`Tm{$-oQ#XyCMn=-$cWcTpCuJ-~qR=QcT_CxB^P^n`q0qzZ6$>2oKqc?h^zqbh> zqVyV$xsGyq(L6gfX?n9)U9Vz_A3FO-2AI5XNuX+z#sA z?{|{)tD|G`fqOuXi(!6UqE6I;?wP<&Ajo!Wny7hjIT4MQB|6ngv%8~~=~S$Ra$;2F zi3eI_^}0=7mdM{t7+d+5Ilt=2z6Nw*esr7}!OxmlBpHc1Uw#k9-{bfV9D4=<-a#+g zU49T31Q{%hMo*sDf+-jZ5s&ImWY4WfR1`HO^ow9FT49(vUxWe2j}Neg zAlG>%Lpicr!eU8+LF>Jw?R?>=t9uH%mv|*>o*dQ3e5t=Tj2=~ZQH?|x&DxMZ8hW8D zkPJ%CSYeDyTyd!sSr zZT^0vzqbh?wx)Zu($!wv5Rt5lsciIudZ3m?E4>P13PD1h{fbti`Hx3PELv$Ee#-F;k5-a6EuJ>hs{;_EbObO8*xg}7zRd@vK}zIP zLKZDZ=?FPQgjfnpiXo8}3buF~L&CTRWeVcK8AoT55QlTB!>J%~ReUN(vNK+bi4mKN zfaz}K00&|$wC(KFX8rfDshAp$f!+1&RB3@Xv08?N2|OIR5ZU75F%9XSft+{*U@nu3 zQP?DZNyCU@$D}2_E*izt$v^^(9$3IaIX##S&6rIY?2?4~-Q%D)q|?w*UMgU@t9kxv zL~^8Ki_j|`{l?iDaaj+xNBUOy+y5DPAT$g6I>ZsL7(Cb5mO3v@r zF%Y${A6S^kHN5x^N$*P|kfMgk)TN!yyl4;SkMAqifE6P>X3>hjH~} zjf_Rp%Q7X)pg8ZC*q)#Q4i=BoWIA`Tx@0#^KUon_#8@PC28oDX>=aM5@3#@jSZT zfuo6eAY8;tZ@Mqww6GW~g`Fa&LV!D6WCgRmC86BUFj~5f1%XWe|FZYyadH$#zIa#n zNE#TxV{^%XO^<|)Fh0a(WSc`>zU1|K7i0UGeY>`?y$5?fcGuozpOM|VM+ay?0)~4y zHGl-eEg>XE;u=7}a1R*6U@id$1{<(27=GVxL{vp}Rdx5k*uS@b?9>O;-IW;``OVD8 z$jHb@3qxH>cv^FErY}By58=fl0;a_$fb`z(ylTvVjYTX4S|Xv}0YVbojBNm8B;h{- zk$7Ut5C&v1yM`)#)&9u#5}))kT0#GX^n3*u(T=|TX2;v#;0 z($#rPiHFkSJqtAkYO|!ZqvM?D9ZGauvLQHpI20MI8%0g?wMCAgjZ&Dlk&{A2@lq}W z$B+364>Z*G3h6&>H_WJ!|0g9i{uu1ruH}$hIdCtB-iwHJAulY`b>R*>%HK}Bo@3$% zKe!8RLUo#bNvhdJdpB{8EEsbc&&oN~IFq$JG8M7j8icbx9DLB^(0~rX*U4#Tj|Dkd zwUnsKAkt(?lq|~0Ba>~T3(Ahq%f!(?@)d+EwipBG6x3LG7Y|Z6~l6ZMF5oPrq7wmH6w-3Wlrp#tppz$?_!xvQNasF zWY(4=^-`H5WF0f|6&4^zZguLF5X0$P4X*VPj9r{TU`T72MqsE250b^wqufm9>Zt{r zxR~DzE-S7U0&SJ*zLw7(>K zjZmb>>Cvpaew@Ok7k&cAQ62CN`yTu@&F)W+vKX^q8f*nP7mP4p_0%<{Vor;V5eq&ac|xd^R2MTwAoqLRmnbBgC&-F+WPCmBeV%p^^@cdZ&}JIC8pF z^IB605ItbaS7g1pjUJ{4QL%1$@Y*JY;8V)4&VC} zE)T@nMlxbb!*AhZKSpOo4eO}{Xx3OII4IS7AMTn2M{@izjzp> zDT(gntSxcscFVywjGD{L(bACX?jUtoeyL}>QDqsggOY3*dNmr*iJsInAoll2klFme zFi5bG=al@jRLQ3}IV-s}o>o+6^2(j=Y3;g$32mYoQC$K$kR<~FG%hqWXSE)D5dDj< z_``ry2%jafP5B%l_&prFE3pN@6bX$j{G^;^TNS<^*llf}X|zm_;1$l{B6XX9&7Qg& zP4-|T)fX=I)x?oT}|3 zY;Rh2w5mS_Yg`H8i+?BJKfQMwHLI~Z@CqmPkyZ^Rh4t%nd}EAXxS{KA0gbkdoMi@y zNn6>V{4{?51b*km(9k3!C+hw2Grc9YiYBaamYx@MBXkz#XiolH1-P2(AhE#8?M2)Q z5y^Bk{=wj?a0Y_oVg=Wwe9#r0HChl?FiVDJ3;BlLoleP^HT~OX?4(@x~ zCYr9c#f5AvWjkz&1~|4u?jr<0O*wAr z6oq*hL#WQm1yyo(8X~u2LS-rvaS_8|awPsi`yG+X`buZOSdV-ey3k0;xJ;Q<)1{u( zcxQ-(!#xH zxSEk;6Sl+DFIdh*gO`5Kc2h#8h1NK)R!y#hSXfuI1IHFpP0qXdTF+)x)JsdWc_QvX z1(;g}V5Bo)BGJh79s>$1Ei5%1Ztwz(FD`D#Rj&Tb=Hz@Ads5u$`AvVOyMls>f6NY7 z!(Dm8vAn}ClF5u}72QOa%i<<4!dS%WNLiGHbwVjK9bZqu$2{Ka1avt})e$VFpt#?Y zSvi(YEER~9z-S*Bsiy7os3nM)f|KSYzZEF;M$%u6lW++$qJA)h( zau8m5WMbHgz?9Nv*5o@7dj)=g~T(#Y@ftEZQYn% zjdNHZiY$VObtm*CtGWu81Lxe(1a8ZLC|w(i_DTK%P6OO|+2>ze8XL022;cvIL{ zz=v8DUA!;#jM@h|g<4>CY{rOPicTJIj?gYZBKkAWL&A?C{23-w9%bZwhj+Y^Re#u_ z4eABdKm17Vfyj(PbF1|2J&{ST#DHzM4E~@~PA9tvX6OC1Skp@pzS#RIH>Zl_qW4m* z?IFcISm;qUNb*L>8R=?sQrw^UqMgGYr=(YCL5M%K-;LkGPOx~=1~Rq37s~yh;_%T>9o8Qa6P*>%#F(RiNT@f6&Z(S~C~o$xm#vXlULF zs#}1V{kEgdTxVK4Kh^Hk;BgUs-0U`6;;L*@C-B{1FQPDs%pZGbE*ZnfDM# zUK)DgWC3b~SRu)uN>2Bx*;GOUv1Lpfna}aWv89*mf7#p;`xhr(SWdd`*2RZIc)n*{ ztI~_zOpiS{Q7AaA~*XGNVJ z-<#_36hm>m(8*Bj%gC5-ql~j!*GJaT+9-3f5)c*?>0uKm7sE$HcV{c<3Paj9l3nql z_PA z*=YJzdJAf~m(rwPrHlE)_Nz4YG4!i9>0Xt8vk;_Jy9p~1QL=YhUpn=rdJ#u#LrX=R zp{6M&h9k8@+y(Z6YMjN^gX7yGgB(P@jBtph%>mc?mF_{N3+t&;?8%c zH&KH^qkOPXNZJdybG;2Wt{YyHc2%l%=vfkJOJd}qG8FdTp1Ja7PBqRtpj+6gHkEY~ zKqf~Ec*MF-#S9SkZAu2q7kknTT3KCTLRXe8Ih}W~s?W>3#53Qjnbr1IMpuN%K+fi$UvoT648N3rN@Qn93EP1yR3IyFr z2ug9+U7?1A3sDuEvj_TbX)z6Lt)J$&D9I1-Uu6h>bPgMY14rvP_3ldID#q6vE za^{M%h{h~(aRK*h0qW=BqN*8Por6xINhV(bhz5|Mv}+;yP=C%FySmJMp$4|LaWEW*qE*Lojd9fYj(&P>oA@L%pMP134XIx6{*E3s^c>xFk+&Yuqi> zHgz8CqIwt2BDsaY4+*&@9-YP1fmxmm3d~{#fZ~J0S!8XVZ?c%QIX> zDigX=3wtlTGi1xY3@=fR8CG8}Esp+etuSOEx`_reV)?>~fSolyu)1Z}Dl+_6axP7f z+Gn}HFvC4`AmK6=T^|E$bd3cTf*j8yab!kF@;gVQoyKfexITwpIWFOCl+to8%@nDJ zEc6Nt>fRy(6@u27nOZIW$~+<}QIgpSFc8o1usSC@5Hd_{G|TmWD#+vZKm!R$ilibO znN14Ot%8~leT%hqqISnG(puK;sg_f*QMr+ZeoAz9RPayXg z)2w_{f^6p`4hWso$7S+A9#hWGXd^97ubuiSF+~Bu5hDBnA0F!zze9GwIv5S6Fp_;D z-EgRnQJl#z(uDvtDzxvhxRX#POc5)b&p1v5L!I_xWl@Eut3jRBn6L>-TwEs9VwzF} z<3`EhIW{PNX+n3A)4f}p3Vpd=?Us6CYaMpnybDjXpI%OtqyCXDZ53&k9oQ^UyF^EW z2u+=)xj)r35(s3XsQdMppI41DS<`UIhgOLJq>EcC+5{3$EX(Q=p)jV`3k#i^X=Q9^ zX+BYnApM~Jfgl4l$T|%r`7hkOljcd&JWDO=?)7kRQ4^8FxYRx{VbH;WDuA)kySg%k!BkRjUUS7Fa#o(el}gFgdE57 zc(_qfWRpg^BfkJo+fZtUk|C9iod!59qU*-y30%G&v1LOrdF&ttqzpi)qktIH3~3>; zSn&EEmA*w$WK6HW|N z2no`aD?cNZ)Iqh*n**v2-uozT8=v6BBKQLZ`=gd%m#g6@RVVL+u+9xpm2H^He>@)#peh{=*nPl)k^xHKIH z4yI5#QnceAcvzJ24{n33rZ$9@RAYYUwowzWtUxfZt26jm&+X;9XzRoLrQz@Ib{lN zJo%WMQ~KnmK7~t9_St9O{q{fLfKPw=(+5tQCU>74bnw9kA9CoShfc4Apa1+9zVHRP z0cFNl{^U=-`c+(i@-?{t@xC-U(A)97v#-j2d&E^bKS zqqn3i3>F59|MJ_+V+!h35o$P7IdGvphH{I5{{4Pq#d$2B*n$dT>T?W^fjs zv*qat&XMQb;Jo1c-~v1s%CjQqmFJ@1;^2~CC7xCCTpC;^PhW6(a7Az>o~z`!I=Duj zYlGFnn&3J-Yvs8x%1(Hx&EvY>;PT@kV)WD&AbY zrFbiz0eNmK-d?;zo=wF&i+9O$cX6R zJdYJ0FAmG|MDdr!CyP%NpDsRAe73k*p680s7hfp;3eSthm+-t?9KrKS@z;2MQ+yTA zYsJ^`{I<9S&l|ccsxr>U3g9?orq^yX*r&gN+;tvrPPh*)Y55qPA{E-=giVsc+M{M;5nysE}rvB z=i|AcbRnJ6vF?%PplUiNyUY^aC* zFD4I%-=rodwU^(lUtATRQ;mzbNNvT!k{r*IHFvmr9gbA$rNCjod=?_C_T=JhSd{akd(-_Ux31nMd+}1 z-YLydZ*nY3VUndQ+XUoYTWYI3%1U2{+kmaEbRV>jt+F#6eS-saAep&vjXm|^9 zkX$4s_dBE!?Ci6;l144-?RT8F-^JQ~YY2_#$^wlwg zJ=T81i6(_6&YbBc9nNdg;qkh%?kUmxL*UV6dI<_W!hXR9fZwH;>F-$bbKe7vhX55( z>;H_6m{_Nt;Pu`d$eQG8tv5D;<9gd}9xA|}TEZcANhu^8mXD}IAzgc(VYn);J!(A| zb>w$hYt%}zS}Wu9Y2q@caGDtsz;Cn^iWlL_y>id!LDws^ayT<?nMjgN}xYmE=hFG_Y_U-#KYKO^Mvox&&kSVUFdC2?5)y3#_J~ z1%E@*zYX5go=U>Ir&Phm!17x76$%>A~D#sKl^J0ggy zH4x)l0%8W(xNwvZ^J1q9@*tjq7v}@w2MO_c5yYL%A%5w#B*Y&}LA=T#Gl+$DU5GFB z^ae50E5x075bpza&m9BAU7I3^w~R~nVth+L%;-{Qj}qbok@l=Sh4eSVZPVX8_Z0vFpuQH`~Vq0ZVWJ285>8Yz2O>|@ht)K!z^aeC}I9N6EDnz zd5CX10rTyIc|ip8=H@Uzc5bpae<;SV19~kW&!3~33D}qdAK>umpz|^IlagBoWo`?3+=iv zKkw-cW~Nt|hx1^5k&M4nlywT;zk4OFD~5Tn24;Lq!2Ak}c?)XaXtcQBF!7t@DXqqh z@XhavZIzn{^BZ(7>&@tvt$^nEzhn~!tY3}&HS7v|$Vy}``%3iCi7%qNiX=f?o^NDTAp z8kq4d0khly{p=`VK7~9zlLzy1zIhrjuO-Y+MKJd_hxyHhQ{br%o53u!>%x4Rr#G0H zUSaOfgZWG{{^S^7-V(#yN0=FoNEX=mmVo&j7Bf6bn9pP4$MazB;hV<*^J>EUiwNe` z&0#)aWpWBk_vQ;6HiKDc*M<2)Pj4_Yy~4aY59W)=_@iThxf(CBduw3Ew*<_qSj@wt zg!wWi9?FAxCEq**n6D7DzpA^NMW7w*<_uv6#z73G;86_|iO>U*(%sfcZSayfT8h+8pNY z^O93w+H~}W!)7oG?Yc1k&eI#rOs_Ck^I-lx8NXx-!#wa-66T## zFrVPCS#K8Fbzwfy(;Li8uP~3~!F&=KKXVK)55_PL*T9T#37Ai1F{h0Z=F^$@)I6BG z`KB8%pGKHZiD2H`9Oh@wND7VJQZS$Cuo=ukyDrRUd3uAH=@sV9c`%FvgEcVYTLR|GS*EJlpw>aBY&3EEZy?I_Jw|aW3Cezn(^0}Q=d^>pW8$?@1SH<;rCTCfl3fww% zhqG)|e5+vEkU4>0j>$y0g{ z>|VZkJ!q>O&%yEktJ6MK1y+O?MI#>qs2FuUM_^V@p zxif}&bq&n;mVo(j7W2v|VSa*%NAh5PjBj2B%!>*0OA*Zd&0+3q=#lrN!)7oG?Yb~O z<>?J(rdOEz^I(3KjK4Srn7d<``)Xjuw*<^Du$bpZ3G<6g{9GQ)&-2Y@z}!igpN(K% z-5lmQXExFoUv}6GW}#gd<`GYCFf+ZvygCo&-;nWV#sG7V!Q4dj|DvI{%d5_|Rr4uA zSht$5d3viR)7O!UTUf;>$56%I(N*z+pC?8C2U42<8_u#-@rj02{GF$_Dl&bYD*m2T z93Ddz`$kvAs~cKG-gcI)ijOs{;ya$+s>t+psyMrZD*j>&Ra_m*gWei>fNu$TFrURd z0yai7yLB@0!{jMFyUpX9A;^Pylm`zH2F`AM&E>&qS0&}a?x|k1XinN1BDCucl*OLj zAZB`%2Yq?+;CM3r;22=;k74eqff?TtFrUa`?i(e{%bEDzJeW`5n|lEBY{EPk!Q9&% z=5udL!aOMj^T`gI^<<%47v@tuy}``%3UhBB%%_p@yT<_YKn!zt4b1qKfcY#IvuTtt zYL zGnj>TU6?QP^aeB2E6m+_FkeB&H;e)1p%~`Q8kq4d0rNF1X8kB(Ud_bo@?gH2Z>|T- zZxH6S5zJl9VLp3fvNw06dh>M-o53u!>%zR&(;Li8uQ1DxB8L24eS zVZPPV8_Z0vFn8wl=G)2mm1BT;B!+oQDG4*aC3^E+ET(UiFb^{EWqB~)$v2k*=HC$J zRT0e9<}jc5W)kMTQ@#0Khs|IX+I3;R&(j;sOs_Ck^I(3EjISI6%v)lZM`~ckw*<_O zu$YTR3G<^&+?xmU!+f&>Fpm)C3nQ41X=<%_cqEDPUMZ9xbJPrFAzc^c$34BF%=C)# zF`%6m8NVdk7mNYqsvoAP0eN!`$j`8tb4LmCW+px-59Fu$rUxLuNRZEtKt8%D$Qv6< zjOQIR16fGd1^ER}Zy+AJr88v+hs!@jX&~{B?)Z;1|+$;s33tH~5)e z;Xf(|{@;=9Q^o*)R}BAP4aoSG0Qqeev%D$DdV;e`1efK3{Cko)5gEgHo-Cy6g1pqz8^}zrARmzf@`>bj;TS;fi9znK z0U6&CAfL=)=8qEOZYG|W2l7dLGZ!E~!4GpHkPmAL^5%x8D^7FJ3}hi)7v$4Dy@Aa1 z3i4q&AfH8UXO98o-WcRQf*eWf=!;0})ivE%`q^Y!xuB# zDv$BsW6iuYqbc;SHSFIPI+O-IDc41Qg(o-Ukz9eFkpuk2Wc4TSeFv`3aBpI1exWlt z8GR6pBttP=;yhaw|Ep0IS9)@*B9hm!P+rFR9rNDnw|aE-JGo+jE`VBPPce>gcw)*{hqxxOr$*q1!UZ;L*SigUJ@AVrTUH$qS z8xfpgtKZR$>bKUDTm6u{PW{%ie*fpa*KcTa_1oA`8N9(6w)*{Zqx$uGa;qPb*Qwu) ztlvMq_xcTwu6~y_JmzzgGi>$yheq|g*^^uSki1U)23WtpfA96%Ji7Wl(XfBs<_uf? z{;pB|ZujI?KP0bHzdKpKzkToZ8yQ{w?rhk8cR9mWzrSu&zq>uT)ep(D^+Ql##&x-u zHT0wp215M$1C^B4<~@H6APwAyC|rD?ATO0z}4 z&;p{=g|P3EUrCs&Nr+DxuC^~7rON$e>_~9VDA9;?#F$11NE6}~4_Pz*g73cv#x1UC z7oxDBXxu9G*472guW+csFBaVEJ|_OI)Dmn-L?*a5Z$|u|RUtE4P@w1wVp&0LiL@wQ z1oT4OLW~Tg2kGR%bD3_^rjTg(C6GkCsBqC)(bnr!eACE9l{iAtL*7UiOpx$P-)VE` z;RhZEpaLfvD4RT@4N|H`R6N*Ko#RFO72qD_OeMOQhFjL$|aLpf1gAvP5a zdr9?b*sHQg!`OaXcx{yD$xNPaHO=!(CeJsT=6NoY=j%=L{3?^@&zt6XIg{sWP4oOZ zljo~V^SqYH^OdG~wq){rxoMs^GkLz)G|$_aJfClxXV$#fgkgQB(lpQ9OrArV=2?)* zb8yo&*9^6cF-&jp!0do|6|o5{0h(>#}C@_eLeo=Y=%CO6GzyY^6cI; z&$XF6A8MNCx=fy3o90=U$@9UcdHOSXc5a&I#!Q|ao94MClSi(aYB)FEmdV2#r5ewt zn=*OyW`{=e>D`$;yvVz8IrnDr;Kq(7c^=5*(MbJ`cpJ*(k;@bs;`Z}Q9$vO2F+D{Y zgdSqrn5%q`d7jMOk$)Rs5mcOBoQ^Qwr9z=V>m>sJr*5m7RedTIN0LtcNEc~7@)5c# zjDCrG-Q+5w7q=dB(0=gtF|dX|y{2LO_zA6Y3m-#`<8Qm|wtFA%RM~!q9e3J!;s?Q6 zol8|VN42mk9Ck(0%244SCk1;H!X5_ZJ)l@PY?Z{(tS|!NE_N44CoV=ysd)3NF*Unc z<%4Zum)!^$-?_n?jV7X*cztPm_;f+8JL2_x7>@|{sdpghZ8(hJx)WP8td>o`r)n9k z2)G95U;pbg8;hNd<$7%kFL+6W0+vE_#gM*)Y>DSJg&TRHaQ7Ks;6gvgobs39g&M$E z^l&o0gWVFe2R?tmYn6#c+LbA8drPg_J1dRSBMi}-^s_KugKh0KXv;EmKVX1QDgpBN zzBY=PA}{W>Rpnt=-%a^xv}Tyjp@bN$3Fw2=of;>5L3SB-JJ^~RbsH=gF(zR5x0`8- zg3v^uqQVLb6Wo~-t@~K3Y4Q~p+MsMKo~FvzGHz9q3qGdE*VYcK7%3Ra?XM=+z}x}^ zTr3S?X`>Y|Hotj=9Dkk4n?m#>9S_R(88OMG*vBJTq^3ZRo5oBtB>t-8mjX)i@n}-j zk0@ZGeN?LYGf1_DJ?uC7e=Hmk%oQxktuHyl=M2ZvZhhHSu9-apqcG6~t*ItB+p`@g zOITjOgCU%|LIdEDWJEuZFD@F-bxI~0arcUJZrsbVB7Af%!b)TJ0*m>Bu(bD3)cqQY znjN1qyNFlg+TWIz3CH~ux9WuB7;btp-s{~~NiHU{Kbh`rnC`frL9&V-re07B7uTsL2*Lp=4<3UKp4du0& zTaEJ^DviS{XAUT~$~fSKrvQxpIB`}9q8%2bjaP-+psML1x6n!6QxKZGi%?=E)67C^ zQhecZ*nPJ~g>#OUc=om9C3_1cZ2eom9>XMK7w1Lb0W=tQ1U1e-$X*AqkrZIO6wt1N z=P2Ot!Z53`6U?i|nc};Tau8}sje<_krlWwA( z${bt2j<4p`F>&2o&PbnEjWgLq35%MD3bTMw61IlDHtA4`@)x}sF^AqFr)QXH?Rljz zAa1omKSjUlCRkpB3m(_(0z9_;DZ55-dUn7>2>r4DMIZZDYXQ46ZXEug=irZ;j@}%H zJMW?I$n|li>g=-Xu5zu)hw#U%RmvTc@Hcr6{C(sjxL-xCSJ`{-y+8i(PkiDNpZp~5 zSJ{`>t9<&v19`Pd+{_f9U#p!|tJN*3raqY6c_wQf#D5ac6JnVj z#WD@oqj93suxcFWdI(5~s-hZNbn6_iZ2mN53<*yUd*-T&7xn5H^@{5DqKw@GK!g*r zXcgT7^%P9?)D@s#;ASrBr~4sI*iTz#JkiCip#kOFMINjQ-w)xswS8uYrL@KJ3@?9? z&MBnL0^{=KzOa2*HDJdh9MoBkD324%t2N$X_3C$y(>Eyhf$>=s2Khf^0q2UTs(+z| zjD@e*Q97s=%bKIA^~$)=%P^`gmw^#^u2Cyl&HYmXeWi20 zsUY)|(zn(}a|<}Q7LJ+8*j}Y$v>pfsg?fy~ofq%C^S(J&9Y)!w6=yszoQvK~YK^qv zml+Xsid1*}A;tX>h=1a-De@@3F0w*iL& z_cN>l>2mX47DJ1J^wuhRD`A%w zHW8g_VR1@Np;Z-`qB+f`6wgHOve_$w2J8ykggZ&6m)P30ET%jA176$M8j-B64tq9w zn*b`Y&|!PfK45*Kz>Yl#^a=CnfbOPgX!&OhpPRK;Cyw#C$8x^Qgn zp*0U0g!B{cv!XEub!#iGb@bKr;OML9!4!o;%$G)wIV*!Y;kW12U}mZY zPk6RZiy(hrvP(+C@JyYZBC>NF zi3LK11#$f!-Vz7t%?Ed4d|#wocZLs*o&M*;u#( z39`2G0>>K-zG??ys05ly*p6lUcOrGPhZFY*Wz4kCd%1I!L%oj|^G$D1yOk}m7zkP~ z#%Sd^md@*0!?_D}rK3ygw7cI+UVuTMw&Q5AMA$MGl95EF^j)kk?um6%;|q5G*lVW$ zPV}*Udn70n^uq5_ON*`EWaUN^HSE*;Yj1zQSgCguJ2h^_#PV%dT#AXm-FN5mt=!Rp z<(sYFKKfBC;P%4xn7V%ZP>+{ftZLNXJ#<3fRO0|J`vo`Od58Fw`gE zLS_+cyixooD4Lg@ZQU7e*?o?B@n{kM#pNZG(IpvGi5&a5BR z;MP$DU@*6qi(g0i8(99ogS+ZEkZGlg#Pa=Dp<}m;r8VfYyja8S-zWz6Df|Fe@C9?& zn9&{ZpuZ=`|0~L;0sN?r64Vo%w>-jL98H|Upwsg3tsu@!{|E2%f-qWJz1a_EJ9Aa` z&#aYcIaA}Emm63gxSVOO`$ZbX6MN+Q05`*A%Ci)I&Xajj2oz5VW z{FTvpjbHw^Cy$tt>{a4ArHrd6`T3ZRBDgh4E!<8AZ#p91;i_A& z1qFNLkFw)9@&rFAbYNNqTPmmW2bei)$D*V?QD4b899LP!Z=d5pgzm*6rotrCQXYS- z+&s#@S}ZeEav8r$cYv~1*ygj~2Z?5aUzAsFnHe6s02Z3k{5ePpI>N=c%DGH?pwx8` zq6p$-?xINZAHolYx2W^{j6^Bb{&a_KqpFi6hY2}vmn{Ehk&JTLA~MEioU@#;NqiV7 z$3r^o2s6!i3e%49sM&;>j}r13`d88Pc5$51OVSaBgm~7bh;WB zPB=C^W)5|13e%&oa`l2Q^n!;}G2d4J>Q;cNF+e>jfL4XQ_6x+iz_cptlV30k+4t4< zU01?DwBLS^WATJ|z;y0|uWZa|(UYa2Yt0yu$!I%)Hn^-U53gV_Xm<+X) zNd_-HgTcAl@j=Mer?RfY*C|MP!-k~aG7KuB_Dn-Y^aS|~>74a$xy)I;P#v207FHqe zqsn7=*cVQd5j8NIS%dXCF8>=vQV4?wKO^-v;!n zoK*u|O}Xz0^sAkif&P)YpkM204fM$=jNT>at1|>Ar3n5%1|5P2oj1HT4yeYy9Ht|x zt?_EC&{04e*s5?SISPhHISQ_GV%8vPpVpD%Bj9>ZXN~dU(PB6ImB>;-DWQ=d)TR{; z&vHCGRXp4k2NRu&9Gcr%S?8?Sv4#%`D-a(h?ffi5Ga<0vX<7AmV}A^P*_Yg6+mK#> z^=Gn)p*LUlQ|ao*9okU8Ok0uLN9g(`uL9}^m@iw(<3xA3mHGe;rsL%OKtT5rS*_9d z$t>8D(4@C9DLpVX>5wP=fF&J{lHS3j^oY`=n>}f}B^`;9Ze&urFlo{)o^-pmioApo zKM0>aGl|juscGfz3`F9M8J=@lGFN{Z*?ThC#33`hJf1N)@#u`E_KOF_u>aU zo%Le+!;EUKdnmr>k-d0IVy>&#ix;m=PIBDwNNP9_IxE(T)zRg>^x}t{mi1z>_J!-> zNH+v+?-U0QXL7k$QUACm<~|s}b|}c7*}&*s1ot9(0M&7qQKhX?Xunf+RPMA@1`Fa} zFgd_Uuf0lBxWmMmdK$EB>_$c=;^|QIYuy!QS7UOfnSvbiOr++Cf6LI&`EM&X6w5Hi z&L~ev(U_Y@V}j*rk$*8V@$b|~t-{)gq(noZPLWv8l-1Qs1zY3_?1Ihv>U=MCS&Jxe zbhO&1Fh!i3XuEi9 zPMI2tb3N(u2$ecrU~6;%8QpZjX7?_pS|$T|rxWj1;&fDFqX_}{cS^0Y_^X5AU<*V+ zse#9o!U=0^Q5*~#NPtdRwgC@w#})}NMZK}BRbgowCp$V(ivUNzN`X438WS;4w`vR3 zRe&{`7PfwKS2hW9>S7|fqX-KmN-0*$#h)ULS{%pgfCC_q<7LfASWOUNFNdTOvZ%d% zMC6wpO`XoB)a@#`ZARNwGq@|Hze0TxB4w`ml`s4s*@SCwiEolz-m&$pOnx+m=rTFQ zGGmMJarY7nqhKp9zM~0NLE$%#0wc36D!<_9hSV?e(H`9zhOf=Kc;iqJ~2B!bJ z)}UsQBn&|WpIyo=@^;D$&3h&^=~2nS8hu7D+p&PZsF%S-ZX0!t1MhW)?~+u1+kqW@ zsyVb}Md<8moWc4QGawx$pm?`e+JUZ|c+p=cVv}MO#3*GmJ1w;?$slSPnn#*)nzXS{ ziOA9INepq*U`&}VlAjGn{Y>URX?MvX@&z+ugtQ4^M|y#C{f17g?ZQNv8Ygs{Es2sT*a(2B z_3sFu1BxFq#LH+sYa#uK@I@U38|d~W{wexkt!`~%%4u$! zIF2VcjyI@nhoH{hxV;bs3 zkJ9BAbO;Q_^kJnlN)SbndvvXqpn?ZA5m)I^%x=r0IwfZ}RTj`K!>ew35gk4rJ5~H0 zlk&BgTa9U$SD^Ud$L84i{{HHcbX5v&Y%Ge9z{IdyvXK{f>T5N%YJ`$H>|d5VcR?z< znR^M=HyI(*>9j6XTI0oxUZFYyY*ZY!eG{H*ryL@Q0cl#Ec!!qpEV>VtUvhu6m+ z!Ere&l~naOovV;Wt&^A>wym8SfJ>c8p*z(~aO%PoXOjXHgh+Si5J;~dXIJCg8vMH4DZjR?QUlR(%XzdAY0%i9IZ|NzWF}`ILtn+wHq=TrFLs)YC z!_g*cNRVm5`Ch&qjbP`>VRV5fG)CFWY8gEvmr*vfEKkP7=prxQ7^U#Cn#JQs$CAUl z*mK>fO%rLk3X$+{GnVIClF7xh3Qzu;{ZtQDp!k+wCZa?P&B)Nj@?N=8iL#UCn#_l<#n z?Vx`w{$uLD90mXLOC_#LipO#s7N;kLH-t9ka* z=2qjBbE9cB>^aFj{;4NogL391?Du^;QVQh+lE{dtPqk(Rp0xhd%!+)GmuNF3dJI?O zI3EDp#F~zA;Q-6uyHxnXe)9L5L(k>jq^PS&-jC0tq$ZNyJ>W>d-q*j!%wyM-$DQ}X zRkEs7#jdF1Actq|M+>RVk48vG!aDsgTI(YmHM$sw32CdXw}xsbZdCEvmz{Rnd1tOu z>$G5Rss(pp3+mjf!Uc$#3-sz;oezXAXi6c5WT7AS7VZTv~6cl6d58X zhM|p$yah?lfUwpkjuXprfDTFGtg6~xJlW9?sz9~i!>EZGcSjz}9CJR+32amXG#2LlF~1O^HD$TW`*(38^bi4e)Ta$?MwVtX`pVi=rlCRmC-w zPa@U3Jaer4JkM(o^>bH~*#gnFBC^j0W7nU*zAHzVxLp%ij#TTmH#czxvfb{Tlw@Z~5o& zxIFyu!xJ8t-+`l)Nv=v)kUe>~G9|qbku0cm6(gM#s!k_V%T?ii9L4CJHd&+%j&rIp zA)721+6<0|g8|NF(;p5BV(Ackot)0PASY{`QWoVTW$k!GY%)$qV;-T-QrQ)w?|WFG zD+3*+FhEc>`<+qJm~bG#IJV#DG$!%a=xwQvlEyMl!(zt^1VjMt1iJ7Z%T!@mhOfUu zBA8b$55&I0e1FM&E5gTq4D%d6!K0`|2SPC~h{f-q!oINGaO(aD($mLGs@5B%m2#f@ z6OS|My8TEb#G(z0&XgCoc@$uZ#mqx%|Gr|Kp;x!q$g3z^-A=FySS{UwKhPhDBCWT^ zA4pdvtHMq!xGbA3EZIRQtA+V*McBjlkS;ilVV#Wne2dlH3+T{Rd4z*#f8qsv+5KC2RxtzW0FnpQ@{j# z?%>>2tnh>%UF}>@U*!3pQbDb*c!lt1hx>facK=hIV7XvTEZOzAj%sqz?jy2JjG+i z7W-u6DSJB!!O;-d!7MsmQKfef(S;f&88Z$^176nETGkg(4an-cWWzF=RY@*uhUEJ#BNnFDg9q|m205Ic?YX_{-Y+k44(dC7CNdy_C7 zH7VBbXGxzS4nBABGX)ng%&bxFacVY!eFicNhFh6bl0*4EOPMv^PGfPHJoBUu5AngT zjkSgUD1{ZNQ8rlQ znd%&lIEM!K-rx|IpMbXT8TJn8V1|(uT9JMg2@>}4js71=@m|;uyECo&TBeYXp%7={ zb$|c1c8|SkmzmPlG7($e@N5<&iCZ{u5s!I~dk&NwUqGo4j07U*{Aia8b1IuB)(^`1 zJ=PDV@OzGa@TPOJLg)8AYdJyjJ&TfNZ!^f4p+kUkJl=A0RV7EqM@%J&?hDDlc~@ND z#gj2w=f{KYZKv{}Mx?>nbxK)=AG4lDQ*$~H&g@ySGH-hUlibD-&*yVF+BAzc~!8TjIoRE`MH1gPUr-w6}SLP(oU?PE`;W&QKbIp-*rV2NR zJa`Md>j8+ttFoXkmIXW&XCuQJe#Cx(sF7b}%x4_UPjhBXI_xq!rOE4irjxLFno;w3 zI5*V@XL~|xgeak`Bhm3VYod$U3XOA?oblC#C0?kaxq^LhV$L${{7eB8YnEw}5yA3& zohD-r`y(7^my#^3Z5%*-840)2X>ZW2aIwJs0rZ^9owDJFkaMWG>N(evE3wm!PS3f@ zsTs)cucPN&V=1$G4!t((={anR{W-xNQap%Ub_Y6f>rXHNddFDntl0Ll_;${^Eb?8X zY)T)SzTPw0_A;$|+(Vp}lA-H7<$zku$#%Ht;v{)Q+rYSUp4NLNBTw6(L_$fWyunl6 zs^n!)t2_3*B=>30%YM&fAhWb`DU@8~wd)v&+%# zyPiwdeuq?{H+d%8X2%8s*mHbt^%UJ&tZek;>AVv2Y9TkdTg-#2I9(r@*IEh%*wj#W zjI}An_Dn!1m0Z5rL$fAA--}tw95&k{KPebpp{c~)a13;aWfl}H`YSW8KmToqZzlhp z$Xu}kg*K8oio%a-K;%A1H6U`TqzaJsFqvJA8GK7&U|qyD1zW#)Q_OK5X6d9TP0?S-E+?cExV%*_*5}JuS?xnL$9R-0my}O9|rA?%`qxNi;$Tx?Utmp$tUCHrjk?Jp}Q)bpc4G6{;@Yk?6s#VNU5RVp(L>Hj|GhVGqG23iu z$Yp|dTupojb?=rPyr3-v7ms%Mn+a#pE6-nRj%}CL;wgcarltIrHhDYS%vW) z%YkO5w7J!|5VIY9q^&}CwaHWyNv0nqVR?mx2i9QyvEEfREz3fpSQ_ERNAd!vZc5hV zcdKMAauTK_OoC<}g&8)*Xdf_)BQ~mpW8JQbIX;MSn{RiQDN;p|^S9KA|4vtD@c|sO zXEE=GR5khonA4Vdd4~3G*k+UEHZ9CyFIW2#%2Pn^q_V3#4Xd-$bV-4r*6 zye->X9IIRrZnl7SY#Ag^wah8biM7nGFmSSXpl17kpGMsoyBR&LY26*uGn{g)6-$qj zZDCJ$P9mL3Q0@j(V2T-oUbw@t=|I;V8Buhe(=bs48i*SMi8+wjT=*!e!}CF6KRi+d zP(L^PB@)>YwE<#|usQ2U6*u7tr$W2XkuZ&IVnFwER74G=rVSg9HKq+4JOgoSjcV|$ z@XA>e(R0?%V!oH<)29;5)0TifbW_aL2!3DzpYnAR(xf`h$_!WA3s<1bA;a~=K>!+C z?%^rYo7u6g`O=HiOP!WA9~J;Ab+XMzpK^8Oh3r34G$S-0<^WDBb(^nPVZQfCC#HX# zH4jzTs1aRUdgr{#IkQg8J%7mFtO_F5-IJpQyOX%iN$e-aHuY*l$-qf>=s3W(X|p|h zkdL*Cb)NSuwE&CwN|^;T4~F~40Es0tzOJUT6c9yfJh*5$Su44NlrT0XE|?WpLvc7`j1Hu>gcL}*VECx z=m9VK6`iR>Va@B1s{bsjvp$h1%=F=Es2A!y?|PxEQl=#rDY14u74w7hIoDJKWHlQQ z`Q#dbeGNKa``9c%Bw|=AJ%QRtQ<&>V0Xmk<>BUe4Iu}FH!l;bTx-jy}EcD9QVyM`r zOCOelWr49UQ-4G)O1uE_E$xycp#4m2;7_76PRQc^q zMM+_TTDVx9Cg0q8YEf7%UWzEgPF?Fo5a{31wx{Vn+Ej{9klPJoUpvta|w0eOjW`f9`V!iT7RjdHMUo7ZKTzfepXLkcKtxb>I2!cfb3+ z?|tt`{C)rXKltHa|IObbw4p~f{Lzno^ke+}2may!ht*(KFgutN%njxR^MeIJXRt6> z6f6#w1jhx(2TOx4c}@uYIWf>@S+E?>Nx{j%DM5E|YH(U`dT>T?W^h(;wmm&TPjF6f zu07`k=LP2n7X%juE9B`7dV`CCi-Sw#SsCzIWzVGnpUZ+iJeT9SBDgZRD!4khCb%|O z9jpni3)TkL2kV0M!3{xwup!tO+!)*x+#K8z+!_o7w*|KccLba8+!@>z+#L+!xhJ?c zxG%Urcp!L?XR%bUReD;p7Mwv@TtOb$@ueZAuk>ssniK>?dc!g;7UouC3Z~LO6u9*x z-m&Bw2dtAt2XJ6GHQRUR2Aqo+8#e1_P#nR)`Yv1+(C(@aMxBs`q7wlH-2E5 z2f0ZAX;P%m%8b!;*5K%H!fJk34{O1HB4MOD~B?qPBmOf{aV5nkF#FYTIE zS@GXOc3AVlM9ukqi@KhA-c_F0oXu_)1`NYIbJkRFd7~$aykN;{Zb$VNp(QJ}phg$9 z-9{yP1L%R_a1h5|QjL6-b7(T6A2MPK4jI(S2;?3%%cEECnnY&ZL%snGnrx~yp2DQb zdhJ7nXz&cxq+jdluThHYEPYsA{=%cBpPJx;qk*`l5tb3SDn=Vqqz0$lt!kHU;bwm? z^$!Q5%i^TBWL7iRI~#Wuq|L7<8)1C-LbIW$p>&h4%Vb>(K!;IYI80P&#%7FE^$CzL zy74j-yoJMeHAub{xPj-9T;9`nwcxh5R8k895RjLbse$ov{VpLA!v+3DY}&9X-NTezih zzJW}>)tYZ}^`%7p%&_47`;JV$Yf&HZlZCNDjG}kZb?_RDukb0Uru?6692`p*KCvQJ z(fb5Nr+lwdwi{orVlNRAaW@eX=yjdh{P%nQGj(NhB}FL`=M*;NiS6o_E2KB~^}d|u z>k&_SkD9_Rm!!3>VC-9&j{kGdI!m+mDab3cM%2eV?e*GGE|X&7bKj2CuqS;?$zIB& z(jkGfijhN#*Q4&T1T%AB8AiTu=@du9(xeuiXnT^4wF-@e)guiIw^BH+pd!Hj_4>?y6R z3(-xnZ)7g>Vl{e!s9qp2h1JLHbegnJ*rR4R=k0kXXaP9RM@DJ8EvS5K+N)Ayi7ff@ zrdqu}##-J^GFUsAbW37a49QcFz2v1@HO^&)_bGhKT%{!3@i|(BxDT4lI{;at^Az11P=HmMbJ)h3vOOc2;hN|JVK2z$3Cb}v-I8lH54BaID9VU)S z+{UkZspg7wCM6T6Im`lK-yH1t;loT0kG(tnCaJ_bqI` z(}713wn5zB)D~`CE;8=-@A%?0^1DO1Bqwx#&tFc(FQBk>6=qrZ0)$)tl% ze@9eDH@zILq0WVpk9|nT|-)!TO9=P#zHT6wT~}<~bp2!et~B4xg0tc+$0q=bG=i%pvPU z=AuW|^=VaPfu}W>tP`Y!&YBXSL7{Vd37wwHO6bxOpn9bA-L5ou3p06_N{NdambfUB z>-ea|&FMNV_O#|Ccbt^)WK9WazLt0{tJ4zZ@=71)3C#O!abi5N0kJ`gz8njv=!-OS z^aVrIl8L7jnqIJlmn^f&wzvN_%-=*Y_1{3KgUgZR0kUBE7bLdD&gWBc9Z6tJ(-*-O} zPH;jt5*BF1N73U>^t{%x^J`mnnJ2K8oyP=wl{UA=+abO1#O0ws{Mw15EKmo+l1y!K zy}_J-(u_Mwy%1gylCpl>jN3G@x>P4Ug!aa-h=zi*ry4)~c(&hc%?S`YYli+Q&XZMG zZUqU~E>8~qbl30pTvk=w5t8i0r+NabD(@yion#|N>NdV2jLodcce>{@cKAMA($KH< z49{fT;9`)(h&t2X8#6zVHE1=v2JP{rLj_rF{a=uh4w#UhgQDJcX0xA{$^KtC*#{(h zS2p{Fne4|TvJ<}nbPf~ioj4dAgxy&x7iXyaXM&0fkY0>rk&XC@tJU^Hr;bP*#pe&vP#qxINUp>}CrcK^Q#pYKa0UA+Z$%;KqY^b~ zwQiNy-sB9)H4-xqj#|uI>a;H=Pk%&Rp;elN_mqC4IoQRh71fAEnh&1Ubmg6&YkSw$>#%9wls!VbX&DG5F zFUV60OX32zhCj#^FV4(0&WzRbpHN7+x}j{j)-zcR|FNcqtNp#z@E@dxUASPPvXWdJ z1+L7&%)ZwUSnC9gtG^>xjV0dop2@iS+Zv+l{JnAYH^S9s@nRt8l-7HdoXa1I4C>E@ zme}B=%ntTLkcwnbxIw0ZzOiIpw6|aNX{itN|Eq zfsk%VtBrSfQd2g+NBT=@^s;oOO`gf33b7NIvp44>vZ;<}+4ZF~gXEOSSBa`?0hyA_Dh_AQRn(!W@_(CLvWUilkE*mX>PF7BD zI9eX{OvXxWOodm`NbH{9I;qhRSN74x9MA1nO z!VAn^dhSgOBDgk5G_!7)EK>d9WhZWS%P+zhQHX;*%RKrP>x0My$=3UgXM9ALJt5vF zL}Q;Ud{W{PzlHs`XH2!PI(#4o>K7WJ^BJ^txxVUUw)mk+;=p8T4CEY6FZ>6T+W2yf0vj zXEOQ+OZ{0Ln1NY;(1;O8wc#6{+loAhMV{4A?ETI&S&^SZCa?0F{@(gIu8)#l)PGB+ z{i?HLgN>Qmr@;b;bjfxYD2Bt)Pqx4tYSmP-a?isb0u z7Lu66>()lTH9w_)2~<8j08FQ^CwYKNs zmawa#3b)!b8U5{RYQ4taTdgJXqrZrZ5^W<7Wc+b&sp@>xSoQlY`Z|)9pyp6FPaYdY=N% zw^N8t_CkUF>QIA64@ ziATmimN91}H_=-l!}Zdyk<2dqoN8R+b-Dr}a|{u{vm3R`A$p0*T@NlE=6m+FnjPW+ z(lPC%nm%{7$n%+#DgwktCv>3>=^~DYig8FI3_6OHZSfht^f?}?C{1Ec0hN?!Sn8#` zrQES+p>mP`8N4@Sr@#K0@NV|!D5|oya`XPIewN;d(w|kLPexrJroG2Hmb1-26Zzg$ zZn0a03A#=XT)GuFYkV*$+bhBQ{^*U-Us3=3P&$vK%O5Xwkv}<={(eSTsncVh64wbZ zZT`xflq-7fD?U#b4)I(k_8q>9VUC6NN5I8CC;Nv`1PZFvr-Q4&n+_Kb^)!>Sq8 zep#lZ_t&WQ%!eQ}sAwGQlM3Y&3H(Z3p^|g73|$aBOp)=T%0hbVoaV(^9RF?Fv>D^Z zR6jH!#EXTaHjZ0eY$*GJJqV3Dt$mi4Vld+T>F8Sf+?=ent&Ip6VbAQe-T4B~XV)t5 z1Y5MEgsP5J=4R>B=}@zKqAGfX4FY#+?dflY5{LWLt=rIb|6d>Gy|#%6&{(=UJxp43V!Bs-5IjSR%JizsGStV_^eX1VX|}jmRrrI*qnzHPC)(cAMGT5` zzNnOm9s&Z3DIGo{Hs8%f3^DaBqY$W@cYO~6H7jEOkiS4&&khRsgZ{w37ToPv`v;98 z{pXQIG$J?RiQo?bMRuMTM-o9Wk==JMm&+ZK_=lj}H~>_0`bUobeDC%uR%!i})bw>Z}YMj@)IPziu;#$${VSdJh31y7~ibqRV=#S6n z9acLU4->(L5R^I^!{@j%?#BoTtG`LhgZa*c$pacj_bMHc8jlM+oiS_appIpO=q=1m z9Z8wU(c>uA7Lqqx+wD+Wja-|oty%x-*OrVQMPrT9WtCBr4n&93066V+T4Gs-U082j z4r9u~tSj-qGm_+#oUB@k7Yj*DM!I#j)d}Z>*}J9GwKJX4MxA>RJ{N5^WLm4_lN#E* zMK7h@%vJOK_`J1!#`e7!L8(1O=l#!i;)`@i`nh_O(m9^gS{f!|2Lqe5bybiHa03K+T+>Uce4h57)@Sy%PoP$K1B@@tU7-*^T23;p%rOq5-x;#S*QGrQo^&ZS8 zevlFtm@9}Q(L@f{wVu@uS4@*p5jz}CV-=2++Vt%c%8!bZnb(`4U-jcOC8G*b;Cw|HTz6x~mu zuzd=X&1?BKRv)(V=Iw^^rlzVo;KUay@lTLaR24X!U`nrSVi9|L5xvQ-!PL`JWbbgY zk7z5x6rOGTbOhHsJ)1SY2F8W-sBL@(Oy;$xPm-}cBaSIaR_{?pL=Y~$kwcj0r70hk z(zV}tGY)!j79i>)U{ab0{gy`sn0F5)e-zqwVrC6=zmqTl1S`4!POx} z2nOz8$UUjvjoC40Bzyi-PRDGlBoMyb(C+uNXEMX-hgd55&5TsPdB#)PKH+X8e?vpx zf@eLGk!NID`aX)Slm-Ffv<6{ggn#XsjJz7|vk3pjQzq>8Ui_>6-Vm-e(ZA;J6DIob zl7`0a*FBRVj7ykMskLV&jooP#X-g&-4RYzD%fItfCO@#m)p?)ONM`)K<>{^Y7>PB! zs^QMf?>&>@%V;Zk$k>AFABuk$aq_vUjM<`?DGYh(j@NAII-?>F^1(ALNPEF18+{ltw^yQtv0|T zBRq0NhN?i?=EZ$geZ$wrlv=o;T{PNsoRewNzOgwN^FCV{Q@$$O8YDpDhUoDBWQyKJy9)fX+n#%ZK?;{6%_R&3L$+?Hrhg3->fvg`g-LFyAVi!J=`O z$}>swLYwW_=9z00S2#7pgOW7%w@d7d?q?!^)>vg|3?*Y&WlHDjVD_~N^RrMsH=wCM9sq- z#8x{u=3%2-B5YsPOl(M|+IpSmvu>_exFVY>!kVp75QKgwVS9BVNC$JGAcOa1ZzbjD z-YIrAI<1WSe0Fr3UyzWvDjpJ2tXE>Y(j71k|2i`7)s!(w4A||qh^LWsl^O&^u*i&w zAJI?J@x3T_xVz0+Pvd*>en?K1z>^tr;(K*gBJyYHdf$&RarMS>lav6bbI#!yCA-WidR%p3|U zXgv#P9Qr5~^{9Ra-jeFT^hmA@>!h9B;gm~)WV!VXwD=GknqBiK$|Uw4%05@t^lm)# z!U4{ohv)W@=HroG%$*5pQgt>d0@dJxr5ec6zNTma@wd8O`K%SgY+zM@a@WU5<&uVVu)b0%@@``-(El)G(v*sGS%` zrloF@;yN4N$RLUN8wyec=MfH%dAmuBO*r5m2DCI>VLS4ES@Nd+@|QXv7LD*rZ558( zFSOx&9=9r7vpvDnnnd{`*%=ph@0G6JGEe$TJz4(+6;_9(XrAN=jV2B5zzmI$mV%Ud zw3)jUWXPL}5zd!_XJqKZCs_%ghmqp+whGA{+7^X^q&2P>eL-~1N(WxkfUHfEbo`{@ zhf$Sj*^T|;QZ+m;!vVa4dD-%`SQ#jT#6cjT>Oy;k-#^>t-Vx{zx#qD%+pO?XR%(BO zag;+fD-4rOdXZ-@c~(P5HIykGC{t$@jRA3nG==_dH86#h4OCetxt zdQ4K?;0cT?dgg{tH8f0Y^h|~t?&3}i23oi4L!Cuc_t&zwLVRQ zY5&waJ*C<1#3}gq4awi-nT$M_Jl9|(pEk=r;3QoW}uJuyG(+2-mdw0bz7ePL2erl+aLJXdBZ{>yFt2u>?lLH%h# z7w&WrRL2u~uOh6tS~%s(cd>Eu-go>(ch_)n<*p`r@p}i)Xw+Hnzm-}p$*f{`TgA(z zDBz&n=ZkGE=`J($c183ZXji-Ar?9#r6LV~SH7>x+SCgQ%^4iw;^473OlaJWHYQr;$ zl_%Ngi=CJ`t#*j7>k#Nk-_>T<&)!##_iPsMuM8e80S_X`!`|p)DeQ?pwuD3csP4SO z@=>f+z6ui+ipEyCriRwNY2jd$UDQzc0M=fSB>f7m3p$kHn+A=Dj(d_#?1MycOXJ!s z&(!8a0z&oTh9I2c*&ZlNE_4Lj?xr@!oJKp{)0zcsS1DrkO*NbRX`kY=JexHSZR`6K zcDF6p7%FPvC$_qLx!y{Mf z){|xFT2E|sQ!BJySffU!yqnfAG_mk5m*a)EUQUPAVrs#6oflwBTG^_jHl3D**L%_{ zb<3HPAEv(83Q$g10kGKo4A7$4I3c`ma2j_1y!yQJ{(0m$1Uckjj5o>#&tXyR#FA*> zd%7Dv-S2cw$!SHzg6;ipvj#WC8k~EmE~amody&fytKMt? zq`EQ(J7-tp98YKmhRwgu*qrZaZAihDITp1hE6Xx{pvUzhP8}x|oT;csaIq7#0l^Li z4Td>+cA_NPVAMP~0_gn)a#PCV82kxG=rB$*W8iqF>BeW|3;WAzD$>cNKRvs2c|MDJ z$YPEn&5lZZbTPF}|&`3;w~? zIdU*X^enbQPQ>tTr)BnUbH`UQ)(K%rD;nmlw6i4q+%L0$? z@bG7G4|D}KQBsc0sVcGTrL@?94M)~Rv@reH7ux1%2bRT}^vqZ`!)~c1WM&W-Z}Y7{ z4AXvf&?F)3Pv!PCbP@XO@|IwBiNV)0TOv!Go(;?$&?S(LHSH)?cqI$gTk6Y-m}uh7 zYsh>6?{Hiq;iJ#(M`V;sPDMMS4=uJfb@XA)D@u~3!FDN!W_zu%S|wyWkf9w_NMyTY zG4W0fwm1{aYAHGNERhb4IzV(g5GGKzQP767pq=4q4K(nv*+JVK3_}DcXysbaCgB}U zFl0e1<6NDdH>S~CHy%Y~31~WRm$}E>0JJG8{iXsm62a(BX{&q4uSsSbfF?C^&~kw2 zbs!8hdW2$!Bx}Ic-K_tQx_5!Iv#Rn$&!bXRNr4uK7zN~1B|ydSs0fjwMN;Q$Y$IxS zd`x$`r)MT@_e^J|XS$iW_x^tAxd|NetN?)!0t9(g0-C7A4v3QQ3=c7YU{uifXo>h} zv~5g3P21Ys|9`Eu_xjHMzH^eG-rM)&2X)T(?Y;JE?e*Sk|BzuHy>>RSK3@A3`~#Vo z3o-$ZXLLW|IF%3z-pHYzC-|N8M$g6&V(-oM)R|&TBot#dN2xB+thN0G#DqiqSxCyx z?e->-EhrFa9#+0pk%-@Tev%KETX3kic?v4fP{`sh_O*m5HT&h^KvoB_AdNp&3N&or z(E%WVk94DEqayvuRb>L+h{tXbN9+eLIpj+-ACx#7K^=;MtCO9}TX72P+%lslB~2{T zmoaq$Qe;;&vn(CIL)`QjB@?kCP?}#^3MejxrKfcHa3Xq}^sB-`h-_nxKAw8C6t!fN zZv-GDu9XC}JOCr7`I(-!4`IT6mY%k!(JTI0Iz4!vA6%ZH7nYc|2Tcw$rkD#vq9x?q zs&KC|SO$k#!PS_c7Tom`xU-}r>~I10i73dZnReKm)JBgbn;k==6fiIkZHZ>N7RcY( zqxn0xXR;hrCW%GGt%5C?$%0XFxTUZbdOxND6d9#ZXR=U7u7mH|&Xz(Q2FW1k zyKRk5!?eIxjp1n$VXAl%d6KSCy)i}Bh`JNC0iZ%|jffUlqh48~87RWQ0%Y5iDvUd! zIsjK;SfjeG5le#72H3mt;t&u&yXg4 z*RJs0#wGP17$2c&ZlX@p;@w6uC{D4 zQQ2hqgc*>_*vdmV5(*6XZ~nxczaiSrB&LVgo!oEm_c@TR}{I%K^4pfPyX^rz{UhS z4ow1LjbDHSL>MI`fN>%@641-@9V82#c7N(axv~|Z=XO6=P05C@+ErfCR!vMp)5}(^ z1Cdz2B5wjx)ba*4cmsvCT=6Pw_mI}3oS?r_aT-M8_dp}~A(g-<9CW3>fgT4&R8OT8 z?H@haD)RJeVCCGFdNzFmk#JK>iYJu3qDuzw0!h$)%axpiq ziC0l-TGNU(jj*UtZ8>}d9hoE`-+3DzoJ zs>_-eJK<442`{+P`(h+xW*|0;lcHC9QR_CH`hgyXhDQ+ftJVr;c7O+8#2bz4Mt>Bj zQm}MhuJZ=$MAwiGA5%ISX?5w8-sDxSZ}jqqzC{BHH5^LuvL=o8p5 zt;1K?JGAW(#I}(ALt-2W?dGW>{;D@A`pU_ngCz=b9MTkFnv6(zovy^_E^~kEowvm< z$AIjthc9Iw+R=^N(B)V%Je44w%zVa&W!#RweQdlkLWU!Qv@OB#z@R|U;qYzY5R3~U zQcs+M8bOaeu|QWEQAAWj=0nRhW9}j`{8S2d*ZaLYwm@Yd(`1(I;1Ho{OiN=WC3!EoNoB zmgkUgaGFAZNeC5{71n0KHUJP_YFUpcHD6^j;Jrd;-G4!ytx?>t;TNNrsIfwc`)@R9g;;c5tiHwoAd2f=TSPIcf= zHzgd3m}wdhS0T+wv%D26#kzgNo2wo$9Q280H*Sr(l`*1RIK^u3=^!?iryz zIQEFiS|)SB7g6Y=bl=~69Ueu!EnfjDJrF+}Vrifla1(Pwa}a-tBGz##EIn16id%db zIu*##LYyelP7C12?3SwGK+OT7CXiE9@6Jd#nIIuY*%b+61w+EVAYSAY;X-W1>Q=1w zctsYO((T;ZU{V+Q7yMl)=~ zHjskwi9~q0Lo#(mxzq?q!a23E3u+h2->k7ZYpk(rHI?$91Y|7P_9IS&=tpGiJb4(X zQnaH+jlGmWq`P8+_eyugw1FnAv2?y;NYb)|yNu*XkkG7=!y`dArY-cBlc2o1o|2$j z9Y)M~*EZ`;t+sg4Lu=?S|1d}RvQ)vm-9Z&_|0gxzen@WDuGN7)9HW?CC4t}vybIm! zz^b+-SS?f{e{QS&V8rrPtdLTPR4rZYMa^%lCXW8>Z4!Ns}4Ik=U)%R&VJ5=sI zEWt@2GeITB{4<{78s8xG~Ama38W`jSGFQ3Tc~M) zoR23HGT}vSp(ruBMuzo*Vb~|x^}{)aORK#vPd&5ANAi?2qmX(=Sa;1a zjj=auZNz+G`|P)}yYlRN7O|s*40pJpidhK{yF8m5)g|bdlI_J;k|VM#*jIc z1%h9u@{NI`2^u7by2dLTqEff-gs6ltMj3<(wC3yPW@&@1L3Wj-ovXYZLn9srD4-D? zfM{c3ZU@NP=8!jTfQ7aJ@He*sc&|4P*|VompU~G?cp|6lIVG1Y6-rm-#hYaIrrD2~ zZb$=0bmDQwQq>T{ZIh*M_HmhNXyJ@|FUw!C%^Le=92nrEQ{$7;O8?sf=i z%UcW8kJaib6J<#U((2m_)kULemPgEWc$|Ie#=O(y>|}E8@-~d$ihfT08l=ft{AawJ z9lIbs&Q?8=Pnm*5cx^L(k5|e?x68UGC3kvBJGek$D7&%il|#F{l7S~1C-_vVxYtV> zcrixDb-vHvm!|Z%-``vOyrlH_;V1G_dqFa$2fR{2lzF-D2o2PrXEQ7KfSQTtQEbid zO^K};0UMUOqnmnucS5y9J=d5;J*XojT~Fx9SMIGHI}2e@D_arLZe=&LBO#J0S}_^3 zB{m~S&XQ(9Bgo+P?Ii5b=;>* zDEk4W$B!;CY#~7D0TlceDAf8Gt|VuiBwRog!Cu@)fKY$HVXUS{a@Mm09w~p&zb0Ww z6c?z2i<|%@K(=P~Vu+nbfDD@&Y>%Cn4WO~}V%)&;OgF`b(I-+{Y-oD?O6(cg!3RSq zTQxfnzSs4DwU&?r*7`N+B?+}C_k3%;Z1`d8@?HwLE$tK;YqXIt8%vWb2c6;h-Ad zZOp&RHVN!-Y%R74`Z?Ok(((A=IHYUi*!D+p(_6HGm_$3MG&_^+EvYDMdxs1S=y}M| z03$W5YE)<$v?)YiSiQ-0nzW(Sx?iAD3}8|gkp_g!@vBApI+Iw@ik)~t!&-^AWs^W` zzMys-vH5};v}}j5%3&Czp;%sa*lo3!%=3)Pug|k24GwbfYrIk$&w%MBA>R{TGRHHr z7k-cjpB}(l>y-?=_^KnLxy;|^8Ogez=YhU1>B;3@slZ4+Mn-bD_Mjjr1FJOf9e5SA zG!1lMh%n?}%yP zLkx@fOjQ&ZvJ?raf`Qam^EJo}SX6<%fAp ziLGWd)-LHIIVCT0xFlwbIPGxPJ6uC%Innt2YxB#UdYrEIN`^z7PBd=tl27V>qvD*c zxG@ht4T-zPD;aoUF60mi-fi@fwgW`w``G3@`2M8QwO+}I=k;F6 zz^lwxJodlIOWLvjcA4)6e_tx|ec0dUx9X2Smmj@;_XWSvD;2it3)8Vx|Ltd|0de>v zkuymgB*sk>#3^N9cJ6Rs@&x^yc;ZQKJh`DsX-+-$w6e_HF)z)p|2i|%yyG47-+9ry zB9SS}(!D$3X7531&(bXsyeh5=U$^}?w>DW7HT2ahl)Z`jV*sS%-N5m>a(k2&yDcBT zOHVeH2)V0Uu?HsPUW6XF(rqCG6#3o>*hca!TE8Yz?K=`l_XWBL-#!p~(NL!-19#sp z-4lT$bdQgbQl*0ozP`}CUoYz(<=T)?B`=86hCQBi@0;u%vY=>OJsm_BK$hLHT(1Bd zsx`mD0_SrcMQ1-pe(|T~$7K-xTeZWxpDHK~Hx)X}^d(_F0sV`Fj_U}+Bn(43k>wkf z=WIuWt}s7*jGWCB4M?Pg3JExh3X>q%%M23|`n1_Qatk~R92 z55RIypAMY`w?Er5y$OwH+n!P7+llX|3)S8vON&9;c4ZpI5e`QP2o=h3Q8(Y5CfF-l zhM}e?ANjSo&zmq?(y4$pr*eDMPVExTDQv;pNCx+ygSbHvkjDeiqiu1nh#6XIeYL1S z0Jd6+6x~zt;bDhw#}9@G->2zOFJMB+$pd+O2lxwW=R`DD#Jr#ed%MGUtN=q&AaCm$ zvG-Z8WV}11Kwg;4(c@myL<31?@_5%2wV(4!2A=jy?!|Kw@O!+Zf#(UhY;W7W@ToQK z39n?}LkeUwYeymfNiS*OB}GZAP3lX*KjoDSJP)h+jDOzWn>eC*k-wc6M_!W*^l7hT z;)vx%mW$7`PaM+ zV+N4PS#&=y7vUG!tZ;q`%2;{;7|f}#ldtC^s0dyi~_I2@UoS2RK2;soJnLw**p? zt@8>>PDrH!ISIL4U}fMaXVrN?6@SLj)0##(%1v9aIGg zpD{LNp&lR+eM%te^nG=p1A7v+T}&=&gl5kdX2-6k5P_A%@z=Klh3Y^d3xU~BWy0j% z61zETAuFmyS1-(tT5Wrbs$Q!lp;~~-uS-9GXbVL_I58QAfw(M0aR~VlUPQbDg35PB zeFs)(0?Pt>RVJ^jZpA?wm)AfVcAt%z@3CYA8soUP_pmLtnDa9${4k7xv{~Ysn7TjQ zqozkqG?szU4BX%ymge)x(vWn3+3JBr%uTkfczAzRE7r2Z`*7d2G}ZZz>JTQI-_NP- zByYuz*v&Zz^C~BI#o@Ap$Nkk@vs1sq+d@NZS(}%6n|4lKsTN@iZ2@TkrIKSypg#D8 ze!#dPF|8yM7*r>vX@M{dq?G_FkO?WasWeoio^k9O`ot(qlEAc}hNR)Egz7QH<|JlB zx+BF%lc{&2tBfj^t*0 zW~)d4&;xvvto5CSc852UPn1x$s=A}TJNW;RVHNvxL4})>TT=z5cAj8E2j~I_J%2(*)IF2k%XGF!Sj)59kgKF6ILeXo-F; zAflL@L~WW2VJLWvhwZ%^o;;xr?`H$dsGF^5#Wrol=K`sjP=~ZzZp4B`j21G7#;pYl znrzZMtknfr=fJ$kgk{uCxFbO;a2_XX4aFm4i?Fe$h!Y(qFYY}aLV}deGc_2-+}fy$ zTZ@nv4zB&(8VJuU5KPny&%B1j+!wZqH3H)qS{9z}T}1R@%7Tl52rSi~BTTh0;^ zLt*j^o%IqD1H-7CG(s$c%nt#~Mn7s9#Nw3fRW7%XnuWCLu_Nu!^yJ<5;GJ z#2rjJ?S~W`C9wv6!+mbX)`r@Gc}s^_!B8)QO)zld#ijk*?EN!Z#xD!k8xx_jx6=NwQeBwyP)eey?OEGkT-T41N!INwdh&tmS=v(BD6z;y<-J z!Sw{$9`cd~iNQ|}X}7;Ouc927h!pi=RjGq6C&$rdi#-HU3q+{lI%CActGo>(p%R2MQo^!x*mvY{$ zmr_)ybx08t@ZjI#U*P5q)rgxetipOjtufsDhI?oDiJ|b6SS3LqMb^BZUxijmt!JEZ z=9yWP2>)f}Td+xbo=l$AS-}=_`&wtz7E|`bUcr%07|LySm&wuAT-+9qR?|Rp} z--FL@{?>x`zVH3-fBy&m-EaR++#?WYi#K-fOZLg{lBygCH+EASgUuVl+sVWQG3?B$ zA1r1=h+u5@5DW_fxr-NKuWXeRH~C>k4Pp*N0`8uL@hE*NrmZPJSU8YXAcOEQJ<})f z^v~~5f>l#3k5m zHw*6wRCW&^1e)-oc{owcWC$)9Pak1sAm30={;f`9&(IO+`}vgKra%YdiW*>6c`eaa+{{%;_Sg2w5w5_U7sIv8U%qF1`W)A&--zxjLS;n zGKNd2xn7ModN0(ye_%WXz+@HKL3mmcUjH%gu;r_GXPC)oA-I@bT}^MQFdoh`r5!0&eu6J`J9Mr`AZ-CQcMe%tEJGg0I1u>z3KcJ8)1 zP-z>u5s-ts3mNp}kawJ*w(-eC7o7Tc`dH1Wf1$L*tBjgIq+ayv+SdhCGcnu~)pq__ zzH0In?S~7hh?@Q$OdzH^Q3o0qCq!M4n|YcMUX$ZE_j|ja>=z}J?`?VmPH>My@ny^0 z@wju4sS7k3g;xscL~s+`TWv~@7+52I7GlJ?OwA&Hfmr3kf7H8izjlKVWPTMa>f@*7 zlTaA=ZFbJcbsuvuI~2@$0!AkdC&-jmd^6IDeMTz|23oP757ZLNzM?{cl#hE878i0Z z0)|%U9rHX`Y26l=5sVTN!Xj6Yy+u|D`u3!ZMTkD!O0sFrt#=@Oldx*WnZO3YOonig zr?~VqedLz&N$;IqFO9IE*rRR00>OPr_#oy9nc_K>J2k@fO9Y9C9CR?-QAi-Y*MUE* zS23J5K#C|dQ%n+ZA-?QIH>rrl_ryx7yv+7=I;me9vVM(?!&X5nhhVE*^+r2^6UJ{i zTtipBFQBX9DXi^sX7bwvY$gQEI{7p3^t*g|3ThKi8;YMT3_NlQs+y@m_62YM0YxxE zP&^f|sE?m*0zQ5>5+wSLgE2gn_#1GzAl+h?e!vdO?LK+2VtYmoh7lLs^51u$CSAY= zQJMw$MJrj%f;=SXRL1rL&Efj}3ws8;M6!Sf_!#zyxPbq_2Q(e{0{)$M(iTun3t+uQ z8@QN2c@mnifCmZ3PV4ysN-u(OU_Dn3tAz-mt_%3j-o7oMS_UFmUBLB$9+~^u2h4%FT-bR5f9^nS0bxrhUBH*EWN`r{y1i6x%P-&t_6&aCWC7Rk zF;b7j1-zUOj&57PwI7N?sVyMiA7TeyMK}=i+qOzmdO`J^3kN?f7jDy`cHnw%-xiP% z3Olep8Z)?J9S^T|Ft&iAI<_z1_3XBsdpf)Y+~`1U0U7r(69eOh&2NM2tYmQk#YoU$ z0loV-cuSj9QKVd2TCFnBtPXs)YJ z*jPq1m$xFM>y#NtXG?MnNMARWyMNK&-U>djX>{(gY60G5QMxtZX$S!+xRjQg?%**W zZF#t%n{a^42Gk?WoRJ-R%nWD?#~aah5ZX^(k*TyFg%e|%9x?+D7iXPi7lI!Uv`*9$ zsxxJ|TGYX`|2U}s_5WAZf6Vyr+Ke-a0$slPVLnp(*y(jkE(re;u4s=RUKd;RG?|~N z^CEsX(Y5J!X};)L1}{#GP0L%chHbky=S8x(XeRJnjFob^Yhk;}xe%Nh%^@eCsF)O7 zv)kc~NErBPZ&D+1&O#*-OC`KnnxyN+;+7Q{R0NKrs8XX5-`bZu=#{#)Pqz-0*$CEo zX&XCA6JPbrkT6rAs1R7(UXje)hSJ*1<5qMhK(Q0?y(~f9wGL;E?(o?%AMiCm=2H>( z{K^c><^Jc|E+o2?M;>#7zs>Pn znIl2OXN#5aE%phA{ZqXWX-Hs$d70wOx(x_IuGq=K>t~?Lgq z#8udRhM)CH242sG7H9Z5FKOTzJ>{tU6@OoPHuS6h-e#DF!EEgd`O&9`G4^?-LfGXq zl)J+*?%H_x2Ptr{!Ve7I)ha`?5txmZIw%b^AhhhDeidm#_c-_@n2;VUU;tnPXwElD+n0IUH}{Ib zQHNHHc`WJYm0s3@JVcKv$s{Ry%x7OgewBGP)0)s*4#rysvnYF8!j%|xDG8+FjiQ|w z=10lGkgya~~Vm?ZI7n{9h^Ig!aq9_Ok zr)F5XBqZevM?`Kz5@ZdM9mX~r$P_tKkQh&G)RaXmqiRt~*y_#Oz^95;2LlH;hc++? zA*2JE-{o};%}K&k=nMG)%hEp)++I5nDSOcOkOmwMhbI-(ur&-)#gW~U`+6% zL@AhPMd+p!up==!3xw#P6U^4r7bD^c49Y-|L=jgEgef69S2}znIy|~4$%7=m`gjop zr% zC_z)LGr0_bH9VWlB`nxQtQ+<4xvDT z!=YwUGTL{GCWh^W)(8@6g-{~u6;)vnkirmh9!M}r0v~|k%K&9L((wuXrKiZ}^C_wd zjOM8&cwFLSf6RMkcuWCI4v6wk5swk)1I^a)nE0EZVM@xL@HPwwVc+e9_+RkCIXYE} zuu7VKei|gUBR^?Z8~^|FKakRUt01NNi4v(D6^zN~H1ZvR??N+alB6}#gWhM(Jmu8W zMn*bb)+A2oVB^m^TE`LlQgmKK)1l(Zb*TJ$(K> zKEMAT{^NgI^amgO!$11Z{{^2v#%J+={cnHr-~Y#-{@KO<^M3)ylxR0MRf};(|Bw*w z|C1zZQ!NJMO{UhV6|Gpsb~CGhYFKuL2KL#x_4PF(ok%f&7m3$eudGtr|AD%Y+Ok#y zL3a4OTB5}fe^WW?e<|V;_WBgfuS((kPr#8a1Y1q^@_!1zhHIG~xnh*f#oVTv$AdXS z{%oLmE!+81KGg*Jj5YpKl#=1hka(wSSmb~38HLFSF&j+MWFS$6WM;>sz<&>w@B%`d zLBJ107s?eeoQVUN5!i58xp)c5^*$n-);}R7q+PY(K)A82tP<3Ti!?q_4Ez%pk(Lt3 z`isO4w*Dfli3~1bUAH*I8};1Je+v_82C4=|`CsEG86)wjYLh(Sk5RA`=4OX^lfwLC z*595@!k^r%z>fN}0dPEG4kwCiTHnQIs<&B^2t@%ay#TRb8tK5xWBxPYYAxQfonxfI zOGHLm3`yUnFe3#<$C7!u-N#^2m4BpT*o|l-jA1{=fTr1XJj%6vseNb5;X7r|@Ex>0 zH)|ry6j=Q>Z~Y&220u8Uw~;I&&gxx=JSVV7JGFziADXhesaBLaWJ_Yg3)^XjH>BJ0 zKVm{{sy!FjK^Z34l-NTtXc(g4MfKf%w}UbJ$bSHw>}Oq*TYcIqnE~VX<7y_W@fj~_ zslWa`;a`1A-U88=RJzA28T{Wf_!fiX{om1*(_;YJxNl)(e zk_MhJpx*p_{@x5Qzuor!et&NUn19FaZS8vQ^#QMB1{evJEFi3HKF3-jfNc=(;zJJY zMzvbLPX_DQ?`3y;*`Fx(zE{x{TNE3my&C{hX0^xrU{v+pCxZcgjg8Ok%V&}n*2QN-8b?xAFa%(oGme0aZ(Cip)Ytn z8}>VF*w$sq#_=20+8$=E;WcKMB#0f+@HgFhMSwLVQsv-vNQl`ay-P_!! z8)+U_Ln8(S&-r7&MqbGU$tFt)=)8hxilgtl=Nw<%v+MTjB~`8Zy{NH@y~oAzI~W<3NH}N$Qru~FV4~zWYR>Z z0~+xKS-Z%nLDg?wD={2^L==C0!b*PXV=$_I1}D#U_g}Gt2y6s7Qkfcl*B;^8$o*{B zTEEOPJdw#69}MdPM>DRWM$w*lxN(Z4ERfj15i5>kF}jTK>-M7h?w%oNvc1;&YA(qs zC@QaTMY90-5T7#W5FJ33_2NR6_^%lQO?f%YWfnN?=7Wh3r3%Ne%y7W7FgCgn=hluA z@H=r#2Lr(oSc#@Nr$+Iz7t^3;2CimjhR_+Y^#-#`++o0NvB`2Bv0HMSu#2d;-n%)e zXw?{K3Ia1rn1%Qj2*Z)Lv%%XjYV}5IN79Au?wXBkqgOV((c_$Yf|a5q%yJ#Y#1DII z6%%QPJ1jBroV=WKi-R#SQBs9<7ZY#wN+xDWB&IZr7UYGNYoaEA~RH+v<6FK0FZ zzaS=V@uDWj(E@h}G4VF9Wbo;orSh95YP;P_8hG)XL>>Ag{@%pI_S2Xj_4g(w(lwG@ zd2gPeG?F>n>Xi&JVC(CM2zPjCMFb7WoTOycU0*mqj|e*)j3I&?-F%^|KlM(pWD_a- zxC{~Q@}hLBd?E?VNC%h1!NjsPi<4)WBS^NEfS2c|b9pP)FbR}3P!34V;CDMh3h7TI zQf9#=L!^v4g5&Z~8RT@^sV3TJDPBTOUZ|ydQL5Hts)iXXrFNpi9mZD{Ix<5#BKO%2 zQs3eA2#hr92|vioB()XaAdaX3gbLAKCNU=QXxDfnn^im0yLrL;EG>)hI&+fBm01)^ z%{{t^tZ_``JSLFSoD(74-B54zH_$kycl*N4`fikj4-}`Tgs&1F8tIO3 zA7d#`4lWYo$?E`nS1k`+Pl##rUwZ$_-BD8*H{eM1KqBRn}kCLt4)Pog_xw!orrd0CQ^-{J91SJrUxhB2ht%{Ole1g6zdviQ=RMCN@2#&28R_2v-b&I!X zU8N6Gle`az~|#b;6DA0 zzNN!jZiGRKyksiIjxW?%Ydb8Y<}wXiQB3v)`3s+(ud7JQNO-|P{#lrABWbN_Ss6d_ zdN7M=zcOa=%Vs_S9+=RoYDHs@s{H7=aolll*QW)iIo#!Rmh=8JgrKX39MR{&;WIou zgIC)lH9VX?;`6aoM|0=G%aw2iEqpgtgHQ7}A<) z2x+jJh<+>Z)Q3M7VxxppHVlS{(c|q2m7Bn2JD$f#TN`@ z`<^)l8%QAcqnQOKkRtVGlk0ky4)w`d!QUJZ#hJ=8^yEGeTn3;~KODy&_>ggtH`;}$ z3tEbfLZ`+5d$V}u%v8T}W}1}%ljNawDF`6QiFtAZ{$_jyv0c!Z+L$K!ljsD04~aoN1%&&Rw~ho%XQ`3?0UA4F<1;Sx?Gw)hh2;q%`>zl3H31#J~bAK%U~ zkw}3Fkmm{qMwi&__TG=^!g5h{xUm<%E+BY9IWMkqeC~|?s z>0B97!Fp5d`ftKdnMjgGd7}cgL;aFNwRHTfBOL{rE0fm&iAbt3=>lp57TsawI1uTB z_hnE8LgVu>i&$y7E(0f@0c8pp65jLt1}P?wTY}KxxGW0egd+bCk@GwGtJbaJAw@!= zxmo6MREftJrW2N6>o+MEI`DP2$wL`EO3!;Ff(skKG7^(Cf-LGTYEYK8z$iJLt(p@l zBs!QKVricDNwlS*2Bk|wtp5(XqPh{|SdgZ9=)k-|#1t2N39~&4c{$nvQ(pZ@o9lCushX zo;#lqF9M>~IQS##q<4UlH%NcNBL2}EHx@yY*(+udH6W38QAho1;ybKFQ;C5gIJhd( zKyHE314lpgPT7GYTG2!jXAld>wqIP=2$p=_zOtOwYf(7Z3niCEJuDvmC>pJSiHXkt zGjDO75^J4n+r0nE6=ZlY_F1#VMrh9Jyj@>5aK-J)da_-KJ=_Z~60{s_CXwlte(NNH z%_~2pgmr|=E^|$4mEGR;F1eK-ih^#zru8^&TD`wgH3cd~R#A;Y!t8Ohm4{n-s1+fM zavSrjkbg=wi4ZjQM!8;!TExs#s6~v>7}Y@?XkEd*kK@G8X!P=I6m8lqh;pC|Yaz?P z=ui55FwtqEwH2)h#kL4p0?Ltz4AszbS=7?1l3FCGjCrDjjAO5)r6Bw`PeavJ_z5z^ zOQO*cX~D9``#U_Ps6D+9NV>Mr8X(kNhNZDhnNM$%5niW&8j+Bfck*^niNP`j~<|23W0r5 z2<&anz>7DK5{N^NTbNf+3j-;1{v+Ob6VT|-k;!BqRR-h%N4eD62ffwnnFuHbEzWqt z%C>n)Yk|(0k`|EsA}V3XX&UbR6p5ETkZcu1E(kM+qR*f3MvXqJISPg*rOya1RQIa4 zgL$G!MhsN4Z{$!Y?LLA?&J7qlC9E5yx)AsENpIQcG$8;Rj6Gmh!5o@>Xh|I}1^j47 zRFiOtlgc)N$r2)TVKwje#!bK_#zsOA1>Cm)8t9kw%R1A4I1=qHhi_t&av38u+LQ=B zI%FnXl%dl3p=T%%Niw zy|36e0{(C!_ydk;SUT-#NT?kW92|!n+UQva%D*z9{Pc<9euNmkyHE+)B9)ktl?pq0 z3VraJCz}{V#%joTZ^Sl-i)(XG}*vcu2j4&S7CKs|?j8uz%u>)B3VJ%nmhv*RZaP6m-I zB(#^CmEH`ThQt;GfPzhTZ2{h!SwSIAo5&8HydvOR`v9&etq9ayEK%)Exqy>a7n&kJ z7?P2BCN9a*CLvWs&;>}h*l*WL5~FEfpShAX47Ltc}kq1Y?mDt>vF%i z=^)`xC1E5R)u_{%7zPY1AhT1&$#g308vmQdU5azlP#UgN{Ax^Ffei%1#!}HjMHrlo zs&qUHCAl~mqi$0rC}B5qX9pJ`cQ&NOG#dV6J`K0(G|ZG~;9VX{Y#{&4MZ*+`F%6&y zoF1rq(SIydXH1`C&r95}6q5PjbU<{Oicl>T8bXhH=^a}pbexaW*aKUwB#Xq*C8ZmtgKjd+&|;mmMLLC%7zeq6gt2Jojoa0T zu{zZgVoXc17>42$9fBAeLh6D6ZKCJ9gdA^EOmd_>jDR_JN{ryOg?OSfhTN=5w2X9} zz!^5eBfJk`jN#D)wbgv{1>yWrZ`}wHed|X`h}xPs99n?&m_(;TTn0J4pg}S>k9qGV zl|HDEZ&dfYkVzh#AyJUcZ-hXw--w7~oE(&gU@7w_-f@{_onwfP=ul&dXm+Ibblj)+ z-9733F+7BMP!(r-?Rr6og+NFaQjtH=wLwU~KbOm%<*|yPrY?(lTf|T5%e}%bb&uh6 z{}fgh%2K-08F!TWvUl^PyjgC6?#U&(CxvxM7(6VE!a@Q`Dyld8 z9HJqqNT=Bqx94L3PfC{W8@XDl-Y^6K`J%fXF!{?uEs-;Al%k_U)JU4z@0IMX0@tK& zdS%x+y5t6_4L69ufoY}Bx9kq`?3 zF5T0t0~KNY=pi46MH3zh!BBEzT0cV64bz~LZh%fe_0mv!s5Ds}N)mJu!Ab_0Q90|$ z=280rYo(8tN>~pgK8K9L@kgN#zl_JkK-0^-KKRKJS4J6t4Xr5 z8M@$ds{{mB3gfci1S|Wr)0ibtv{#y4db*A!fvtAx5p?*D?`Y63JxdOf@~@xEAKBCIzJA-i4+VSuoxG8xr&J5XzCXGW zJ`%Ts9(35&>yvHGK{m%^SDUFjRjHP@VjWvn)FB3Vz%wrLN+hAxC6&nIF=;`g#~}PEgVmk7@Q6nhU&@%zq+RG*pITz+an8QPP+qNnlYF{)13J4ADL7 zt8=+`$S_27`sP?sn9{5PAAfDfC3B+vtNI3{_%kqrwhz59)Zz6b&Y0f5@adP2u?%<0 zK%18j;=4|wYi4LD=bDK(*}Yk=1L=%*8xyn}bF>qj03nx?%^))3T;-7{;L5@TtyZ=o zAj3sQU7#G$aehI0U(=!VVzL{-mBnb688WJ%Q$4t16bM6QvetGl8V$Y(;>ar5O?jD| zp+a-5n;@j46wJ_-#gNS~3cfujyd||vGbUYM=p3Ru5ThzQvC-2;BmqxSv@^v#?FALQ zhn1gK%vo?YN>KlVIRl+&6LS$J3wg=0_;zo1?u-h;PiThG8H9JoEh}jBo*qV@K?nb!mo)IS zs$}xww|-Cokb!&bt)mU-~HbYAIUuVmnvu+-l_;_vNfiC9y( zf7;A=HDE0zSBXm!lLw@agqZDdShk~hU=HO#%yQ>0=!2BhyR=x4@AA?@Rn+7$-I#nJ z^7dD`B^bcZ1KD`Y4H%c!3;{t`6E%+~*`(3j1}Z^?FM3~1RTD!)`R*wW^;xfOL#4xp zLk$BKV+hIkVzrEvLoR=s-~C0M@N3?->4a1z+BDOmp7u?zWO|x}=Qtuf?*(k@F#;$1 zSXV`JzgIHs3LesQ>wVix8uC&nIKzv@|DhMP9RUM5&TfNw{SZr*{YBT@8$a^e zrYMLUoIUw;-p(;2A@I-Xi6S1)Sg|Mvbty8V+1KUI3BAlHTqnHg9VT*#6k zp9d5)AC=0lJf1LPrskw-yNVgN*^Mz9)mxE?%C52VV+lZu4hq$#M6!J^k#@h^NtRGV zszJhp14mOb^?^h$5a&is?y5!5{hp8GW@J+RRO(vWitr6hev6Wo7wc4T zpLo6`%ekh8w3T<$n}X<_D#evXeq&wbZ5Szg7mERoN-t5-zBs|B^_w=UJ=&Fl zUtOs5PHSyR0)B&+G%7M5C4IMDbv1xoeXXCD}_p#pKm23(xwAq-R z%*Kbkq|F9T1!NC>Bv1ZQzs!wZ$-rj@KII5Ec}WA`B>2DYn&tXtuVmnvF@zzIX~OAS zyri8N=1G8TV^>k~Rd1V?GCS{kCUedrb^+&d+>*Q?qN(TOXRPqJg;_nT=-YQYP z?7+fgbw284HLUK}2C^L={}DGeGcc$P4iY|d=!-{(L0RX42v{MUzm)TClJi(L9H1ChXP|v9pEk>NV-q$a9Uu^;;Mabk0d8|v#dwac-O@QR` zjb{2U`g@xI^#YHozXQv(1iscp$NREZGX4#POEiy$KM-Srb^|b{jR^a2BCo}2!4t?TR737?fwH4} zNKRRb&(i_^l>@X6K|!fz-S^OoUdg6`juHp@1AlM5R10%`@h4-Mb)G1GT6d-wB(EvgLc=b-pO+Kj)ns=}j}P2y@Q34fO4sBgwoI><4> z(~}*)s&!M)2yDlzH*Y#vdC^2Y(V;X1bbv;c>C5z+c;xEz$dNkEfc=^#Yq5&LCMrg2 zm|^9E?V@Hal>t%%@O9p#nnN{|S{mzS0KUQN*}zb-!~jgmhLNV-?7y1}uwZ{UV*BrD zXh~vK^9CR$gs9|k?xWt8ju#%x4z8|kUetz&O+;#~t}a~>33n+F`a3#R-9M9ygPh*5 zzCotLPvBVz&pd=d>Q0Am1}TeCxZxNfyRz2Vn-dazx7TX36a34He693Kn$Hw!xt(BB z5B6jCOxW0kui`Gmexp|2hb@Mk(m{Qm44cJ{@Ceo0tLk&MV>hmA5MwA1(|+_1)g{<~ zD)e^UKhd={Rfx zIfIYnAQx8=qPQuN6h)vb29JF1fI*4B(Fx&N?}IrvNhqP%=nZBR7~z66U7#&o8HGmK ztK6zr?7MqWi;m4e5$M>&0NQrQW!{-BY6hbV8{~?b3y%TSW%M*2z!F`=U8U6fYSrqc z^eENF{U30luYwP-fiOED!R-kW2-DEZB-w#RLSmPv z8-noZVj`RoIfUZNvC<*l?K4oQSd?*AdBx9YMIOsbDi$I>R(q{aX)T%CPWRjV=(V^Q zW6CA9r8>Lyai8B`-8ZbT6URedpB|HTo{pVeOr_B|IFB5BJZT9DG^Az=GvxoR=Kn$<2JzwJlo;VCc`r%*$gT_Z{_8vvfciS;koh*IX6Q& zhVIHU+?yVrwZb#pwH}@=v0^Xc;FMVvE=IAufKUj$xXP#S*$Pqa=r@a384bo5TMypw zO|+pe!6GLpVMkKzo{9U-*XzJK(s-$$BNs4k$Z; z6Kja&ljk^{dII(VqC=%lZP#XgS#;ZZIIhcsg0w9N{-V-W+f9`U-b!tlJF-f)E${xO zR4HNo9c%5WvRV`wkYXnM=tt-rL(hjHV-Az0^ZaOgLcq{*4~W!p?W zzeT~8!=}X1^L|XvC}0n9dbq7149u$UML>xtn7@WsFlnHqn*GM`Tkf^g;pdk>VM+IR zkM2_*fpn*g1E(pYP&++izpGIDM6FGmMOvG`_n`C3k}lj=0AexdSZw4qhF7DVk`PX6 znceL$jF`}(k?Voek4L=dHXZTnhz65+H26*hGr$1Sh&_QwFSbVq*)i>xP&z4?2t1$j zmUd`M`D3-&aT5W8+}BFL=?43}L$D2|@#qNbHe(;K%vKlAX4i3G5S;?|;o!3!A^C}q zes2NdYml+YZeYuGX+FENI1h1=w;1|8J+A;g>yS;8r=cYKryu0)FvlfR^qf~RO`g^h zZsLaQQt$XzyyRy!N<=*2AMI*w{Hj+n@WB&49b--Uvd;^fAxWI!+q<^#HLqkXbaIA& z-AfvHafV;fW^_~e*+=~iuVmnb0AOv@{_Z8e=_L)kI>YbJPyf-$kpI#v8F=bYT>5l_ zealPk(diercy}Y-^Iplo!xki~yC_-R{a(^mmu4Uz-M9UHX)e|m{C%6nXGh5q6xAb^ z9}Q`@=aTv>kai)nzO&NyfygT6peVG;C9->ZdqjTj|2W}XLx49CE3i5@QgyH)m0%Abtz=p zv&m2n2KDevg-n!N@6S}o#Ip&1rpI!miwSyO*@|QNYDGju5>U-H4n}f8tkMbp^OI zBd4{;tXn(M>Nj|GyHt`SGp#;q)lDk)O>tA9dNe%;7;!OLL54FK*`Z7pppdXq*z~SM zF!QZ1d()xZ?of=^y_(Wz=tr1HFcHEwf!jN=&8yo2k@lvwN33;|yS@4+3e`!4Lv^+& ziql@6iCeNXj%JC$GkM(M{Y3#DX>}eRPKX$81omI()TatSNW1euE*2o@5_>pb9JY)C z=Gg~4klrqYD;M7v;dIz8ep#~XHmHf=&N|VyaFuA*Se-T2>@o@WcgJ0GoRr$J!mym3 zg9VG{-#~GfG%! zHo_GZY!1T5Vr$W^(qUkYBCb)Ea;TpxK&6!i)Vh-`>t9cht4Lo752}s-s{VnyT~fhE zcp9AMB|2*Z5empZ%1CRTGiyTM<(yV3 zd*{K!{AxTxUPuf>3C(7uopC@V8A-wO;zi|0WmNv+#Fu01cEtkL<+vg zRx`^9KD)y+3O*n*Bquw=vz&EpN9iQqR_HdPUqZJ7=U4!EoRWfA@zFwc2FF0=cNnqr zQF??g#KCYn>U77Qso;Ypt-<8ZK}i)0ff5iAG!Ox7cuiGEW#1p+??9x@JHmEaox zHu}V_#MD}ht$}L{nsG%^ZJmK8*a>hMGMhzQVZabVpwzvNqwV&S9uM_|_)h$cPsdNi zjC(Xek{)C{gU!K{i=>u?pVP7+F*y!ur-L%hc{V2?hJ@@Yyr-EhySuAmdaqY9-D?(y zjBYKoo$c2&O93y(;{4NNu)n5 z3?T&!VcRG2SqEm=Ef+QcTpDWgoR>7*U=-FNjthLnD;aJC%Vlc9_^OvQ@Ql1V1o(Yk z$-oEGW*YJMH7{x4dFUnkV%Ol%uX`l}AMBQ*umF3Lz4;BVU}hdhVP#+M+R8V*lC>gc zgh*ii(%;+ud2MhV6xhIiFKehplO*>V+cPI$Kx=6??p|X zhncaqb+qz)6&k8IndH2y1=1j<>3PZp>SPhtjRP=b8QG>4f2)Rf@5jG5aJ%kZqt40% z8MQ&)$5b4@j0>Njv;A5{KQKfx9!5Tr0+$JJ!$-1oNPZ4x!!-~32_%>uLMHA`bS;u@ zi(eytrcr6jTd{)8ubwrWo;q@T*4B6xKGV^{YlKmNOCf4X<7@bo2M9H`N`k2*aV_uqLD){B?5+2nSm&pM3fA<# zCdj6B$#pK2vox}*Jl?AGDNqVp1!K{sh!{&N3{L*}Ac=}LnDj*VhYQ^V#hZel!SzQ; zT9LW6jYrX6eNyp*!%5`+LE z551U`hWdf=aIyAXfF}3_$s9Kx1?{z8vefeuAEqub(cHbEOt>NdV06+%LUc$Ih;mMZ7qxv)KqTH%&PAL0vr!e42@(!)hKGiw!~gal>0e&$GBIU!S|v#A2C{x z#c`)f2*9GdmZ5#*67DA0HIsQS}u#FkYGI2t?+$D-{d4Ltu`YgrYgfd>hA- zupIYV9*V<>I5`q`A}^FfSk90dgXCOX$kV9dIh_g6&V&Fljt9|U8bN!zMayC%H=m_q zMO6@#V=*7};J2Nqz-bCG!$=@Sp7ccMD|L2Ng@f52U?|3n3a#IFS%KECYsIQYwPp`w zt?e&}{S(0pLC{$y+nf1%-o&nDlL3?zU|-X4_Vo^VxjK#IG(L+iN+gaAUi7DW%AYEi zK;|ibq9ijMo~o0QCb`(?wT;|qw8TQC)j9#9-=rp@8@#3sp6XZ_vRz(5v(L<&C5Qu9 z$lwhs=6}GxvBV7aZ9BbCAv4SN?4YR6ac0Uw0Wp)Um4!vQ#ryToRdE;Pm8QrQhS9Dj zC&a+Ut4$IxvZ+_njU%rE;ek_;>OR}N?>498%3)4nPlx#&xhgPiv}W+=Jp_~UE2lMT z6kEi07NKe$!*tcQdkcHj=1omTLO27qa3*?{(PLW2zk}hojXn6wYiuOmZX<3K3B|cJu)UW*ue4 zBS)>WseQ;{TSuvtNJpU`?NmF-IA(beNCcV}l(liVhQEifXrcy|SB`&yr&0_O?kA_H zxSCE*pY*0a*)Q8qR~zKiF&Va0^EHhtm4!kFRaY~q3C)GtBms&L_H7TSfb3gFh{iJz({*VY$qEJUuBFRJ zSL!l3)r#%dK2&TQ$r4{(+%PF>U*-_(A_}!Sp{-=juke!hs>nMq&?IsN zn%>^EE4{dNjrJyh&GuqT=iG=LyLOF3u&zzj21(b8b8(#)w+0o9N3uO^P}_dd$;otX z#DturvvZTfv@Z08O{pj;ozGGm=Bt7E#wrA_ny$5lW{$<5!RVXI3fzSc!Bpds8odwJecNqJ9{ zle3awF$pbQ*@`V2{ZKm7kSIu;*%X`$a<5SiM}xIqJx;Y?kEqP8i-_kXXS!Gngs$RqTGS8Y_8xML!@Ok~ma|2dvkf*Yfkp zT5@MJeJ#_0FK@*PHgM&QjSP9w^E|_+eT`Q!N0+jheo}l+(;)tE?vkCc*6ZD=+)UY6 z|FCe1K}kYEY{B*;!4g)@XlE`10?x{NbCpB2-dGjjr+D3Dr$VyQctP|HDjm`(80-rw37+EYB;~xLu_XHY@j=31#ZS3(a1EZWI%&ah)L#i>$t{`_IBN=wQ>K4wVr`p zYai@gk%Aau76lDqlf3(i6SXMYhOeeV zEYK%A{KNCAgZkY{E302J zR0qEA#<6XZE(h8b>oX=#NO@x`c>P9Inn3 zWl_E~E5u1F%MoLXhJfd?vPvj7PQxbp#V*Rk=4w<#0y7UFjvs_0v+?#zbgct>d^Xux zl9xtvb}Q1Q__4edt5{H_rm7iF_}>aIXFE{K2_=PaC-Y;ANIJ#K(8LTGuA`HAw&+|X zOdT?G;^ioDVvuppAK=CDTv%KIfJ-ONxP%!J`ml0vM{PX;CHka9Z}v8MQ-=pk-XM1g z&v#>i*_nQHhSpCK&DJG6ddO=r@Pcuja>sziSR(Ma!TR(i0mFcy+zBvkVSq@IT8{GT zd}eaN6e-FB1oo_MCZe70JZ`eE5A?~1{>GnB2G!WrL3CBFW-OafLRUl{E5l=s0vp%K z+|}M^bJtU@&vtdqwY9-3C1Dh*?Kt>ryktI%;{LAr?KXO)B#a`JU#|6%2A)LPo4?NA zTd)Diu)n|F-&?Q&39Y~18D9>coD-`ng^zRWgES+r!v z8bRV97{joK0TV&T~Z>2az2^HF9=FcThQn zTRyvVs3wwA>2iTOgsF-G;f@TeM*kR-V9eK-_CWsFO*$y--^XKMRy& zDfMmCa1~X6h_C0=j=O}C2cC;OO$)7L(-wM7iQM|$h%00^YN{gW3s;guwBsz}`h-EN z_C#3R0x}hQATnjJh|;i`uJ(2xh%HiYSfiAw@9?5FW3-%x@v-lOE+#JL95IscQ-#{9 zV2bF+d03L4ta~}MF*=0JoA~0qE%t42e9M->)&LDC$~sX}sZ}`|-s2712t_aLY_@%= z2Fg-3vu&UupdCk5Z82<2>I6dFktXj?7D0G}@ycKJItt!J&VuXy_(Ln+40>4ApH;Xw9jSLu)TO+a`SHz6YhwLRERLn=gk zSj#^YtD7j<*`*z)j0CCMhQ7=@f1P%oj5=IY2h~RcuNs;L^i}8|6&k$9;DWQCPsIdh z3V+AGu-*vbGrn8tSVUErXY*UCJ|32of3dL!EBYZQhZ4FRoj;0Lwc~}hKNtL*J=#@YSm%{W1$rF{@Uf8y zG*=cXw#)Zd`TJ7&e!aiX%l9vQGB4lHOB%h}D;4DX4ZYyPM|K|oNXZF6Zux+YNRqJL zb}YA>#(;*i;5zDo1mzRHqV=PI>_#gza%Vg{pkgJlVwCjPHfEG0na z2RG8$+~}1Ooi`O}uJw|3=0SAck91A5e4STHwn(}suJ@7#zI{(@^7o~C;s$@8-xK?< z8kBt?_>sLK*%Kf3N`*b~*=j*D10XZTI_%~6{z&$6tW?;`KR7bs4V&QgIo_t5;4rqp!LltdDltKV+G7PK7;Cg`fwBA+ z$VJ6Du1vII&GIdvCqC-!NDntTKCfOuJ#oAQ?}O&aXs(n|tn(HRjrSeJJ;-@Jh^rms z;UoM8uaqKug6h|J$-_tWjb5pZVZ{kc8oAcXm$I$v{Cz2^U+?b^AJsQ`r2?woLwbK? zrdrVpha+E;s3B&16(eo9RGP_NI}`t(C792{s1`T`2@$sEyC3@-Qw5?Rx4IQ;%@dKH z>dxGnxTCV&*VwrN(+BAGY4yL?m|cW1;V>+>?y*QH63(OO@iQt0a;dWebsW6R0a!c? zgu^7P$#_N#YtrDMJSJ~&C>GX4BSy4em>vrOpe?}i4d|F?EVMDeG{-$>`cPDa%;_Ho zyvbX7qF-h$_$b2WrTRoUBSF*~yrKmoi3Ox=PHyy~cWLNEyE@*cKZ+KIZCxN3H#w9a zDU>M^)U+q8tS`c?Uexq|q}!CVFgArQ-^-{H#j0E|-|Rpi)b_;`Swfmr!T(`V-jj_X z5+9HlN=|3|Z>?j9V6!r4!jG6CH4cW@zxUe0DVde6SjQ;1%7-4;!ixKg71tChsu6?Y zA=X`Niv4z8y(Csdgu)MzNE~jkY;BzXz!MQNORlJ9Bi=eMVxhTk;Ji7M>tewm3F5Qg1P057i2)0Dz}erp|= z*{%l%OkOP3mIjh7c4Yy81^QC?ZJvzXE>aW0E zM?O8<{UMyV4f_BTqK$=a@FpKnB&S^jyPyASEQKTtXAZwETQMa54hAOG7^6WVCe~7h za)dU-)&6?CfytC(-rs%3uJ_h$#`*{3E@W|QB(+NjL|nY+4MFFdBSruBVf1B7p)a!C zOMvNizvakXnz|9P_Yz5}1$OYP_g5vU4tYCs7E6`~J?GSOJ zSWjL-jRV!$`c-;$2~XfqS0hW&a7xB=*a0%B$M;;6>4Psx<{UUg2~+rpegzLvPuo~{ zgN>E#|3R9+bd7iKYCQq@+O#9VK10u%hW2Ww7``DV$#gKV$d-0WtOedFL1~K%Lf^n7 z5oDJL*Oz;zY|fBkH$OWVyo8yOz0(6+$7GJg_T}eTaP18a{y0BJ!d$gGW0)g&ir6Dq z8ie{b^w3_ma}Vrs2wvWrweCkQol$&~MUxvPFkWOf+L|4>>BOzgv7b$=$UYsTiT}c% zee7?)^qvncm}kkExLQkel^G)l0VOw%7|v|R45V-z#o*th-8Q_*cC&L!A{Mo(+5k5{ zs8rg(bUdcR#c-|#Z(vxbjxFqA3$1FbG+|9Jz?ngpz7{fu6Y6Z-To$>9V(O7ICa z0K@r_Bsxu2CNp1O6#v(?BFN8IMEob>$F?c;T0IPYUE)i+P}k8zVPW3+4$+&A6$7N=&$EkxIvCNGH-P=)J={!rp-pY)nv% z$-tTiG-jGJvLxYP%UiLAtxY4&-jZbY)_7UNwUdn!ED4n05uSyX+v#V6EX!b9E6;4o zfo|%^xK=SfM8Zg(zF_Pr3&;GGi=>}mQi1+2Mxdo6`ICgP7z0|n7_vvb(HrhnvFMlu z;Lr@XVtNkbhzV$r4&-Vdh@pXsIs&+WzSnqZnm;9 zI^xxxUe@qR-3{|CI*hA_%if?a)g@U7(&rUu3vUw1@sA1(-$0PHkeEu_B9` zOpBmG(h>-zP^|C}-Nzm;6HWjY2^C_h)P-S`NQ{%_M7qyAZ)lEiRwA{adLB6+u#!c@ zCSzlh_#c`A>E5+Pl7dRJo@A5eBh3mbsBz){ecUJC@$LV;Qe{yi{(vB&sUzTn-odY` z9!gdxNIV<60ZAkzcm+W(BpkfbLK~@V1x0w6gvr?8;)3*x$!&f2`n|_uE)5eB(zn~& zepK7m!o_%M1UJyAe0rsc^D+nSl!wQt#c?Pb5+wbIqmy|!c7>PC|^k0lbfg}OD z3*f$+SsFdKHKrk~LX0?U zv{j@C8@vr05h#8sMc8O1ixh!IdP^)q>wz3iK=2eATvDJwxJNWhxwQwv9vLmH^N2<$ z;j^1MHcq-O6vj+jk>`SLik!gcV;&|BwkdQ;?fFcmB#}yuTI*h!#mdB^<6B7B8k5Kf zMnw`a7&S@5%_nGy7BMhkP;YjXhcP(eAm7=xm18uv}Mu5Y3Do3w0{wT0|$wG`ZCF3eFMnN-Lb48vYrJB)gKJiA7gi`v}|A-gZs5w|9 zJT7}^A`do=_TTEY3UuxOV?+BsJ9aXlk6FmuV?;5*7oL9t^~GD zPq_1yUhxs_eO+6x4yZ2m5LN6$`va8Qi30!@524rSK!*jty==klgs6!IBFD-Ez`%xVwLk`zr2>-C4Lv+G^%DxXofMH)TkQiq|#16PvN-Aji>fN01 zZa$)x6}22dvjS(6Gb=zfI3#PLrqS#IwF~kf|L9CQu*(ftkpZxth-4(?)Xi!bI#L_5 zPdNHu<0CxnU*}_!6O1_y7X{bG`47laufRSIXdN&_=Mqk{r*({??`yck3~)TOJBX?0 z-|39w!QTdt65{U&5@qslbe6%!ji0)Mf?`EUR=ARGFw5$wA}p$>Iel@LXh4l86gAj& z+D-KThMx^{t(DjtMMk>vD9pr>`rmcNy8R!sc{XN~5+-C!nkS0l((8HahkWD;)N4P^%wxK?PDaT6cMX8V-C1FtEuMr1BDN040cC>7x32P%cIZ#iuD|qjJ}-7E zz_0g820o-+PleK}y`+JcwCj(&kO%*oq))i8E9pH2ZT3F3L|@}24Lr>@+1{=(>l?k2 z^**Fs7ty!TO1g8cm$ybF>-x1_Q-|Ynuw)GFS=X=k_ZERe+ld|!1WBZ~0uHL|W=JUU z&;}(y5tn`WKI~u&J1F61&vl*O8@-ZEfJ9A3oWRv$q3_nWLFmf1&zZM^62A-~;*USCgZ+OEA_%KVb zT;NUif!n*Wjvd(dj<96LKu+b7xBN~-`1{(IZh0$Kv87{`S@p?kcC@e(`TFv_6_9dB zq8XD9bvY=2D8!7>yqJvcLGb&D+E8CLLvCo?*?R(wOyu!ni1de^7tZc6w=7=tC8T7H z_roF~UA%^6 zSPmP23)Qk?ClHDGYJ_A6$dJ6_IW{9K$eLMHP{XhFZrc>XC19Ot^^55IO+t}dhdF|* zZ#9`6h0lxe2NM%+)1i2T@mNX>(LwlI*^(LhV6#o;4L3oBWq(SgB+c17B9d~{(Pb!b zD6mOM1|gUf5B0sA0}yQq+i{1$K91`iGi?*e3A)E8?^koP#a zAP2(0UWh%};-K#B5mhSi&HSa{1ie5eAWo06RkhT^nFf}&1V~eKU_$0pHjA;8W@pLD0ZR=gPBB%!*~~7c342+X=SBEc zgWX+7UW}kp{U~i6S4)LHTT&^qV;AF0tAh15L5dw-@mo4r;ma|2Emlq)R;+Qfsj|Z0U1S z(zTn^z(PY%z%ZI#3CADK23!Jh-=%Z-h&O0+Nb?#i@aD`MBFA-}U$$v{*+1t1@794+ z-q0SjPwrvvK07WIvE>PGz;>U;_hL3ePj}l%`aeGXMXv+}#}{q`Sj>nS?~rlRGlj$a*A1l>ulL1J}^Bu@oE3 z9N)E z_LG z)P2#&8Uk_#dMQ!!3i4%u#797e?+!9NNkMABP6Ko$cGKds*iHKwO!-yG!_+4^m^NnI zJ^=o&3&Dg`^$CgrXygMYENj$OV!gU7P4-OJbIzY=MMN(63LYE8ChI@Uw9D-q?HB!p zje3!6)DYyw^D1&&g^CV7a>F~d9bSO~;~142-ho29SneKNy8;&z*>!B+&u`#Lq-;(u5JT zWtNYHlJ-b$ESPU7ldo_{xU3}^(rLLN4GWEyg&E0uSJNi>=R@4RBFWodX3?9n8tcQ! z{lE!g$Lxifl8#M;TL}u$33;lbS?$j$_OmYK|0an&m3c1mD4$M|XdGDbh!Z`MHJ-NE zlKU<~xKUXaAL3X;An@BLBA?O09zh_sIK&0Alj@wl>2lYUi0ed7BxfQnuB!aVAgno#lpNajSQ5$7f_@IPOMvkfZ0sXk8MvFXO_D;tLPZGVsx3X|FBSvEW+ z8()f>(f5R-7re)daC$Rlu@lyV!bNF7lkufe2iK|7a?#hAveX`N zx~5{9`j#ON;?zdpilM1h{OuR!cn<3GUKyA_mIV+s!-(P8niv6cnE zSVmr92Cc1ks4icjhlQ`utio5wA@~{>J8H^u|AlSF^2Lrtq5Nd25Vys<#yBOZhvo< zOKK9{(!>7VEVRVI88#D!xLk#+}UdaX>PHCrue%wpi zpedAi^PltgrH5Ac_ zy$;Oz{;+%|W7DVEHGVr*FpAF##Eg*;1LyOwvK0$|L3KEGL<^6ZA25z@RiUub7ew9f zU#>AGWFKq^s@$B)==qg*8!(?WdjX0VEl#PQXtlTVN$nJ^h}%hPL`5_iyd-W~{FD3W zsqN(I$CM*uk$m846di~rWx($+`@56bCz^K6{~asX><0ncBZ_&}ub}6xX~l|PsffLf zxGfG~TaV)@_eho_3I>#@@lyyjGrlnH9AHr+hoVN9e7&#oR-V&VEHfA9HgLg`GnE=d z@i&H7B4iIdr{5t}|t`tiCy2)h(@J1^a1 z$YJe;e9aVI_dvm?@i$Btg3v`b52#IDk%bmB82%=F%@%#K}uw(^Et&vy@g1AWL?nJXkfn2X5-B@h8I3_?WIAgDn>acGT-HtiT~yQRI*-2Z>A zwfFkY{=RdPAino|zu!CgL7nq`d#^pMz2?0(vBf)~b%qIdBojmvF-kV`9CijmHcw{J z#H$IX4Ov=*DNJs;UOXD5@?lOSx(t~3Gsduc$jid<-w61$`|^g&KKMW&@dL+`UDJm8iB{4K)Fl~OFLMT6Qde32n!nH zc4<)%yT#^gpZS<&3zUIqaC%kO2*>%47A=<%lN1KJvt3=%?PKsj%o&@rX;Pjq;5cav z;{}|YfF)nS?4=G~VMhykQ8BTDwW9Nk@uHnvH1=qAAk5+z1cbGhHJQ}R%29@!6t7@t zfb_-1q!vYt!1rLz+nwj&Zl6TEzYn+MQ0k&bGX(^sL_uy^ty@1$`(vdF#0>%7=kPw(@7*xN9BpWE%8 z@7V)73Qje>f)8neBaXj#*fv%$LdOayCp%9zD3le!Vyft{2!^-f zhrqrKN-yqQa>iL_~! zh9rQ|wUN}GOf~_dQ!G7~j6Ct1;ii^Q!8QRaV1|4X%(6|uLyV%d>08?bvvQk&jJb3Z z#5Qabu>Z2!M2z3rCK&6q3Fa6Ily8FA;jbz>Q5P+plo^W*=Df**p5O73i~9q1VNWDuw+V4JaiOkC?@fG6_+X)hsks~nF^ zzKetoq(Rs;YYq!Jr56AUQJM3w*{8-RLMoe9eyHRi-JVx?Lzd%JXi%FJY#d;Ry?(U= zOZR%GYS$L3`Cfmnz21dgjX-+r>MCM8@qx5Yj@xDKA`=2RDD zvCgf4Fq`vg6wWa#^)f9uLa-%N7e=27t98X0+2OK^mgg9&h%f|Umjt>8OSrNb8;WUq z1yk#Z3SD;3mg-2~qJCM*aKoF{Wo z37^!t+9Tm1wqbOWyttKan!q58)`W8r9zfQ}fJ=pkuAJ~7xBm8Imr@@fYzh&zC`3>N z0SFKaT*5+?k0hal=Z9uU&dJXao+Z4RLiUs#KMyUFpNIQ~g#b&7&d*mg$Hg|WYSomi{Uu;*?c9e4!&nU3xSi#V& zD;PM;{uAv|OPaB$gC_I6rgg*YwDDR;DZR`*+ooQL)5 z>D3|p>{^%&$d9`GSVRNHFcskJkR^-gH^&rknshqLdCqtIl=wY7pB_s(5_$4Y z3Y=L3K{*pQC(tFm-$J?Cjvh=4HUfVE?kM>Ot3ko@YP6mjYz1oU!O)E9DX}a~jZPp* z2~h%|S$%;P5dcY%ni|V2Ds1>btV7%atDA9@W=^LNl3mx)hp@&gnK@lG{L`xkCNj>1 zmo#&_SnEI4@hYaZUMaEG4=3O+_mZX7`gQ)k)LOsZ-{-CMKYToA3eAR+Mz8Qn1#A6{ zdydDzVO$Ri;upec!m$<1e;W*bF2P_Tdq_!aW~>y zd)#fs;7f#w5haPCRniSDAQ;My?-7EoY{o(CIfCL=gD_RQLD1D+a?cTTjaS+Yf=+nJ zQUqP=?@JN%a(|yk(C=Q6N6_?`=Q^)cK+tP?BsEO${G%#^)!NwZNG*``Xyrv@(!rvH zYrri5YKZxw4-tGbVa1mLZ= z@DSJgCK1YxF!g%xg_~ij1j5#hmg3P(>L8x_7ZkPloQNC?8PfJ4BM)j4AbiU8seg&G zj3YBmtuF&R$IBtS46kUq>K#-=P9N`GVC89Vwz;U(r(MVfc_v!SlPT%UFeMoQ=QO>%s?-ha!@lN=<^?@8(h3>KI4VX)mCEDwA0@GKtPMCk*6 zWw3lsUrx7Je%TZ8XsiNqR2;Nx2A~$s69dbNkGqh6k;cl zAXYGZX4oQ0oG9%4iqn=PsWkkAxJA6|lUK|w$rmwv5z_}M41cFt;Cu1X0vYR)NC?nr zVHnUOoI^;Fi^zW>9^)eApg({QWG`05lR)c#6fw{%mY32k1fKqvy2vZ7?)sI@IJkdS z3y#`$#U#n|rV!xLM1r{CAE?IzuZe&VbO&B z2{rHyGB6_Hgz`_HuU)t}MU7_c;TNvK!!G3xS9E%`oEC>h}L=eAt?_h*v z3rR>ZQkM6|2^5&%a_O|jSY!mtq2?_XS99EK$s5umzE$)d@pgRC!xK`l74>AAljt>J z$6&7kDTk&c*o7M=!tkt9;8jzkXs>OfZrfkIL>bvwv{R7b(DPUyV!BaoPU-@}d8pI_ zC5if@_ybQ*9e;4%Y5;%w63kfX9r&00{u@(GU^EVv_&7st40W0gxHnfT7m^*Vbu z1B`Tv{6;8MuJ^R5^dq_Y>@*oJoC*xTfutta;tR7R*~H< z>%Wt4aFjfxB`=Mc(rF91L+B>v))SHkAWkFJdlzkL)XX+pa7?4z*cD=2Y&|fx(w1dS zq$pT>ahG1@4cadC{q}WwCW0knck)whjQ_CThAQ~bt|pQ5;8G$%Y4SYHBj0J~{VJel ze&==KQ?WvBgDIaHWgwu?R=GG>*p1Kh;%2OA)L50?iUjZG*JO#8v^G#ulOqZhuFFP+ z)WK%CXGifmLA_-K7}#^<8AxtG8>u7{pg?a}8u-i0m zvD*MUd$Jy!qmzq{=s?5m%20E{rAFk}^yhQSc4g-aD`lf19V+|H;o=(av&|4umJ}r& z-GrC48A8e241rH!T5^+BGDEodBrLsePMM)0bXCTD7`n>s2s;(GAqUEg5csNW3UmS8 zgR@oFzjBE<1>xaO7URl7Q(&)Jc?9V!Vby|S$T-#-11Z>bA?{dQgFGe;jsZ!^HM^XP zB1>=Jy51YN4JVW!d-@l7Md$d0WZsyorEF1{Y2KDvXz8Y09X(FtTYDR|_uXx6Y-YIE zWh?L2z5YU2JlnS-api90l>m5Nvn!r*PULK(U?5BUsV+CfX7b0}?ELZhS#>EH0_Pu7 zt)X!E4qE2BcwsX({7q#g>RAF)2BNZhICEMMvKD#O9Kso@QH~_4Q8<#V)w4u56@N)A zGa`nC@8ZvSvXS~wg~|_^?hNi~$(JdIM6D|v3B8~>^oR>cLpKM`|BYROU7rkenfKNP zO2#0PL>y>7Q4RDwJ{LsR#N8vpjOnar2e276n1c5&6&gj+kBUEmXc@? zLJJEk0PtH^7UEO66~xh?fWa$$&;{o7^SnX1j5z^&-JwQr8dwpgtc}6x#RPweMrLrT zV#zR!da@#mnz4@FTtaDHZY~isQ*SWEr}dVl_2`Nd8JYnPP(A#Do-=DOMvGxp=%4x2 z^4&3$v_(JAbAm1mCt(|_yv3&~B2&`_8)8dDsiw^q)S;ZBsm}U2O5dHmYPGS}e^`RS zihQb|BD_I~0gRd@-}C&T)i#ULT-|!1hKS+ycvnR6Uf)>3b~G!1BY+2PsVObNeY;rA zY-`y~G_kg>Cu1G#CK|w?PZRoDdd7pIDcN{W25~S0 zMIz|x!b=QXHjJ`hUscka7K(XAGY<1vjXoo(7CaI{B6>TpzX!_2-oU-O09Pq7$h*MB zyqI_%2&ME5bjTM&v6&N_VDNPg{98)qb<7`O>6AEl{r8y0DSjdw{TM;F_ilQud5eE-X=-J+dg-Bcwt`xbO{R zD-nJcHe(IjB*-ieJSm}YOTDP>h&-i&A%V#*F6L26x_+>@kS=L!q^VALqu^hJD=}-t z=oWNb>1`No(&-03go|2eQw=cva^!3aa^g|6HJW!4rr&IKrNWph>m`-!xOhn=rFUPO z_FLyUt&QnFEa|EFB_$;UJ3_M4XkM1UEzKgXImFwq_;|A7%)Q~pi8E_+0!gXGx#E2< zya(W9Or<2`0GBS{MTBd3A@R?|3uWkz+_>o@bV2cgX)|PZ2?rCrz;zhXjoyWjWvoNA z3Z94_@MKe!m~a>hLB9!j5(Edbu@p~Mdz*$QOp4LM!-yx66ywa=VcBKCO-a+r18BSw zrIJmqzyS=TJQiJR7>{ue3h+MLw7zgJ(-q#DxyzZ7!il8PRaii?0}ytrzs3mb*4&U5HjL*)Vy>}odSsj^h zfg8M%`E|%Dx!7Y#NnDQ+7Tf$flG1A3qxrK<`zDnpy^?{aa!v3mYI^T)@{$IgtTlV^ zr9Ak967V;BB?C`)Ul|Fz#Y-A^`fsvtbj(P0t5-7cnwjFnu8}0C=51c`Gpb^dnP!jO zm+$>PN$)@Gl?*)hgHOpue{Y^J2@uM*eZG($^>#1%sNT6F4)JnPyNv{%{qzfYOgSp) z?H%5Px!BZC1xjpwlfrA}Vfhj=JVTcINt0CbURf`_*w~cr*kt`4CfaU0J zLHdQwSn@fQ@YI7}!9j1Z4bpaq#PAoE-Xb~fwRNSqVFO1Bd?+uc(D?yVL}ZXbIXD1n zdzW2{28u#OIh(lS=djR;_zhDOOzz!~iy`17@-{%g8b$j+7iIEX*epqtsnx#A*Lat| zu5$Rac5>L-LQx_)#9pc&qLv&WE-Q$kyxo}kiQ1G((j8yvus)^pOgn;i>neYLqjrn( zSevBP8yDqiz)1-Wz{M|N@e9uRb-Z}3y$oC%+uc7CsbFSSy^{A3nm|RYwEGB=rA1H1 zG5rJcShc~@^`WCiL?n~Er9sVIQAI4_Wooefi2I`pGYyF&+XQV=wHz!ojXbTFsR_@6 zof1nn!pqdOJb&_y;PhlsAH`)Zp;wmS=^)@MTQYf<0CIuIC0VeSIS9*wEw`AoUi_5B zwnduC_K`q7z4&RWedonbsef;!1Gj5Hkh&h*r`F&(uh-~ajj$cVa9c|Mc8d(f-qvgP$P;a3bbx?#MWPZt}4g9;9iL+^!#-n!eNKz1hCDj%pTO`Kk zQlaXCrj_X4%e-BaJ19N2=v0xH#MI`XU=syrT-raUTAZ%U6rM z>bG?}A19cC?QAG2l5ITIHykzi%^3_ddL&O`)#w63ZW>~0YJphdjadJV)pDhy880jC zqam_$G@CQ}=fgF>Wx4Ay;^xM}H47^o{6FZ3j}9XS<)vp?B!D3d=O{I2&`VXzzR#^r zZdTakYaQb0VuT+G05NT_rd1_)nxO%MIzK$2Hiz<^n6Nm{l9+}EojHrl5!;=01>;J+ zE4(xhoffK_m+Xw%TYl~g2W7C7!>leJo*cJGEQUJ|v4d z2x?1_92&$qmE#l{FxLzf@UFPqX5tm(cWgv}rw#e;ndS8Ip4< zx{a{Atdecb+q-y7Um_r~tzS~1-KS!cgS3k#cvm(_!G>@ni}Wk2CJbb=SA0_E(83qe zt^F}CXvm;pw6jaM_B~~#+ih*4w5@IV?ylpQz_DD3^J-_{54`)ZsQKWxdShlj6BEw* ziB9b0ey@}>;V{7Q*n|;1;3drfMdqIE=x8B&&?^~uDtz=fosocl$V(b{vheJ=j`poj zdL;u-k&ob&x%=ci>?I9+tG4)vzb_5y-sbP~LEXRZXq)_$S1R!C?=mE*UE-QNA5Oo6 zFCSdNCnq$*I8z#U;KZm=(%+JQXX^v`#C0nU*$Vlg6HDqm?~d%AOG%U zIf*nhHQp}sc8zt=cq;;ADeDlifEX;I0L50J7ZRcoJBov4uYfGB@U9qH+_%5M!EiUT zPkA<2U^A<{wy_yjdo}unTbBX`S-;5K%aafIf=+m?1^vRDOuDTe?Ct?hmwwL@QxI=_;=ok zE#ALZQNHPB|Nnpgu4e$`^uaEpry)TyGE>0_Cmu~RztQ-{46Ltt4fLJl!>cEdl2tx( z0fj0;ny_jRpP?ZnXw83)Ikx3<-0<-5@h9l#MEjg{^2w*1a;kksW}bHX8E4}2`q!T| z`i8ULc+R=!oqzuMV~s{5!{<$Jdh=WGdF$KW_O@BGX1)FQ-tmriyz^b}`u#tc{qA?a z`#tZy;DQVO@Q?oJkKXsbIq(1DKlzhC`O`o9^ACLB19Si4!V53_%fI{}KOg$gU;Wiz z{q?+g|KV@`iyO zOR7t&|6N_xf7ev` z?^^u34*#yVe>YV1-;LGD>P`0V=ISl-@7AjRyRG`+>PGvwsd{_$Bl7Q~)jRNSbM?;Z zUDYkgzmHYJzq_macTe?R`SZhxZRX1?bXMtpRa<9DNAl_s{YNpTF*x`o3{p{YHayQmTzpTiT$Z9V~(|q zR|^{MR< zk{VD@m?{@Cr6x{$-0Bu4!XST+LsBhND@}S70Ch=J0Aa{!L{;l@ho$=IXW2>N z{p82s4wR&i1oSEek~=x%&saxi2UV33Yti371bsCYeN2kd4Ke|1Z?@|Pc9Rl7@ubkF z@tSIv=y8lu{uEpH-d*RtyR%O?q7;Z?29#TV#|W7$o)>lENRS*Nll7!B_lWiYKAlk= z{&r!M)IsXvY{wLfX^V<7O38O9n$WVRFG(2K&EA~{v^x*8zifTG8p_)WO}BW}En4-H z(lHoBq$ikYe9fBb+hIpGFhIgX3ly?;)+cDAgSC4*9%PRcYO|{AcNT6{(PuL&7b-fO zQ>lki^EBi@a`bJ^p0(QsHiT)}$p`uaP%XNZ4>9pLWU?7&7jfi*yXR{aO!xg9Rkztm z?jW{o>8p1)kqfu`Qk;71!S5M3tjNE!hNdM5{xKhwAvl2G97fmpU_ZQYy;<+V zC4;^7Y4!g3L(@cV#M^qmB(Xz}_QBzk`cx#^1G_mSRxk-htb_GM;eAnT!|^C%zQ zhliLS8@r|}g8_--mh&+{0?BuGFZv)4By`0}glXcuaYoWZU7sxs<>LUuqhrLaDPl}L zxIR@DDl|<@3~&V#6Eu9>VP2=+I(7|vde)ar}r-C-{R%u{^i|O=y#8z-={AAy%L({KMWxfLb8#}Q54hH~5VMN1 zX93SKOMRDss8#Dz&#ew|&RFky_WK5{SMNKwIv0zORnD!B*xxg9Y>{O2Mz(W3%C`|{ zHWWsH!eTPm!0pc!o>!kLUAq*WtQGL{x>5iriJId_b5ik@hxx`~{O-Y#Z9IpqZH%i4 zY&uZwRJBfh-7T;9s;MNQshieiNSo!)sf#I6l9KeO^7u?uhGBu@xX z5jG`x>uUC6jXX5+OuV~~MORzVdWcG2$+D~PR0Cp2k~Jo#CgCoy9%7i|l0a4hg3}Om z>wIy2Kkl9Xnxf50o%(G;2qgpoqJ8o7NQUKBOsXTt7?w5L5yCIEv2=~^_m<4&zr27E zQnO$n`lQ!ma9IYK<#@Bh0a=?(8HI18A9I#3r9>n92%G3T zd~!*6q78y%N;Jkd_-;PmaTD384_pUU+2`*H+v~U7TwnLD+vfV8{SE2u#jVXRVe=Ok zoA1M|Hm`VVf4k87f4A2ER%NRVx_|D7`-cx?vgFX^=1dESe|CVBTb?BQ>3iOa?We!R z*bt)NQdKGa;PgZ77D^~n^53{50TWeL{Rx-qza~qyh;#K{igU%VzgIq4Kk{MNQeDJ$ zZ5$RmQAP*LvHzzI&i3(t7HFm^i#~r=7kuQYQQ>D^(Ka+Ig7H1yopU7@;=y)#HQOZr ziPf+n5L~b`UzN{NckC|;wf`e(m+k6bdP&>We~SrH+PTfEi2UfbEy|hFhE#vkYvxVC{+5>J!))K zq23>}UUucL^ZtqxlGfJbYU%OoIa2HKXYzsmsb76%EfsbKh(0bwo0bE4-xnbKgVoo!!M(dL;w@ZUKL0EsglS%1avf*#!UZ z9dEDS;FS#g9~k)Ir1w{QNdy1;DCwfXHU8eb(eG+`f33eaZ}dCay){3`Fa2>zqt|&Q zb5*@V5Dn=C8C8G;rbp-dFzLl@0pHFxR(~;%DB7NP{3fqtQ!opa$cm0ldULavv?+KS z!9U(H%it|u$-uu=z*AI7;NR*+4gOmQ{}(^YcmH)srQ5uc!GE)L|LCOThrOhMe-pt! z)v@~(_p0#`vf?t-P$4cn>V7I=+y=D&D{>u`0yLG=-5!2+2+2oqP;kR zK$ECiZS;FEjKW+(gNfKf?;vwJTao&#uDL+GG)wLy4&F>PZ@`owTLGo@64P8mK=Ovf z%{T&0flmKI{l|=O>cY(A%~@ihllv0Y%to)n6jr4HjuzE))Z4vVHbJk4T^1RAP;=oB zPF9PK#6#9F{WN~YVdD11TxZ0JF+$VKQ+z4+FmBFhjEim4Ojp+S7Yl8l;ce$zra~=E zpH763rH0ml)7}7!UY7PrH7dMLB9>)3o-TkXYDR3l#0fnPFmo7*w^>uu(EYQ%miJ;Mc4Rd?w~AuhZTyPG zkBQI#r@92z4SDc_=sjvu#)^3Lh>f{+|BZl-=A4@y+5Q$PYP*lJxJH{2T4=W+&j$r< z;R?WlZOnfD(tZCTX>)orxCg}K+0Fg&8-l3!D<fh0e zK%eGA28T|;h8n;f#(?xCK0B4y-POm5Tu2wmjDB&$=*3H=9yHd)@#I`xQUyNcT}(2a<};fyI1Nr4P9V~K>J(41 z4Mvtt%_JyTej}bt=9Nt_i7n7Iw)HP zhO+H`8Po~I@G~bYn;q7AH5^;sYPHuAI}mBxB7fiIRZM)7^TM6w?=4=*1QZ_kA!kgF zU4P6=nry;2v)#zwcY7rRkEI3pqWpc2mo)GaY}#4=zSk=m_z-NG%HJRNk_MjG@AG}1 zzcI?MzMvW+5y$SG^`raaDthhVGj0Ja#n6cz zZV@w<+#|$%h8Y_=Mcso^zP5r7wMw3P!$)qaz{Y4pE!AV@NJ)}oX^V_n;%bs)qc1Q& z8*15nqLvU=_?Vh6?~*`y#(XQO0%aW#i*3pAu5kxthpS1I1c+%W47~vfQ6}Sidbw9z zrMsUzE}KB>ohz>JimSEa6g^{8(z`WY*3J*hDcq7&MQHkmPv;q7YH_*TK@}pczk9%L zmbEta|HMBa&xL|I@jS03i)%5i}!{YN(&}Em$>+RMPfkl^V;FK2ja z+gj`}tSt^8TmDR^#a`l-Oq4qtm879WK3eJ}pHR`5 z7M<+tcjfJT{Yj;9uVmnn$5p^9EB9Tp%uAZ2NMlg;Tu1QBy^?{4IS1fRucl_~6<*T7 zpGokGw&v4OJe9f(R(dUi50gz!JYD7QO*}mv@3}|}A4-YQ8ZT{&e7Y)F@q8q-r)_>n zdULj&KeST{v=}h9z6_}9!#hwr#*4wx=<#AZ16k1&HmmN;bd8adg$wjgc2~G_as=p5a%Q*#ZHhBb6RM*L(ey7oG=W#5Qq6;Z^0Js zL{3GQSPji`2i+GTjCz6-K@*3A%TNp+L94J2YL8#jI_<&u;42_T65|+CHiU=so`4+8*MF6_?}W0?Etf z_CBv{a|`oQnA;e&BD2f+lFPkUvXP-L+Y zRIS&7Ek91@=Qtu-ji4?bPV_~_FFbi24aC^)!0B@;NVzAd`~|*|dpmsipZCUW_)H3y zJ$gfa?$wg(m7efQHhdav{QZ;u-i9y73%$S>y@0j4UkiXQ`Fpb}h-MwPzlCA^r~Q(7s^vSw_{+%bHQWl^4Gu{oG@o?hw3X>~EKGe^G=4H}Oa z2Bq?26bGoQsHxny)f#W<{ywpFF#i?XQeiFHI#i(aiW6SZ)Z2sl8|(qoR$^9))(b$* zc817H2Xuu4vLu=ZsDxyrG+Pv`Uu7vcuP)SnZGX&|Iau>FnLWhYFmbpu3L~7wTZ%71 zEEd0l{akS912+%6EM_@An=LoeiWI{R`NfFra{RjQNmLP-vY%V8DyfWGkR60u=~6Ro5%ZOO+&3Hjh+S&je@D=cwL z@8S5dq#0}JQEXb4k!@U)=Sq|)jjkYU#f6oN(xwXXl;o~m>5vV1XwMJG6O6)jt}F7` zU4jP3=zNo9V@BKNw#s`UJMh6dm4n*skBLGf#FVs=8LS;+vVHLDy!KZsLYtK7=`I%h z#ujBy_#MXTnU#Y!9ttmYEvvkbf}@>FZ!YehCr{W72#b>T86o5!-}>gxYV*ieFhgaV?n!{g)<0q zRlyVy%bEOW<;1v^YRHQn>aX=k4tt9I5A9ddd-nk)_0)e9zm|F(>j@QyVrOnn{}9ZW&Fr}_mWFs~L8AZC+IBmqaRkxUmU-o%w{TUW>ezTP|Xk+2=m{Wh2WXh4CG6ZA5fh^rh_ z;XZ%~=0ctJTO_=|W;im?7PY%uT3*dF2PwEy?$hnbo)GOdy}5_HNF-25PswsEY(@yS zT$)IWrwQq?aIG89%Bbs*HfPgHj2OuG{OUk^{JP@7SdPmXUn~4 z7Dq5~+He~98n1rsmh5k&8Ilr*lmRT7F;v*8Jdt}O{)8wh%KHJ`cr2I$N#=B|&*^X6 zAB~+y&JND6(>bQoIf83N7_Go?JMdeaon%L_$ES#`fSV0lJl#8dEShiG-nqitx4k10 zRQWJbavDv|ZO4Q=gf-99w1&oS-klK5% z^=1ssfiUWPA}Ua*XO5u$)paK}`_T;ovevPV_7&|Sb%y&QkRa@iANwcTT^Q(KlsH67vQ z-h@peQJW*=#TyW)WoCHgr7>1AM3M0922%3ZF5#~jUHf)}_|b;_UFqE@u)inv2H6$m z4ebv#w3mGJkO1v=Ny#`wL9Gqy??_Nz>>8b}n2Z%{3R%Hq7!i!Q-drJ?Q76_zqN3TxVxz#98FM&XT4&+xCoIcA@%N+RQp{ z#*T6+f54OgG%a1aK=lZkHclWmHe$9jT=-HBdxOLNhH9s((I{-*!CEE(sw(rjy}4Ea za$AU+h^}uqyE{_X-mM{f)i zwQua0RQFlwEf^Nk1`@$x1*87D%8Q!#poq!N2+2df{zPd|Y7Bs7g3pA*Gr>m{=F*Or z4M!2_r_=UYCwAJ{{u@y4O(H6U5FNQQfs~Wxb4iD(*7Mgg&H^7A&=0l`jp#=lSsxr6 zqRX%ib$vEL(PK~)QlH>xHvY6;lmNUTr)qQoM-ay@#&W6{3{sau2@P7*j9~w*Dh4AB zXIFz!+~Wi>7>Fk)%r!wJ3x$dp6%SZi_=vNKE|b(hj^# zx-{WkvIwHX`y&tv*%}ckxX)$@lFaomwkrh%U^xj|=fEw>h;9Ob2%IGJ?D^28atP}k zf`uC$LU%>^Sg!WM7H=fFT4+ygKQwYP_#EAU_ZMcvZ^=sY_crrQ4XE2pizM@Py|-Z} zR>?+lO>lzFLmLcKZ`0449fr+0*?fSpC)0APL$GPFiz-T1c$1g4S%Eo+sEYr(Bo=^_ zS_2IN&n~@r36>Jll3|f@v*rME_&1w1(H`jnSMv!l1u`b}I%<5NXwd({&_ZNyMbw2lD)k_hcHt{GCLICUEf3^<&eIcIdc>i%#Dp*ZQNGpzNv%f< zwOr%+d==z2*lv}4f>a{IWtEQeHl$8BfX6UW>1zxNr3*2PVJYeuQw;Qz9h>D8_zafz zN`BrK*yaN4g&Hi#ZcwC=+1G&$7g=GYzftYKyS*J6W0K1=D*RNbF?Msh+l+5#Ldq#( zHB{P=MNY+y#m!j5kWz&*N)-c)M*ymk>eE~*4kIV^O2mj+$)c@rm@g;>vcqM36Eoa- z{Z~7vf}eWJt2JlO?e(0+8pSy)nXzqOX_1RdXDmY8{fynv@m%uiW&~B3u?IL~?QImm zG`l-okPJqN_IUPuGG~<449~Eral}qd7BpiO69-ggqt>IGmXZLE3y3%x`U$5#jS})sn4~xX6528Dt(y&$HWX<$DY?u`n!Z3Pqb3mF zVr2#w;nbkrO4AE={}m3nVEDLf&kY~Ih(VHU(rkR}7QT3eEKDD?eY8iDT?v{@a%6yGGZGJ1G|Aa7l;1X;W$1gMqm3LQ+9+zs9dC&XP!B=Rs@ zeO1?#)j}sjGca>#Ws%p}V_=@R40^mTkSL|o`7+r~c2r0d!e01YCs+W>S5dkta%5ln zvDyk12UElAq<67Eh@R%bjv)4Qjj7<1|345<{H%(2x!WIk{bPH4`&EK(w2n5EEVV;| z#m!jB@NKFq-imJ|5BU|&i4-)qVtLyEU+usR!*bSCmAy(gw~!Xd>MzK6xXZ~m;3^rG zN-Cfyv}CQfWr_~s5duw-8OQdj^5>5*`1>%=ML6Ti`Px18)|{g8tU1G5`H|hBBpwJt&bFq1*vMG z9#P>LfnwF&pw*O}37QamZ6Rv+bUv0laGMYC7>4qGthy02l0Xn( z5;0|n&PY7(#&hT?*gtL04cwPz`=nU`*Z@62HTv z7r#Rskr1LTxL8dire=-&x9Tiaa=HECU#e+GQR1d}uQhghmfmZ<*hlk(rW92JL|tNX zRXiC9l4X!ZY19^PvU;>-r06A#C}y_|1{4T6f}Ek;P{^K5!e^l*oU5%h_-o}ZuzJ^f zB`m7mBkp6CvzQRWa>`1Y%|)doN=*s9TIORiDank%wk#rZp|j++GVQeX@CP=8%r(E` zE&DsR`8#=|#_N+_-2i z;;!^zJgG|~W|c6Pj%mO;29n{TOiZEJU}yk0I|e$2&Y)ws%vTPYL_b~_nBWhY0CE!R zOqSYwfM>ZSP+i|UyVg5vVxfw?T26*|hQOg(DZ*mXubsL9zczE8@Sxl4syO zjf2r8(s`~JX-4}i{I2j0X^vo4lhwk(7+i}0t2Va?lqAZfa>-F0z=bz}mSbw7+u=F~ zWpvRTvoolzl20LQ8RVb!xz6OV7s+#(#z8!ma74LMPUJyOe9UI;u0_psumrrx;Ro`Eb1OKOKLNkGkL#^H@5^R%EDE7&}-f|SfAp0d=sO35cf zwjdtbXxc4zCb0#Jq+D>6Z3;Bs*JF{l^BpB0JjSB!JlopNRy}^C{37rUa*OaC+#uUh zY+`Yt3C5Ib6O&(V8Omsm)&;0(3nesgNudStCv#e}=UZD)PSbe|B`qv1v_Mr-$FSuq zuf`b03oVeQXbUg2wxG7cy&l7|LJQQKwS{d@w~V3w%GP0dp#?fPwT1C#UX2!36k4E& zs4eVxRa#hCXn{(cwy@!=dp(A2#r?3V(1M8lf~`CEzJ(HOU0rBF=)APB2xo0mRdinNfi2YnpNdtCPq7LMW-qu$ zZju_mNrujQmNsKuJF#(UKa39c`Fn!tn*)S61_*IV+uI;kI27vvh8XX5rc}XTFW!oL zRBEPOQ&N?a1HKV7r)F~0jlrMD`bSr&XzjGGoybXwsJFp^+F>HTr?Ma#g}Ux3ifasN zvnnzZw1^(W+lnf{L*8=SntBqXCyM45>z}w6QYm@TTeV|v!)TT5UYy%O_&Fv&y}LJg zMLSq@oODDd4d`b98m_Y)3aoz|P_Fhfr{5H)Cq4@yzA3t%xbbJoU=K zFP_rot!6{jqcILU7s2BYEXm8O_!lA0m>SK&h@b2RALBx3gyq6CKzI3I z6MVCYxd@ZMQX6vOSOMkl@wUHQIjS;Poz63tCgNfsLd_sltLi?paz5nrW6_br8NkJY zQP=|>WzAH-+UnpfJdCG5MN+`fvgUl58q8+BmQ5Y!-g=T#DX|%7OmAX)l#g(=G#UiO zohNgMmbav_{f~HKX1Qbty`=hJU9X~g9ez*brv|_07-~YqWAVB66LO?YoJ#qHVLs+9 zHcA;eRZtx%+9$+r8F1GH0Cn(wbE_|Am~L+zC?^lz}kFmJS7h_5*;Gn?v`A}rKu zxpPjEUC?*{jS3^3dZ+)L&1JZpc)1Yk}(St15D)=Z2a4nhW(SbYlkC) z*kZZbBO=X8X7fj0Gp43uk7Wi5-npN9>AVhl23Q0VDj_}?1`=dge);A778?7&<=MC} z0D_7fQ2aGV2j#TDPkvPZ+`~JJ#MDW;B^4ps;92(VzlGM#X)hy)DwO=>wGc}7-D~@1 zZS2+f2O;JC6@1JU3%7?R0;Hl#c?98dyx&yv5;0y57n`1SdN``~%K|B}J!I2cr^Pv^O$gms6qLo4(kL&j`}nsH2a*@wTX|B%xRK;5g|o71bLxZ1@W6M zfovyY8Fw+wM+g#b_p)?B$Dz4Zz9Dv zytGR@z4cqYb>k(+5Gaba@JIaCP&bh+_}X~8L;A2ova3QV|FwtYH8*-qqvl6N=2z(O zN4>B~A(ppCGfPK-w{(A@-*c#aPS?38-^7qiWfM2KiBSWax|e_F@}fJ*&^wKPC#w`A zj|bKPWAS$u(Q|rzKXH}O{L3uS)jDGOAVL%AE(Ur}kFx4kOie-TxZ4M(hF6Mn6yFG6 zHtAF3MIyfmdRn3)_C^ZISr_rPF&+NGA-zD0yolnh2zk&DaPW;mj6A)wJs1SQHUY$RGs0R|O^jfYW zWu|5k2q?f~J}$x^cqWfyaa<7?$rq7UC~;17NaeE!eWJdvq4hi-83bRhYmlrduB#JD zV2H7r!KiXzWoG3##es_;cZ+BYQ)Q|(KJ0B7)l|{#A|bONU$)Dl1940z5a(7=0zx;1DV+3_BA8Snhpc<>&XwvhJG{B&xl}`h5_ASi>G+vS zf?xKU=3!DXRCD@CkHL8o@$qS|G@;F@TPhg5rH{Z+5PqjpU-e4XNAXLM4+(={2UGp* z*+Lx;#a&&iR{x$VVQozRK?2)NAnrsWCy9+q0~Bm^qHP{Fvqq&c{9?cKO*{q7^-`TB zO#xHefcOf0ZdC@7#kP@+aO!7PX19+8Sqv0ITczlaz^XEsO(U z8&z^qmk%5@me|yyQB86}JJ#ciu(moe?x-8oT(5o zMI;-|XC@@yqVybRPNzx*v)pt5y``>-$quML=K)oVz2}6{}%N`uW{i%u&H% zuA;-dLFB6#>}hmiLIJb~hF08c1gyec)GR$r$rgXdm~}#)u>KUk9V^a^TI&9<& zrQ%#I!c4L3J6 zaSkAIV4=%U-?C8T>vJD#PY6iU5MZ5Wne0IxsS}}^r;3rjQdjzhP_5av`Z%OhgXp!r3lM2rEGOV-3k!kV%lUYq9)rzgDOT5rU7gEI77 zniHT@Qt5iHWOTr{^eRTw?^zHFwy*@RfT2W|6811g+Gg+Gn(STb2_1u1Vg=h;`?b5v zeNnSmRCeJ8+#Lb~2i$j>RDhg-2lcr_w;hUTCeHYNcu2M)o1+eb(Isb1<q|M&i318u8f@9-lcnXy8V%NQBR zjBN7Z;qvK{mQ}N|YGPKkk~4#UK7~IV^=c^}R$DoZ^v?s?~(cmCMeSR>2c^k#hC@|L&0ZPwd=?;Y=a=R4o^`+qR|-S2tt z1%LQQ@0&B{{qKMOAOG>6{K=pG89smhfw_Ni;a`66gCF`Utak_d`=(^O&qMKs+22tO z8>_&=aD7jxWLqAUSad@*pd>6@aYsueGwr9R!Z^j9JQEo8*W8FSqGtm_PibQME5R~a z(;!Z&sgoHkKBPqpjsV%8dQ zszLoFiUwA}wt^l-NhO-1gimg*3KxTnKwFF03Bcj?J9hN!w&vNZyiv0pT`1#&pPd?Z zy@vgmGa(V?j+B&K=P>Tlj?a~jLu-QEpj0>4dDw4+)}DlE|3HkwNTd93bfC8WA7CUX z*B`W+!3`n0;dsFLb1WZUf{^oSJBbeXGd$}dU4@lU>FOt|D9Y=NyM(^EMG(;e5>ySk za{`L|F};}xBMspJw1vN4ZR`zkJG{>dFg5{U7md?U;1BtXGA82_dgRdsEsr>zkS=JP zgwsG=3?SbZb4m+ncTZvT7qqunZ}q~4WABwUyqGh=v*quRz6+vUOgy3$t*h}kExog) zWP;6HccIsUe5Gstkhgiet~nt^q-;f2il>s2;19GT+Vs0PAu{;gwDpL$wM^S$)k0g0 zazH!cp?{})w+mbHF$ZTT{|*7S6Bqi00N`@tK4%5yPI zD-zK%#z=_RQ8R|mVmGr}mlu*ve#`5tW%>LtOdyC&odhkMC&;KtD4ye7o+C+(;DN47FVYC&|qMpTfz&#RYWaON=bqPF?a%hHg3*K}J{$MpPV$XLjDfIjw3(fG> zna~1UEq^bEQ+~m|zCqW0o}O*`F&~ZUql*S>jbHM&T>66Mz!ZEaKl3&|skT2B1IqD# z6&uBv=^wiYhBy7naKg`THXMACiNImQNRuu_LF2pZGhoaw>v?$e>pd z`RQ2>hY#cd-NQObgu1nwZ8AIh(ND2vp{eyTJiW+2YXPDanft}dE65o$anj@KsA!M*GtEa2!QqPtJ$g3F?$W7Bz} zPv^|a$+m3cTsAnIbwqRaa*CIFBg=Fk$4euywHTI-Y5-NXE9{T*;jC~#mRsyN=@Zu5 z2!5Ptb0q7U0|B2!;!9Zxvt)lg{5GdWh;L-n7{C?8oz>p-xDwK1WDK(*mB>bcyb0I1 zEImUA^f=a)oVTM%atPEj=Z~w=KT@68?b!)-uJdLs6z?cBn>~Al(UDkjJeAL`@S5M& z4i8C(VHqQYodpPtLQGn}ssMxe+c=rDr*qugPEGuuIyQdgMDc4lbV(DH?I^T0H)-hV zLPO%_&UW5x#|s@}ul1te(Q)C@;z%z;pC;L-R`b|(UeWe1D;hnB^O!Ec4PMJoj=7|` znv+xpY(JC8*b*lryRlH8;f*ASHOeg?<}6ui;ARz(VR&{cpGgWShMwV4ViHco16T;6 zwO!A(%}42!-co4zzUDUjO=Kn^etw?ns>7``_vr*xm+u{~O1 zVx&RZ{6#h!!5`o}gJN1x2eOTj7jYVu#IbDkwtub{xrXB!-)W?#j(&e0F0;T z%I+JfgKAx79L@ge#ep1_o|xe0Lk_*girC^8ds3(hIh2}vRUALQcWM=rGCr8bh64<{e&@PnLu(1=4!ZW{yU z9lF!$4i~v_Ewlip+aK?Pa_;WXK7CM~83g=kB znOT`3B3Cc=!7;=bbT1)^i@l0x8&7BfCy;OZin7^aLvA3||>n7Zmy7}nn_kmPbI ziLlaf)O(uff8z*L)OdHyMwdRc$;o!!ApNbOzlbQr5W|bgxmA!M!pZRU4Ey@`QTCmM z@tv0J^GRQX8x%(v?5>LtNT0+u@)4@5P&12HS_Pp-+st^t*TkG*r-DweZY{K=`RKXa z-qM&h4s&t%V(W^waj=Ww^wK%dT2VE|64c%3tr+TRD`S|eEs`050P-;r8gl9Vyxk!@ zSrL`Z!UfTLe_RFEs>M$I>23(fe zt%)+Ovb@Y#A;aA#9IEy~9EQc#AM|q8x(1oeg4Jw>Ofox=r#7M07Lp~JjdV4^s)rr^ zBE>3(purKR(#_M{D3Vfv1C}P+pI3j>VOd`hmnN?9Zc58=FKWo(R|ymX0Je)>T>+*o z$I|nQ^!WlX2}*;rr9K}(2gbAW7v=;gL?71R7S4JXE=gAVNe6VMthPEVQ*``-7qiY= zxok&GvAIQBz@(?l;L8rdR5fu)Io>_v1wOBL5|G@M5_UckD6fhHTwaB zoXC@>m}Q3sYd!AL}=8zMd4v0AWNqbh>5{7z5yLFDZJRro zsnjaQRP1((pyZ|ybq!RF)>LKnW@07WoI3|cH0uS$TBUj)=vp7BDb)mDrpc`HlBTAT z%?JKhaD1)z;)WS44x*G-F*#|eetM->H2swE*JVAr%1fGVr4m3yK1GOT&TtlKmLWvi z_yz}gvyy*h!e$Jfr!p4Y4(O6DBNn15f)`q4h=!~wPInmE4~Z$odc-<&=L>rC)|r~v zh>%$ZhKI)KSmoD>6HvTLvpw-B9o1zbl@&8Z;epF&i7JX- z*(Uj+ynDP%5AFhS72RGDQOGUm2N~s9D{=zEfN9)(c1&5xgcWY$Ipdy80-n`^M6$rP zX?$hx^8pyqV0dcT7TxM4jcCw86VRqWH17A}Ml{5qQzROyKYEWI^om9_7`jo`qldht z5e@P0U=myC1bzo0(nv+xbOjC>zgb6CKOpy!wQQ4a0Z*Il#<;~be zr<1aYU5c$~1RA&$v?$_TUH?=JX~^m1yDiFSB9Tpa!@JZd#W*!CN8Kt?D!|VfNyW8Z zF`kq~O$4ze63;p>m_tzph*PinAgiP~i>@fCA_@`9CjGd^%bF9Mh%8WB2cRR5-hi=0 z%D>LxtWZYQ9d*I9%}Fn74pCxq`=lV-58UIhy4u+9?jMBViz@Mh-C%oRihU#*SuO}y zZ?LcfxkwO#55kS)gOH<`CWJXckRD`M(u16sJDYpf=o`*{BPOQJuG*UHs&hGqxlD+2 z5=2_ij5Q3ASOfA%<)CwwNh+4Y3%L;Kfz{ z!5j$8bzwgkn&^%QU984^%pkh7-^u zOnBbW)Mhw$dR>zzj_;QfpRi}A?QHR~)()-cXeaNBYSYf$Uf0?=PTPUmI&J4(FKg}4 zD2{gW?y5HJ+~;+z9WkJn2}rn6JK(AbNNU`kZK@?n1@KTcUVfdy5JdDN$De}Lgj_n+ zI3INQA5qRU6gg86xqu3VlSz+wJ+%-Hwu_zql$W%Lg7U60m(<+FprEmPPmtCznN5hE z&YD#@mn<)+tjAzxIZ#X=ZZ4=;BngoVYoKD7ifxA?E?DAzcMvk&v7mZ<@s#jzenpl- zjSb)%&YHcOBhXl4(^IOkN&)VB9NB-W3RvxK%M3yhr_H2TX98dG*)Ss&ZvMf}eCZbh zzGB(&3G4W3u9n*7#DAN8_?Mk(JzJWRN~XN&8RX!za`4~tl252jQS{rpuFfl< zYJl=e-}g$1eybLGFZrC8d|bhce*3Na^5Bupp@rlBz$>-rx2IQ+NJ{?DOXfA(pM4|` z9!Vow!2hFH%4xPd!+CU4@_8?5;Hl$gTi55or(W29@=69?UCL+HRC@Qx`H`12@RalY z{g3_qr-QvW|NbZb-c)cZn%Tq`^QduDGNzw;rMzc3d+L@D_rwi&R#NNdg<9@fzKv&j zL%#jm82>@4wG*Nhp5aBW+Q^#^1uAV?oXG5*?*5Avj3}}KsJFOnu*%_UpMM?Dulzq2 z02&#~@c+P7*?js-z79h$0qGMn3SpjGovY0V7M_}WPoK_~rz#ZZq+zi&6qw0)GtP!G6Hav5F+@3X{qWS>GIhx^>0<5K|FNX? z3O>}>>F4i(f|48$JdkF_HVeHiS!kL=bBByl1$99)R2P^J^tt7PJ` z2RPVz;6<`sWcc9;0YoF<<=&&bb@V6Wd0KLELQB?prG$H=_Kfvj(g>t*kB!&n=`X^V zv7FwgE4)$*_rQWDC9m|7#{0xBy166xtGrSR_W)id;5T?l125d;=Xd3Muc<4%_g8zR z7VaU$t7V+mcu51#)z9wf*!yd}l7XkulPEiq^!_?8Y2e9Ryrb9qdt*+t@%Z~2{Jk+J znkch7JKoK8qgN^%tiOdvn**EK8~O#xb+Aw_qg$<13!Q31vK~uF7It@Mk`*f$$zlcC z)J!4N9cJbS`q3mujuz-sMVU{HHn1A*m!qkIPc4!lC2~ufX`>qNFe+q7NS&-J*4Idi zCfVf4c!v8K^&s`(b+?rLSXBBQ$VvRER8t}IWMUgiVj~I!Ba#s0k5@9&LPA#g2#kct z9>3+&c_C&nLC)1)X*YX(jhD>raYxe$fB&e;SQOhi{#069>m_sB*&$u-?+sE2B}~cM zIxm^qxejT)zc)x>lcpr*3NKl@Nw4(xrJM9Bf1lr^4|m+88@y6slP+cUi%z%nU^C9( zX3Tv=qL5?*nE5t)aeJ~CNl823+8ArtW}MdVF)pc5V!T-_O%#}cJu?GGftl|DN;DH- zFyaOI?-&RNty)804#du($=~u{*hXuOF_S(5pfKulNi!EGENNQtg-s> zRQ6-L#W0w44pqZoh$v+eU>)6+J*3bINs_K`Kzp8u;;KR=R|@1Bj^6WGjw@rn?kXr5iyjDXcV`^s@40@@o~NGmxm+(*r0%Byl@9OUC{=pe|JqaQh+ zohBIuqYN3ow7 zeJY~$3~cHbJVbK@bPkNR5FoeMp&Gg(pr&ghv)A&lK5UdY94iTH3;Ai6l~mPMf>#`2 zjb`99RHlkf$cnn>m00k3J+!Y z2*_^M#CRbvP#J+&e`e)Cob5dbQwl{8Az2h%s3S21n3jG9F;Nlh!P7pCzo9Yvly>c-)b(6-Y3tiIX)Bco=qZ$(uRk4cEDh+P;tA)?NB+Gdx5(wrT*&|vNp&HJh z&wEO%idFZ7R>fLItJI<+G-v=De@2c5wc8PEefo^z9HbOypg?humO?VlFhx~4#UYg_ zqd3fnMvYAlO*qv#6pyKO8Py>X;thC8btwKZC_7h&l!t}(>kmnpKpfbf*r!N#rjzXS z2nE_lz5*2(Pbo?lr=-af>Hx!QCt|*(RE@aB=VU@j3U+b33Ebp`jijj6DJ3Z%@p6V9 zR&K9I3WH;@`wJxHt^)Ml7LvkxNY|7nDVwt$%vnX|qC}vaUi|EVJiSP@z>j;o1$yxy zuN&(m^EzE<{RS%WwhBM6t>QzWMw72uI8@;eBc&x*J2KG3WbK--y*=4@HX$2g&)BIs z+PK)+rhnf>!~!vi2EN73Sj%<`Euz`vzZFU@^^%r%NR#xsL!6{#PP>Lycy+@nHDsg# zC#$@iVU?BJ$kP}D*~DT*YU5mvi3Ln}CdV4p;TwHyLNexHe+&oVXq1S-CnJpOrn7Hk z;Fsbw1RvtNi#Rp<6|x|%{*$NlRDxd0ci0yp=E+x{`>ose5gaJNq!GHok=?1kE;g&H z{vtF;X`v{gjG!}kFi#dnv^RNgKjE7$xCPew6s^_WOtVfn1}{AIY)lITlWeltGFy~b zML0=X3TuZz0#}MLZVuZdsvTYJEN{`Qg0!i z;JOkp1!8eyNg*uG%*ut~qThf8vvA0?mEGQ2R@ZXhbSGsum6e5X6b`UKZ0gRoBZ&g! zc-kN&F*nGv;@fQe38DVjHRf;jiN4dJ->9NGYr?;-8A^yXt44;3oLFN|c+r=}ip|7BaP7$#A_hke(svCnv8 zxd=q-JY0e#tYw|o*x7}7FKTMu27}n&#K@@e_Rt=WnJbeJzm<@Ba$ZZktK?+ZP=mhS z^up)`%~<_%r605;h~F(oRV5c9=W9m0`B>_3Z1N$u@5$uD6hX{if5`_u|Qd7jNMW`6V%SPK!6fY4sP_aNT%OYX7~w&@tGT z_w1IrD@&?sE5X|V!9u9C?>PR12oY(s5w<9FUF|T9fln>4YMK_rSPXAV!iBE&>XE{- zNqUqtVIP_Yr=UV#@G;+5RvFP^%>09Kv{;cl@E2f?46ls8-0V#le-ZV*IFQ@Cpbdm1 zj|1tzh~W8ZWkgIEhhvZhM)Z*a^w#^FSTDKG3CSHyg8(v-oR{5_t(4@^DSJRkK-P~T z2`Q%`5&^C>gzkl1ROntGt{ow3XYK^?@*O&D9Ax*LJl2nr*VP{=#k_E))N4m(c$?5_(*3 zB_Xr8no2_IfrKbfya}e-BGHI*W1R+@+*6`atlCO6XsXRo35tW9gpNcb!Zf0xnSpR!FgS%BWUsaP-BRAon{br0Ri<3zu`-#~YnY1T2Tx#VwU0#_zB zmlMW^(2mw-mpz~CGFat<|4~?OGW$biKoPcxuil&Io+sdKN}ty3W}Iy2&n%^P6*H`{P+$xxB5()~pQK^;shncujwUZx~s6JdE_+a;{hG;59Ln??;0a zL(=S`HJzcdEcqqYwIM*JW>jWfqe+Z{fmrj=f6gVJ!DuDrXW*Oag^tVu30B4ZcAr3&=sVv?P8R`#6wNqy&0c)EPh_TsY3zlZwMk5Hvgac)SuwJsYxiy$Cpu1#i)51I` z@8Z^`Z;Ph`Y-@8@@JxViZ924Y9w5K9S>SMWb(t#=TU!#j9x5AJyjq8Zz0Fmuhgk{6 z=HmcDy$PJIgff2Er^SrT@Y}VU!;gAllOQyxD&=aMy_{i)mD?+>#%t3+1q-6$-392c zqh&eTELacZ5|5()>iDj@Da(&l@D?`6c0$sF4&2ZLZpEFD#jv~;5z6>QY!vcTR52mB z8?)_J3{$M%z{s(IycOM0+cRj7};)i0)Apeq7Nv8w^P=eR-nq zQ}Jv=MRz4slrnTKKXcUL~U!k;7W)#25VYZ0J z^+b8T+RNEsRXnbDA|&-x=cFi6CLZ5VfZi$|vtBA5j}+4fs(AcG-p~~=*Tn?j>ww`a zBkRPUL|a%JE~)MYX~j} zBxV#RR1Qe|u#*Lr^NX2%t<9`XtGVggPworJl-sfxrkm4)CVcRMueq}--3#28Y|T4wp((IL(gr=kROp6 z3APX@W$A?~*+;*rf`tY&9+RNS4<-BKDX_QM_%9~7 zd6LYv;HE5OLKqh`V+F$nR-j=9k|qL#G~=QOJ11huXWl znpHdyb%2n}$g5xNa4w$?YpN|Z;UG_up`2h=fp!?iC0;J`tT`bW_wjs9lVcs%RzzFr zWo=I$yJwz^kv5(T?vi$!bDcM4oAa3d#>*6c^rGZ4H~rOK$2xcv5^HY!IVtj{r&Vqs zaTY0Z6G%y*x18#1f)DT(ozm}NBe(0~q&H_>9I`GV(=@7ds&;5BjTiN|7tbc@RAN&CS^N+M9~_Pvc=wV zQsn#YCgoml&L#y~l&l-=N^u$tJ&it&$xp}1PdJdzs_zZ)kf>a?=nr~X8y~bXTl8I6 zbh3=N=)2NIe>S)1@_l#Xd(@k=@f~dA!?C|wHbu6(WO~q>qk9AkK1alr^V5QAaCOYk zNjaeHxSsHaY+MJ#aW%1SJ6_CZ* zd2=?V={BbJU3}i_SQlXz*b_Yzo266_?L_2$?u}Uor&$M8dx^Xt+xB^rKUK_EG0`{7 zFCEY}CF6Z<7vW#Mtc|d@Kid#AZTd~)c9Exfa?s3a+VXvOOYo96W+N1jc^hfwiycqg zTy|OHy#;Azw^D0ujQ=2y;7;X`ZxacHK$F@C22DvmiR+E+Og4SR4b=!ZXxKGC%HM)r z(2cE4ylo*o_)ZzO-M{`3OfA`f>@x7`&1m@qnBxnDj`-4ZRZCJ(XaWc5M$j zAG93uHZ+w`{}tYGJ9*)UDDL4QilFVK@gcg#?f#FoKS9=>afRVlSEg4(f;HHSP3n}K ztDSFoU6f!3&wGd4wmC(!vh(L7)i$m|4T?IP-`TFEh1+!&G$W{O%EoD~BZ%NrHvXs@ zzAx=UuXw%kM?Ikp2~^`;X?lbyPU!H?V#DKJ-$($%2c?T90U3U>FKOe;y|OjV)7k;A zLJz3JlU3xLK`XuDWQfR%ZE~uJmS&D-yk8DW%KEX&!C5~TE|T_xNz!95U!s zX}_#jdD+NLI3r2G@3xZAF`aHPVW)$+#-Z9^qFefTA513SxlWPcl_1`Y4$FF|G%57Z z$Y=W=su`~Y@@)mkv{?Dr)hdQR8)XX6nKGBE`i&AD z{&KHx2o1v^9nXD3^c!P`GhP}zhu%+~P151&KrtB@wXn>pIXu6@)4sdsNmyW<`NiTI z|6%43E-)_#A)#!u#w(LG7CB^83>3aRAp7P`cWDHxGaMF*gA*>BC#tyrS_5Dmix)Oy zbN}XP+-Z8KH8iDXJG>hAnzkrnst-*Feap5zY&RyUb^7re!j6KOBGap(y)Vlh;uArp z!7?WZvfc|Df{0s%NXvkCL*C6eu^cV7 z<-VirTlWmewCnJXlfL>S}<$BMrB53V=#p_jl5gfjG%1#4(v}ulBS?~F7d-eEr?1+#ON%uJJ74OiBAvaAnzE~#( ziICFaQEnFLhhcihca66j-dNk=;mvp)9`X*C^-^|G*=SdIr=Qf=b&5vpi~b)GkboWT z?gecA)YmctH{oZa#N&b)!zP22;1j#bo3g|eBv9Gv2lI$um)?7&)n3UGSCDgMvL5v% z8CDJo783#-np9ll6}Nky3I{yl?=91V_!^?mX05-sOb?_|UjK4`Z=)f~W#8|3cygUr z%4L%Qb=4_w=A*>F@J-D%QW0pX>Avt*g9Jfyk_3sLpTe0{~w; z17eGOEGWn17v2+Y*Iw<9`@!`imtDb-e=rYUw&8i}6H>$ojK;HiMvJ&HHzC*ynz4pa z9F5tyh=u3b0qVKT!yfdD*>yR^Tb&POx7lo7inRT8L2f7>sAA7TYzw42+7s~FTB z8=Bcs^&6jEgxF;n#<1k@V24Kdty@pwQ0QT}3XK9(b8<<=02jl(2xH*iS@;9NVJwX3 z;(E7KASX7KfC?yaF)QRoX4#1=S6j= z{CcEf%?5Ab8K?fb9`huk8`E#Y4yRMmZ=Fu8%RE`VG4=&d)eSQXF-r_8B4yWCk{^5X?PzGDgomz`nx(ysy7;3jQ!2gXko?!*D3sEEgd;jqevbBegj@7=yDT zN09|=_GWL@c_(~OmomkWvmBa5o*Vh$^R&f5FZRnU!|JKEh{Dnp`AIq;zjUVyJxDsb+&l19T~#0x zh>v)JlCrD4Y|aS5&O%bF4%Q^U#+0_z*B7b_7cV@plEe^IemDQX@fTJr_6azcx2o=A_Eb&kfDANDJ|p*9g6;E8%a+hv_~%bV za{iM~IaNL*BQsAs{fslueEnIHrT?6B&pZG8u?9a`_9pqf`OR;6>)U3{di(ETDpi7j zuv*9uab1G$@8ra9@e8oF7B9exRSbz)g|{~&A1c3WtIB;pCMnF(N5)G@DK=E=AwxZH zxuT1V0om{1l9PZ<03l~qc2toB1+S<<{hn@_TK zH7R^_Yjv=<@hiF#XGzDTOp&mzZl>dSyB7yYBeHKnAAYRB*gv$g$y$-l*eJ)?C*^L* zHoC%_xlgy;+oT!H0(ZWM1ph?%Z`DC6bX*kHg*zk3PC&}lni9t=8KSZGF^}R${YO@R zi&jTPNNd6vC#v%H2YmbH+zcX91$qjzJ46`5+`#PI{KARXpFKEwjNOPtE|+BIFRgbi zq=3<*d0ntJPgRGyxi-v|^CsB2nAb+UoDHyGi)8%@n{BY!$WqCa*l;pK*ZB;YHD#>7 zA=S_G1;M#xh+HZ`Nr>ioWh0VnscgNcB*b^pn=!lvcx3I-L`fk%n?#nLE8PZ;jRPS$ z`_#}(XHhs)|{?BKU4*-kz~dO9F1=L#o3 z>V4ybQ-NLhGp*i76?HQnPeWsU8xO^!UMbj%*@QW3Hrix8+r+b~^{G~nRUqa~MY*XE ztbu3K8t0;Cr*#^Ce&C$Cxg;1yBuGBcDusLi6+Q-26*`3Pn796VUwx`%!{>QE-UZQ< z&A1e)^tk{mR z{rQWO5LaDsi|&i*&)cCWKWEh5Lt#OG2E*VCKRKJRr_X`Q2`4o28=-*?)-C%vA@ zyLw?`M^|T2W^G<2 znRi;XsDOO8P?7pKHx4_LH5WCvnGV=ZazjC2`drZz9yiGBeJ< zWR%BuUCikbLJ&m|)$&J`#!iCAaHy2PNHjIflN^g@HAwX54)rB$`PbePL&~V%l5RAs zsLhidGWQqbPhTnjeaXQXPEub*m-)X@hHuC%PZFge&s%XV^>M%K;PN_ae*KGhw&1cT zQCcOB$XNCoXe>Riy2b(>;v0WY@(*{RYDwwAmh};58+I22A`SFOp-PG(`y&Ck+>TOvS{t&9rkz z2YU|q|GLFQWT*T$TTfdu`2z zYAcc^O4{zN8oD5i7qBytMODq@p26G{Nx&SNmbKQmE(~`*5NKf$VEI0xMcC;>u|?q7 z?hcEvx*c}&EW%CRv@HUS^90fnF2cLLAzK8M&f>!rbZuz6sbJY27TeHdXZTIyr=}fI zTVa}lDY=wFdeYf2U${XAi4d%bnzs&WGd*OT)ggqR5}peaa7`-+rv zi#K5VONN1!L3YfV0RW1Y=nr`_23NJek99)s#wd?Rk*FI$MBUxVCV(mdx0Ndwr_ARz z@5502;XrlxUNm>O+%qT+Q_g;jmx2p68}YBiPngz8X?))zbd-$<0e3gF-{oB!YR5!y zy8i&2F%Ps(9*Z9V)?mI z^2_XUE3FHyuAo#m{-XD5)6pO`;Id7Jpy7TVJ+JA|C|;$!@?LM($dvZsGGtor$i&xa zLtpZS44o)c2xI&+4ls*uOuuV)^4Ra~7D5VEg z*R^5=L(JoWn1ns`4G~sjFw4J9%<{bM0t&KU3J|PZe8B_Dkwj0#0~+wL_Z1x)$YusH z7Uj}FTui7O9v2L0mZlx!NXD|nqL0C8mB`yJ^I6=hqMK^32&AQzN=)Ek!O7BZa1(av zTt=7++yHOwFv_l&GwXvZ=)=3thCY1aG1rG{lm9>d2QB{x;z%?B%cc z(^vl4%2)mQtN+t${^BoJ{ncw<_t$^(pZ^O#tN-hN`|tnbZ~yLpuKD}dzu|(l7hcq= z=Ks66dU16f{+qV{)>qe8H^_e*tDCAb)y>sQs+U$Tt6pBcg4aUYW@K-*xEtA-uz^{Y zZ|Kf+FXXN`J8>t-1N-|of( zt0L5PW_=$*oFFwta%LC7Dhsn`lLs1PS~QiARf~?yqT~X5VQkm!_0}2;wh)UwVxnZ= z!R1x58Za8zW5qJtf5GAb5paVD6B^tI%VrP%;2&rPFv1Rs5q40Fur%@W8v+~9#>j;i zEFMJFVd(xnjYSuX9;X)G{tIC5#MwMCS$>bZ@ypn0Pvbaw@?Ac;luuZ>GD_1e-mVqD z0cFrM+M{J~6&kEG7OfpULG8sDsakfsR4899F-tk=6I05p&abvUl@_M^Er&p zd-xZ2*4=y#6^*tl+D2iAKVBws9Dd`jNo*p9Mvq4aC*c1Rn{p@WMxYd@v=YIj?fGBd zR6wOoRY;YdpupWjbqCcs*f1#UOrwo0ZnX9X#!6K*RcPPrz5Jsx{S8F&unk!ZzYRSN zqv&hB^p!W#LKg>K;hGxye^7@=%Y~Eum|h$q_HulE6b$~r4cPbzER5(dK&(G|@v>2a zJ({{;UdhZ8!xBs~zlD9PjXN8j*)dvaRvHxu_){x5mOriICus%k44A(!0D;C&{oag{ zZ@UBGT?&MC+6W+KZGb$50MEq0h5mMB2l>F7+FL7kpzPz?PATyLZ8XeBvXHa{nj9EP zVDFD_>Ze18fI1?i^mEa)+%8SC#EH|$-wUwu0SXKQB6XoTy>nW802e{Cz^k}jfc=2j zF^Os-!NqpI)(SBz0cQZ!)q(Lo2ZjaYy#d9tA9Rhyf4^6msmzx#-nwC4XSn{Ram z{%u~#nrBR!L;R!u-U1~5OWXU8`Fq2r|IAK5_0{}}KRnSyZ}&>p>EECdSHyUk_dn-F zZBl>T*8j)-y#;u_uI>FD{@%v_T8{6>F5|POoI~M1KV~T+5csD3#V^JMH~=u_%=oEpWy)nWY}XY9+pFvUt-x;ibwv0rleYW1xF7#H%C4Vm@v+ydDq0+HIFAqjrb+*F; zBrnAppbQe3;lV++@e;IwmT9w-_-r^fF-1}5)|drI0#p8&1JE05e#Ck&4$QrIh(BKx z`i{sc59X*Grma&7pU8(h&Edb#Y^$?X(;91s436|Z8+-?NH+&8ztn5k`HHu`%q9 zn(fLw&0KSF-18WVe-4VxqcB|Sm5jwdn{5k-p^_&IcZ-)cx&AD6(OqxY>XodE-?c7m zQ{`m;W-n^(XKeraEqN)Gngy@(O4feU+FzXv|9UTJLTZxDch?(k@JiPF`PRI8WPJ2* z@sid&gPrDSew$aa=AUWJuS`b&RxfGIGaSjg-|p{C#Gcdk{%!u=MC>!#-oM@78~!{U z@3RNHDx5cZB^y2inG}DL@xQ~1+TuQq?f?K}{Rk7+># z;n62=^F3b2)?}P>npv-^kSZY~37~KGN;an_+ni=n9cPyp{gmoBPh$JGcD+OTAH0&a z&+sCdN(!_0dQpSfSt#oB+wJcSW>08)|2}_jFnc`SBN~CbwMu{)Ps1Tbwe4A}4UX^k zb_|Y;QOa8H%)>Fg8twyL$>teCnJh%x=W&Y{HQYOc?QeV_&$xaoS*H(rC2Rk5RN_=x z={kMLi(31qp{V!&kN)1^xTNj<9)E9eM1Cm1ulZTZ7D%sfqK_ceJ$7_0&AY!oF&ZAi zX1~{zNchLGIqsw0)F*0W)I+z6$H}(ss(-^`1HIbkbi0q)tO3wuF}N~gK=gCYJ6KUc zvCsE@KJNV(ZqRi-kKDY&E7{u7Ys|GX7pu2_rx!IEpci-^p?Q~Avi9lm71TFMOJ(yX zyoPndlTq{Rx&O&4SvPd^vYQpjYJAd58U`}PYaZdY*DG1`JX*`T#Yd&~^)luhbaJQGV=IQ92XU~0)SF+}La@HIDjK4RcVmui`rMTULQAgO)!K!Te zzDYup05GcQ*pXUjEv|nKyQ-Ghm>A9=Hl|*vmN=DY>oa4_$Y#?k;>=~Vv^X$UE zl2iaA((>ln8Ohx90nkE3c5mhuO&uXW@sfpZ{$g2);uSes_|Cd7Lfg>t6AqNuVi$` zumyoaf)a1^lBT}!Bw_ZOcjm<|JOpic^d_%l&C5OvKu!&TS9?k08sdPC8r?Pi-lQ%A z2ORsZ_4mdg2s*?AuFrYJ!N=sMLE z-|Qs~f&*;+@VoQPr__6$SF+~mq2@f&fn4t;t$8vgALtGK-XO@}1%Lk*e{T>(BrmR? z?5h86^GbzdhQB`HArO6Sa$*00IXnl<0Uu~N@bBsYF`iPCkK{d}kC*;k9uIf7F2ge$ z2+mw`+UcjC0mm-2-3~ltx9pxhOPeUxc4HWqVk+@tt!u>^<`QKMlmjx#?nA$>foaQ* za#4AsO@z^Sn$lH5GT{|r_$A{b#aqNiR=|QrlgDBdeY_$$+nqvVOjXstg>Qu|C(a3wm#bMSoUJAkbSyf!Kr{j^uU{39b`vW}@ zjvWFL!1xZqf0W*c;* zXJI;WB?Zx(eL^O#l11TE_&~i(@F()OdCbc0_u_1haQeO)@AcsuJEzK;y=QNp-|Ba- zwA(8gzoq=Z z(BB(7r@YSbAVm#}{njXNL6->($D7&X%@`0V!L#eT?zV6BN;XRhbM~H!{SSLdn<>)TCiOpv-8WSDQISir%TK(d13^}j zDS(N`G}0;rT6q$7&4+1X8FD!u-sb7;lTMZo)2~|sb~{S}d41aHwD@$8)wd+Fn#L!1 zmty?V>Vm9}HB45s297wYtQNFdV^IvuCnbmF_?m^*C}X4B1cn(srn<&FJ9s2%*qOkB zr{(mRzSQb)Bx4OWqYFNf0a?!|l~d8W31W`87!!R>E1e$&aSZ<#hh7xKFxCiLXg`oK zCh*8|=P_3LaSQ;c&C{r+rE*!l-N$l^3KYs}wyp;FQh|@RQzmv1eaylsCw{v(yHC$e z@N9>OS6hqK>O{oR?WUZpqgd7@UWsgc?LkQI^wta^M)Lp@w=fSECWj*+UeTfesSk4! zj}h$)a$Mp_fbN7*dfZS`;%8_gjlfGwVfWS~8wq3YQqW~eN{P-*AJH8Nk~`t5qY07C)~O6y`= zH^wW#EAR~WX6H|D%r4q6EpsD`F-1k1yebn=5a^PnR`P%HksBD~l%*_Qt~mn4e!>RI zxABmKv?}@A%2U7W^&advhnO4=&Y${aKzelPbGNr-GC>j_kwU|~i-P2{g-SFqw9#m> z(&r16^xP$Snt+|dj!9sFg+0X13ui_4dpmYkB$yKt0#`jixI|QK3D{QZalFr4wDnRo zWr?@#e;EfvkGI(9E7A*A(tbE*1^I!NkwvmRtey7mJ zarq6-Pqng;mYmE0HIYv?I7VR#5~Gn{%1RF5Qc?ea_hw9iiVUZp09LKB1;DaoBSEj9 zc$)^=LE{KwV#sM8MTGge*EQ6P*)bz_6asdBS*WBsj!stSxY*OL3YA>R`AY8*M!`dE zSzJ*|0ZavwpPQHdQbXaj;k>7mh5~@LgLbhe(JrXHH#HZofY=TzG=MplnQ?@?s~Ft~ zWRTq;&5STr%dVRtkgyQTzddpzDRgZ{(1@L2iR4gIdo?3a#c+*1s(zuZhF7{s@aZ^M zEf*YN&DGI?CL@2LRu8~Cgn)@!V~{b)h-pT|GB&yO#^8%j!nZ|;Z$1G`7KKh!7t*fL zVMH)h8pAtIYSdo13w4>60l!dSsBt2m3^z{XCiz5USEwP=!b#XQFG5@ub2!xTYDfwr zodt;%nlsWph=KmmLRd%-fj7Y}F^Fl~M{M(p5PvKXq9p=LBT!+X;n79%?~vrSL92s= z5W0mu9l;`l3J*qV3xpOS%1gdzc_jP=?9hsAyqW(Ch>PE$>(N^C6g-4!Od*^-9D%yh zzb1wq#c zX-c^`-=+HL8@-LMsoHDV)em1|+4`g6n^wKntKL0Ww@L)psP5*VGR34>*M zb~GCgE~*GWwsVcFh&4e2tKsY7eT~dP1RCn!!H{XdANi6vCuXbxFX>}8hh94|F^Zz( z@-_39^kt1k-&!QFAzwhG21&tI!}L5(e-TD$_*!{o<=+8ltj6$v_#ZZZ!A%+*heP z2dAg`bfq%OHOP9!F_4iqXG#y+X8XF{gLb2@Rlyei%{~zHz=8?7HW~f{X+KU#J5V(@ z)|QLFvMpo49i-JIdY6$fOr1QtUHMq~+>Ps=vB9}jUVXF$0OXrJpn z*ywKz@}!F##yKgR*|E2fF^vJDq2xtPmjUrlEV%))^muE?s_cnw!0xO_M$61aP~}<lE5ZY1L7mT;TY0RlFO)CNrdFKiZq@#{yh3c0YSKA$Sbhh_*g*0_ z(Cu;g335GZ9+YH`IP5b@hO2A+k#1`p)Q;LDR{fD&b$pajGV!lnB7y}}EJK|T&4r@p zPtQ!7H|7sp$;B}9vK!E%WClwva*nZCJ4D(3{ew$V@xoLK;(#F1nG9$ zoHd;}!M=bCcB>uT#%*_(CD=3FiZu*-%+Z{b+t{Jpaz!$*S#k|xfw`agg2os1tJIAse*%-aeQ>sNBM~ z(+A5*rgn8u1vPYlpUUhQXE-G;3YKoZ!0)RpU|eYgQ07Bq_~D;1X1gQEkO4HniCYM2;T&)&oZjml8Oks* zPJ|QFoHCD}fQbu?li0MnV!;A?C%abGs)|oKl@EFkmO7u>UgxRE)kWx%GZD5PeC-k( zp@BK)U|6QXAu<9$U6m^@lg-JJ9LzE79MCn{e7X1GHXpTlAGkXZO-h>xUxTKJrx1mu zx&goz#z4KLV9&kX`)V@+>y|?8xr!_<4euz_Q5$gAjy_SSw5d~|gqjQx~ApLnIac6RuumnhH>3lTVcgaLXl^9ulIfP$~CzC6|z}S|c zjHX;=e~!fkZFh4kj?rSI=-v$Kkm`M>qA|up39}Zd%6^Nk+RMEyoA2Y8P(M1i#SQdW zG(U@etgtJ}i3IKRWLo9)VQ{4*$OyD}!H4q98emr&PaWg%b2y9)FF?Ys}_ zYaEYALYmE{#MC10Xb?6yAG1N`qYRSL15U>8^`0&2j!w=H4+e=VDKsRv znch$h`2_JR`qY$!*`f1EfqC6vzMrF&IBIA=kea}w6#{)`ECuu-_*L0s0`; z0x4GD)3CKr-Ad%j3Y9WIWnz-dl*W~#(CCHAj;JU^W2^$c`z*fVvoNV8 zibfmir*-Zt)RF6P<~gnL&tA)HRU-RsX;nTJgz5pWWW&=V9=TwL!j!&QsG|mvpx%^9 z@9z{U%^z|0y+R!q#P8~bAYN$18APnyLn;DRcOIHwm(hhCq~ZQV8cMvQ`(8(q&BD4? ztYE@{6`*xOR|bPp1vyxIiH{nt#Y;&g12mpUaq~@~5+nsfuDEgK@*^FfDF57Vn6+;N z_Eg@D@HkW>4dtt`cY_e%(k6lAoLfXguSyjB&RQh zX~3Lcb~prW>qy|Wlg1iU@a33EWxYh}2Hm%`J|!ilfx(k@bimwJ_k=SmL@!2abFO+6 zlt+y(6%1infu^q;RHZw?$=hLkYvOIi^&7FeWiScFR`C8^1D ztQ$@;f-HxXYa2Z>H`pl4NhrW35afgrK4HgOm65dl(Lp3tT>#6!0}{1GF(QG_30kdheJhZo(Gmi`xHMEDi2lm? zX{qPACmKz$zRfCr;~;$wR>JP5XoOt6V~5CozvLZL?g->=1P4ck7%sv)8bab$SA z2;UfK(&)zpKGF!{msuH_8RIv&YbP>6Fd-XeJv&bmP7!?&U@Y_F<(rRbivuI2W24+2 z2gWEh*nm9_OhfI~V+IT;%f*3lzoZ5%#8oY>E~(IY08&=NVrzYCE?knCdk>oev?aJJ zU~~}p(&|CeZW?L&mI8dC7a*^s!xum#b6MPv7HLBTC>YlR-j^Z%uTdWzZ1NNW^xwhJ zy1YUVZTJd}JA9?jrVb!zaNHQGKvcH_g$8Vl@o0g9vEceD2<=4(x8a!JB<#n3;;vbb z5HL)jE)y7)mvZG6%)_XHPEqWl4La5O>vcCR^R{YinkE9o{t*O=(E`$R^E4VAONa(R zzXS9$q0``J;=w?=gYYJtzXY|)m}nHAS)T`L1BGitO(y=X4yi+CT`weFeL>n}lynq! znvz>oNkry#mUIULX_+g9(a&~#oy?dzApHv5li03hyg;6@4I|GJh@04;(`g_Z5t!vg z4yjH>{YFlhlHg@y!_vVv0G2Kt3;S2&5Zg+WkxN^#(>)>N&Fw?%HN*l?f!mesg>@`S zjeYz9^^odK`Pug)9?#`Io?CT1G>Zp&)k7RllvK7MBsZat8atstqrh7^Xd);6DMD&l z-^NDI>#-A*_^SF4I52aQmVv@pO9?0x2S3>Z96XxfvKqCo#T64C5(XoZgMtGexcfwO zJd)=ov89aoGN4-bFl0tZ!d%0gQ7i=o*$~ZZX(-tG)(-<>8&cw!We#4TIzUV#11UJb z7ln0K@f{u|7}W&rxml-%CeR!JG(qUFt-T)hSyJ<3@ERK(Y%=J22EPR(Z1dI%tBEKq9#4$^`rL5pP7R8kPJpe^&MwG8{Vwmeux;X=z$ z6!MxA5Zy2@*gCncY9!3#95(G@q++DIg*^Zz+HkN~X(25u#@to|>#3UftC?;JoEWUg zhr2oqw1YwK=V1v=wn^x1H~UDeU_8S%{eYoZ)F?nkAlk^R#*7jN0F|7yFw3^uqTMFE zu@##(UoVF(Oz()=nele)m=3A1%)n3?YF3ASP3V;?4}jqb6>f{ED?nR-a^D${hZ8_D zV$+lae1q&xRD$VNtYMJEMbtW974r_6O-?Bf^m>Mlx=ngL#0-<1*Y zSfK>)aZvLDzBy8~mnlfEVQ5+42JIkK@B*+y6^aXPRiSSHKpl8P>ng@$c*+$yx9_}R zoJL2{U1{qfTde~xBtk61y;-9*iA^UR(6E0Y;2;_;^#vLcYRWS3Ix3yO=okzJE|Kl| z*iS3Ta%^nHQC+R4N|YEhdQV)}`Gwx(#ciQcJcgbQ+gA`Aj7#~jzcO~wsAliKcG!7Q zc2Y97OT4o}T=aFFFdfS=P~nFw(s?b`Cu_kN(A+VC)V8*+6)Qvp=Q{8t+!(MCfh0Ij zk0oO)rpx+|*L7yd0D(*EcKHk*7v1=w8K1vVnY$bh>6 zXXZ$O6Dt&eGn`dl1h7zL5wOsU6W|7X2W)`YAZF7zb(W&VT(9UL~N1mYiESHEP;v0BR9_$5hhkJm?+^AVTK`NYH|fK51UBjZ&oLixZ{1O zP&U)e#pNLzJ#>bc9^E>$H-AB0m2zMV%JpJjtmX=d74@5@e9Fr{{|j!0h=Z_`!uHp$+|30JlaTzU-*GAa*Od&6HTKUhJDvruAbWh>KZa-1L6XAH$FMX%d@m_~_D2-}aTglKQ~q6YlO z=SI^B_;+#uV^VPYe8F{v6_NxmryJlWC^8w!E4&Yn5a2VDX|q}A28X-5O7~SGX@BDwyJ`i5}8M5PM}ETawr}% zv2ZhA2mK~EbFUBMSDN$HGRsURJm$+@(0GgnZ%&HI02TyMzx3A{$+pVKKizJ~C7^T} z%|TL))|&TmnI1iq?ZeM(FaF`gR%i7WA}4~)VL7=Ao~Ahd&pr&pah}tKO&!Asz{3=+ z_VQ%5UoX^FYi)b&fwsOQC?}J~zU_^f%;4z*8MXG?vF5=-%|~>k{~vl;6EAeW@5)H4 zGI1SMX=I>Dk$3{5Q4`;pTnodP7KHSYqmu?y6bUlP<@Lco(v^si#0AqW6N-lmqo%vW zM~#gf$^1x0-J&?+rnP+3zamc2R0w3S0~F;Pnj117h#9v^2O{w{7^bWv#bSa0>n@H; zmL;VS9Xq@K1NqJ8DM_vMxmrqb?(x2tHsx+Mf!d`02fdZYa?RR>OmfU1rzeucq)cdc zFcw^$Xp;;gj83xb=2k%$T-Sdyf>3~x~3zUo(iFpgg%A?8-5~e1J7M2X|UCTQgV5rN&2&B z0()d)*}2k7-luArqffDb7#|s&7cl~YBlK2`n>>QU_>pSX7EEarMrA340?Mh=1kE=3 zSoSCnSD_4VQC{s6c2L4mFY)SXs@8LVVYtxjWG&$|pxv4qH6;B}{+aMsQ3)sQwC-Ze zN&J5(&Yef2eqQZdg{6Rq&+Leiw9i*!k7s|PAKLUeWxP{`CvQL#KWvsBnYhxY^Km6Q z2409IG6#+2CFDBmHH};;jXIL+RbJdsfW^bS1-?kbp9NMNGu35=;uwghN);5rIhcuMSo z3wkciI)AEOa3Mj`%G8Y-$_BR1RtYU#uPDz>%M9+~yWB$w9LCzg*YlVPKa{}u1jb6e zuAArQ9SIker5+O|+KKsWXvIp(d?;d}y(xuIR}(BY4LwTMOQG2 zulS!5JCJdz0AAw_8yVBX)j@qz%q|zvTfL!zi2e#ibf;t^d7)hX9TYJ}itrD-iB#<5 zOa^V+Ca8JU14iG0Y<4DS#><$R6M|+gT7!yD^D>3-2(OA05PZbSz#%@h=| z4XxOP;S5GogT&Tb!t3DO;11{E=c%djb8|^m?IrO1@q)qhvXVMN^DxqeU`HyfJYiWs zRSq)oC$koC{4>3D;NuH)3&dXIORHBp%dN6Z+&Bnjt7@teL>E~e}R*AK+fsG&m+=3icYBG$rmem6I9f zG~oUh(=dG>ux}JF={j#csu#edrIq(p#Z;@&a75wkYkvy~EJRQyKARI|Pa_JH36!^a z-zFX9B%|+aZuA0{{){`D?899zXn2QLvixM^eT1x{hd2LDFKM^52{ViA|6Tq*pMUJD zUGM4M;gt$b!3P-&Jin;}4D7cn%D^;c-*y_zCeSte*v$#cqRqn7st^RLokH@#432k7 ztSGtCN)kiybCvxBk`{E~b*B7_+St}K&(_V5;aan1|1TmZzBEjd%OeC=nlV}wC zw4l}mzeD~XJc80q{`+h&U_K4@vBb7}sShP5v0+D3Rrgjlvi#N?`DbFs6Y7=iPv@>X zzSpm|3vOyaFQ3t(%bv+P>5OKLq~|LOJ*#lmo~1KZo4U26%jFjqJJuk#v=>~*6|lkP zN8}FUmtLM#k8`R(d&t946&vaO69WgRyGU!;L) zuVBlfM_DJbSq5i``k6}V&0a^9c-kMJ#Akg%aXgG5hw+-@Ws(SE$bJqRf$fPUd2nIB zc2(MiZt5YtG?-DeqNkxFx(b45WxTGOScU9PNF8@;1i08V$&yiSiLl2Nz{56E-WDsL z4bSWtMQ~fA@~}!p6e6UX=L8pZQYNn}^u!S^NSWMLQkBaLLI}`mV7MIjm{9`&l2t5} z648QLHL)qb!<)2dL2_$R#zL6p6EPbR_rjFCUH%M86tyP&3`&%lXi_o0!#lfMiOmhz z`2nXPjqmY#_b8BMPtUN?cIrz@IZFnC3vo!_FYG3<8*ETF0lmcLAir62s&H1hq9o3yC|sqn?Rk|bK_G@WnSd>zx=EY7+8Z4*vHOUfg^!98Cx%0yqy6~IJ zypHl4dR;{-&`2q)fZ8!ONT7{u?_EC(GJ({QCJVdD8@o@D?U8T|qYlVygk%;x-=@wt z>Mw;BLC23+Y`IB*nOt*sH!IEY2Zz8oER}bwb(;X259FLw4!F6aQl9S9T>5ss8cIit z=>Ce5oVn1gi$o+{?Q=0}+rx*lgF2T=v`N!T27VkSIj(Ub@C8Vq4G*B$28!M+n5$>u z+#;LhExX)j39H5m0YLj}sN5rhn#`7NTo`&|hzs_*WTdhM!&Yzpgsv7QF(HY6bOY8I znSiuqI7aNrIj0I{yc--yX5bJ{kWOf8HF8!Uaolih^E$TQp%p26OV^vx-|Cf;e9Vnx z-L`v4yGxCH%)7^h1A%Bu^D)2O-{<#3KRqy*5@kk8G zTk@VL&BiS*#Z!Ny&Sd2V5AL0U?O_bxgWF{s-@~DrU;~*pBIayzDr5PsI+zSF6zjlO zaf3Hhu&nJqI?Eas<0LKyK4MA}IS`I-;p{lDNYz3HHxyLExqwtA3B>DlP_K<370n{_ z4P1k}CdTNSA8TukB*M4KIJP4#tnBB&Yl3GBiXyZyy<~Y1RVA0hu56EobomeQC4@I{ zB>0<=*dB~2+8DWv=#o-uv@Un8P#4VReh?Osun%S&Dk`bEdPyrz{3i8Ds4@vO5u;Y@ z74yT~8grDiRFF7~-4HBncPIa1%@5$O90Y&_I8YH0pbwn>2(m*eeAM=Z--pBR zWaGlJtuO`PXJ#j2B0svqr|>WRriNl9G6wH5?uATUJCN&+UF;0M&6KcPe>=ur>D~NV zyCH*j^Pd7?D>^;`@Xvaq27Wad%%rx|tGuA82CA!ub>b9eV2Q<_tr)qO%yYllaI3xbe zr`5Mt+i$ekF96jcZVyAmt@J`ayAg;<&FN`8`l?MSs`iR16}%0CXQEONuVu`(!dz7b z!OBlxG+a#(=-PtlWdGbeSb8&tQHSoSl_h#pxF;Yqbya%N%|XOxTtw8XP3C<_;7Gj{ zaHMVrFYXGB8s8CNmpf#@S&ppO#Xk-CXT>g_8z2u7FP$F1Wg&wE*)|I+B+AcK+8*9uD+gP*&wp@+z z9C%A$$`T3EUDk?i9&@lhP|aDOA}|Lk@&Tq|{W>7%z66LluQaDQlHljMR;*w!tOxv5 z@^t(}67bNr!H~m%LI?3)0aFGSmH3XVg4?9H)7YVB<&@s*dMdPpy2Yz~uoIPnBlUCE z-FeczVPtupG#1Td={ekWtysZkt(J#zF+hqa!dIx@P-wC!%E7@c17uVICK8-j?+xcp zDgt-F;X=|2RLO11L_gz!JRv`p1Sh13A!~263nb}Hr`pnrfY;YDOtrNhGw#;>` z6niP1B}bmL0_*VDunv0DS+HAZwt<|sT40*{lhqMTH779&I2kM0>S%Npz3Af602&MP z1I7_p*k{;b7#>xF*4&SHH)P2}s-Cstu3)+e>af^=;6N(U^&mwN)naazsg5E!Y}SML zJk4P{2rDTP2}o!c?>OOhnr{Y12cSA2OA>0*4T0@4e-H9EH$Jpo_QUU@R0^8 zLj{xHVE@xYrO5*Zhsw+={%&=zi( z7+Gq$!K3x8GgG`jK|mVZn|f3nghnKiwb41_XDXW4wPFij)J-HEwsJ@^x;eypf|e3w zUhh>6nYmp-IbxKZO`@_WLGpUy*4~PMw{cC-^ralM* z|LmlrV!bN=|KIx;)VPKs0TfB?Sx7P*9H2`bIMQy_M)LiWAN#md8l#JGnf&QzjGg&- zoNdL)Rvv1_nbxN)JDcZOpK;E)&pgi#vOedz%YX0p|KNGgf59J4z3@eU^x{8$$xB!K z$;)2;ia&kjpLHho0|~Leip0KGE#yFCpz#X+v+~8Tj>ukZ5m0WWSex-w-Xmd|m?mC1 zlwo%Wz6;`NKEP8Ue+s;>GR4Ii_=8r|X%ZR73gz)}r+;NDj>Z_rD^Ne!q+tnzt|Vwr z7VvVmjV2RHzRKG$4)Ss>Co(CaWSohr9QQJ7h;l*+S&PEhA=5*?zq+KuSz+@l>GjQp zURUILm1{(%*gma$jUJf;gLhtvu9>fxQtJmC%S-SeN5n|vq^x8m2GQ3XMTr-45YWH+ zWHHXdlRrY8y8L=Fe!VEyvahL@Nt4#wgkehYK_CR=*} zTBAx4_-sE`d6(o`L{k_!bMqqI9wV#q3fcuP@Wn}8IWxr*tk36g+9Yu>P10;YmY5*g zO}<=aHh7-TXqft>P7djrcwDz8WBoeE`um|A+226(pZIKf9{$TwK%_-j*Z<8T&&AWQ zu55f|to-b-l)r;w&t_#?mVaiwXC?JWG1_UyDMK?E3u9&YY>z5b^+q4}XHQ21Joyb! z$pqw{gC-ux>ZOu$T2M}JhqV=R5tmuk7OSSqgtTW!hKZFPSi2bc2e~@z zolA@}V)U92VYJb&a31HQR}OA5@}kPx5>5JLVYxh#c^R){ZKVZS+q+oxJPz1|Ot@N$3|;SY4IFu5W%JtXyf<;Eo?Fm7KKn9d1<(-VH|r_$(Yy*$vPu; zG%!n9g9@1x#T$r5z7y?I@%UjMmTh)8jvMLKYaI|`8C@ple_Cxq}f#~X!( z%bD!)93((q+$rfMRHU7LCHd2Eu(Wc9NmV&N{iH;!)|#K?z|SJf4?Tu{k!YDA(ju%& zJ%jm$PjPXd&&*V{#}|NOyPhbVzuDcb~IyNO<1k}b13NEp) zc^w0K@!WW7ls-_X^V`yojz`CqF4Q-?j*U&C6!N!?6qwVuypF+*0od*HNn!AvLLG6M zwZS@_&q1$aFc5ER#rb1!Ml(~6f}dri0I|HUg= z^AbWBnZhspecl=Wxu52p@n7-kTeo>UCp`S9nXt7~R;g z=Q!Y9_mkSS$@%{SX1HoRF72*g;|BmIa9?^>|`OpHqI(xvjChSt}jPt1zEJ&`}uN3JbRooccFT9 zE^^|tnv60T;+0<2qQM!k2aUwkC&Xyc{`^U5RX7sWv7KwZ9gFjSRPghxNxFQq7q!vS z{4SD=`+b|JD6!T%@0PLf5`Y=mrmW0r8BWUJw|o0`FkfSoXL$J9V)meSu`e-KOf>W; z!c)+T%2trX6c(YnkwI~z^=$WsAE-C9Cu<>Z1U*k-2$Niv;APKCW7%wFbH!wnJA8P? zZ}dd94o`c`?Q#qaR$9yf%@-=n0~0V6G8l?fGcUOPZ}MJ^C#actC4yGMqOO*O%1^>2 z`EIXo31rmVi%}C@ut|bqja@peS%RP|ASn+P&x3r>+qq9kLis!L-N$8>of_(cT>`T5 zIARC)k64~ndf?FT;=53gZ+R;#Fho)5n_X*B>VM!W7XBgMv_!B*Q70ZSk=f3#ZfwV`1ef_Qx=2 z*-4QxsM52zj&Q)!@LYqk^I6pe8OB7VgIlq zy0VlAZSgbA@-A#2rz)r%0GMajmWX1&^^W<9LT+xJN~d*Lm?cbHIYuNVBdjgOXpX*} zo^SEt7$edENCg{bHXd;m61cRDj}+R-C(GdQ$+}k+4m*F;>luNdUM+AXtiV9Q5CCbjQtZ`WtC8iPOPO+0jRVKX`d+az!+VR8V#?fM{o$+(m_)+<*R^5|!*13f zGjZ-eRf^d&Uej0^lR`qnFYx`y41~SG{|-L<38FpCZ9U)}&MbrmMcG=J!(G{7qzwN} z-oG(??t7p`IeCaZcLE)WjSjDJJZD&E*^%X3@68+Gasv|xkCiEj8ZuxUH7*6w+Y4>* z=u&8ddbNa7aD+(jsBK|?k(>EsnMQe&H>;>kK&DoMrL zyy9n--8?Ml)XTdJ^meai3biC5*k5`oC;Rf&eEjXwWC(Y7TW0?f<7D=^ZTVWul3I5a zYKeK0k_Xy2w-MO0_)6{d;(24`SGMKNeHw`5l|JQ_5@Tf}8O^7?q@CgsW96oI<(nT& zD&6gs5@Y2^Qt}=zS$at5GycBxkkDuSecmqlfzJ+0M~aN6CY^rHD;4aLhdM=E3Y(Tt zQ?W$?dpoe#pC{~9jtMnl&}GpK87mlfWd+hxy4PFZiY5QGDyp>Z*EHieLkn^@7>v^) zuJbN2pt)@T>?vz4$pNdy<8ahnUL4|7A)w1F0-Jm|W)a{9D(~miV5iQbP*M7kJj830 z`X5B%aTWcLadx}5=WqgV9%sp22a!get!u>!25-%1&=8hNR;B|sK9(Fc-sH9I6fY-T z3?Sa@<*XO6FtDVqMZ(7g|0>u^2TL~MS52t{-vNw`tWD-ng zdY5@mc}}_Qb9q*#e8VeU?v)ZwnXXmXxR|e6` zyrktUqR8=6Hq2cc2gZu5M}m6r1w@LX@1D6D8bR z(cTvJRT{64L`U&@K;v=XiogSC;O)k+b*-6zWX9%Tr)N>#H$b~PR5Wrdo=FlL3@nqY1b?mhOL)XBVYxz{mI#lwc=s!k9|ExY+s6;@1ySDGi|P2Ps>z|};eJ8U56fHk=yL30&(9MOLp9*ew%?<8Vy5-mB<_B-%KzAt|P{wsBxg8jAfm3?|3_2`o%| zcF+z#ms4SzBu|Optv(=&P>=v^y(}(=;x~FZBVbX0Z|O?F@9;`(6oxC|5@dg;mn`M% z@ACJh6t=_P=PB%pZ+4@wonEOxVgEW`B2A|)P}V8sl*M>w&EDZGydynbmJkCmx}2Vj zIj872(@LA5sxluv#X9B-IbP|B5@Esg6x%R*;tpM0XoA!^dXgJ~ctejMStoSmJ%u^c zd$Z4L;iz|=SDFX)uJ@9qsCR?EFGan#`1^&U-ZrmPK)nb0!QAIR_5!q%bTNUC$8%Sb zAe(9H`01LuZZ@EtdCLNGj|^;RNU4?MiCT!&G4_`i<-^_Cf)#t;u(*1D#U%ztAm zwr&RkrKo7XIZrVR+SyF8Hm-#VW3$?D=(#~CXfm*1WwXWFR}^ZCZ8q&2c7$wevGyAa zwbeqaCUka<{fc^@d9@IZm+=YGn*e(B#=tH?mOGB9O+*IcXbeM-Cm9_AC9CHGUKgh& zCNQJy(8dDjwiE`?<`1;m!>oO{SR2&o6!?{{FSuJ-A{5*`g{JW^?uoWv2+XgRLK@hB91jm4Hq6 z@w)0^=<39f$zzEp^>KJP6~5TKI5>o@;`-_3LRZBI9^Lx?9q2u5UMW^U+4V|A_7X4> zCtB0Rt*gU0ZP_$bcED_*sNrkGuUU(sEm)eieF^Tlou$R0Oo>GQ*o0sJ@q_&cS%b#G zb(CORlY#XikQXv+S?%7c>>_wxk|zSASZh})H?`6RfcCX)=a~qufvFRr#86(go*5?+ zzi_98MLqC2wI{l^b)~mxIg_}i28Z~C)pa56J^>IZPmRNMd1(Ius(&C*ZQtC9AKU+- zLpuaV!LQ8^GA1K1%KRBTAB6)_I3b0Zbg)?55Z1xi`WPo|*Z2`dS0^Zi3lBmKLn+ok zIjSFkHxq1P71mM>oxwjXJ^s3vhVL^d>sgeW^;}_yiAzX+%pm{~!VRQGL4#~S4O~h@ z#VGrPKD@g&>;+OF*9C2m&%}fui#~c5%PC15 z5Nb8(&0$PnjDrTlpckJLgNOhZ%Lgr+^+Q9E(mCTkgRo?W2W8IcbJ6@M*nx2jJc=n1 z1K?LGwh-YXkYRipoY5+|CIEd7OMN3_F}Nz;cG#2P%hlew;R^x?IL+mYdy}HL+aQe7 zi`IcgxL_Vgko8Z~(cOzvQj2?uD>zw`{d;v98%P{0#i!9HGdWd;C#$-Unb1o^;%=TGyF7{CbH7iO0oKO@kC zO3|n((75KzlUa;QPjd`?$otX>OTIhKcxmO&MPHXSz*br@=^V5wshLRWLN%De0fba2 zkXC_!^w&aGhs+wHk^d|g@Z3p8Vke|m$~yrPzfB5dqBJASG{<`fOcoS|0^1kZ)5qDW zqzGk0tFygJl*|nUq+vZ&6;3{Ycu+av1-Cn>9#HN=Td_7-?J%$@4UbM|$Y*R(yoMj`9eWd6X+WS*b&N|$Ijz8>BO8G$!ir4%@y_DYwf zNrdj=4!T>2F$AJsMNv^zLpCzv=I6Ewg--4;*AmCmXDark_N8h28~d`h%|(V zFRdU@R;mD-cUD8562v!Ieq}N#kxa5(MWv{Kjb|e< z9+;?N1{hzU86T24voy9r4}VZPFlg{ zd$cB5{QH8-H?4eCS~*57N@X&$+BBn;PF_!oUTy%=gI!p!m)GOc1R#n}@>*}(($P|f z6p9Opg{TlBCY{UINjJWNIUu@WQEf8(2Yf=pJpEMFgbqYvBq5KRgB5hdsCNVeF^nRI zYIe?}ysi~17)B{eTMn@$t95SW6fV^S@jxEfmS(xEDrGSBAN-4zO_mdPnuNjVa?*w) zSKd(u5Gh!FY2_58@9U9M&=lQdb0K<6ki-m!@fd;{>Boyu#t?ciTwQ4do|&&{*A!B8 zEv-yS1B?VD?*TGwh-jd0+4<4nDxZ*{fg&iZt)?5Yc`ztLuhiXpt=Ct8{On&y6mZL5jHTHW7(!DU}3kvz|hB6@Bwy8V3S(kgN;zG{$@O@ z2DJVbm5>fBaA&{~Ls+VAhOhu*w!3(@;`&ysqhMqzUf`9eSEmCSH~v1^=S+Vb>lfb1S$t1`(JX9dtDkEnb+4jzphzVhI60=7)38@w)ao`4xUD1{3 zI*F}?Nl+ikO=7=K;y~v~kmwQCtsHPH+jn%6kZLjsMF6a&MT(t)_QA8_62p?oR4>Q? zAR(E<{Cg1bKo~#{kqr|QNw&?WY|#$LLDPv?a1%;cWV5IvjFZ$^#(U!)uPk)yCU42q zI6uF2DDR#qvK%m)Q^{!f!A?ZEOQV^hX$Vqk3=Yk=!S!Z1ybqNNrVFpKZ*pH^=m9_8ar(jIX)NNC1_ z-6&&Z_=$AB%1eG*4FkO~3NHyGBB*^eb=z$5at1m-)RPLs8@#N+h6XJvto&C_ zBFc#Q-NrvaM3uM6T;Aqw+4v;HrX);Ca`63h;ffgX5g4e+>_dc&oZ`rz zEEkw4)&I2ZZUsrFrQ1X4D*@j6Rvg^}iU`!x0vB9t>60NX#PW3UCyqf4dk(k=l6&9yJs1J8gm`jT|ts_g9`mtDwNCt&;ID*hqMmEbbDR1y0R zY(F~V`7H^aOMsasK$JP9SvfbfVhvje_4AI%c0U6v z8WNQ_3hQHLgD=ZJs5>5>ry-JZbLzcEV-;VE?LwPV6f6rJ3>~Vz)2)O>>y->i5#>Gk z;LZAEE%zT#10kF)g6YcZ!0`4Yh#(=eV=-hF9>#_s#6*s3DX^4LrK^tnJVJ|KsEA#Y z6uY!CVo6xYZp_Golx3pOd@Jl6$~B=)-lDnsNsvhEBF;~}8H4%HXb9-IrT6eiI7}Chu&(JQWyC*v;3Y$yW#dkixO<8H^Dt>h}N}Y1>=9Lu&g$bQv#@Y;#f|-A+nY{h;ma(?Fjlklp4z zUZR!(D4A_=(REDM?(JUh)5;uGOG4kY2tc-I@&wvOOgPQ)o*n@2g}XX(IL?*D0&$iw zLF_j_bFFR`bYyzKz*ldFkIZ6&gh^-r^!;D2fxQt zGEdv%Lfe|50UB?PwjJ7+w_=Y*D~y(wl>r`*R=AB=BD8@Q6dZ`TWP~ezz>#={C8J~- zX`zy(mFK|r5p1$hP>%jJv3g;mP!vSsE^QGVIV%MWu@sw%Lzn5pCv zZ`sZzMeGs&rl^ci40JYH2O9K<-mYdF>7L6*q-+4)+x_0S+#tZjW~eT;6+mKgPv}{l zCVZ7wHLHVS?g8>vj76u|+*fwcuvc*V0CpMj=;&%Y291mDc)2n!KwC*eVlXCoLyXR6wf$XVe_M!c^y}G}8dr#ujD}7#j^;qM zeK?1X!EnT5Sha|#2N&SPeME&HsO~&XB_BB5fW;jo!oGkyrpAl=*3Mna9^`P*1F@kM zYZ;jg4h5U>Fl4ovk7-)~E=OZBoVS+4oNF&qoNJHWiK-ky&vWi8I#zT=G{8-RY25kp zj1T7Bs&Qz1=!9twY&{=EGp^5jGBJk>o6jw*tSME{h?<~DDyCCD4cBi?$p9w?In*UmDHAijzNU|xQ7J^rRRSLTEs%U%0V8?t{7??p zvYl5ux6{I1<*+hxr{29QJ0yZimB+F}#mefxI0RO|5c^AQvh#mon?ggl;HcaT02FP% zR#TFXA;>NwZgZrVH0Is}cbNdDxwR@=^iCky(2BJTcQsUtYGSj}cBv!*%Dbe*WVSuc zKeNdjvL(=l7IU2g$ykhn`$bro zS?!$wwyy?Y`;`YUwN$l^A2EQ56NEsF-Jn!5i4PxQqjoYe?M9^vkM4>tFGBLL(E8C;p1lt&A|=-DS~4ad>5(_A@`2OgXMu>qh>|AjPT*CsooO|2tB@ePpb ziA1XKfyT-Yl~&USVAL2!06v56C5;>=(*fV^Pw-82fjQq6(qtjxg%K|&c__kwZUdIX zyhH)|c)W$Ebv`V+gXQ3tkS&N8)?nc@u6jc&c5h&Z;!;y4i!DJN0o70j7}(M)dO$x= za`Awn7E;Uib8yqVr-HsZ{t{K7p9{CVF(6(W5(s2IOO6gS8LRhb`O&aa{VzOe6j-H^ z@8}25aR_B21!omfku6cW^2{o;Yp21}*A%7zMW8OD?R5ge5PM~;VTeqq-!J3iJy;B? zW=FVEi*^>x6}lV&<=Dqzc)&&O1~EY$SAa5a_>h_Ev05qs&>6y8URwe&#a#ieI)av_ zvTC(S<8Llha~tSyXahacy#)A$+-s-1Tb!^IHnE6@D(zys z&ivs(!XFq3XJ_g=Zxv!C+bSqRBaVOp1kC|KH;8_2bE%#0GnAC$Rg_o2u<($oQ=MtN zfWt6qkR2>ePjXz+iX9pof$>vr?rLaSUAhQVsl|>I0X*S+V@?A@U`65txZGR)SqP2@ zqhii8y<|oRh)FFqc$FCsLm>=QFIB;MLvN9iYDUHANVqV8ioFN=OeIumvjgPrv7vVv z$er8pYV20Y-sBn|c$;wwJ9rB<>2PE@7!pWoDN=6rMvc@W3FN#0g=*J%HKR5qfo@&h zP^jbhzx(09|Am-MYh5Miv3LurdO?LB-H)s2#S$UMt4Lot^dheV9Px`fO0M# zKm-A2v3nYkd&8dLMI@!=Ggu^xo77>@2X6|>#&Np~x9+?+MyjY=VHmCAuA8v27zTYq z*vZv6aw1QzuOT{_9chJzl`4Yuh`EU*@l=i!`vqzvp)HbAkQgZ%U)hQ<`B$}ioefA* z^opp5Ra5riPw7ZpS9=3STu(s*yRugP;`kZ)A^c=lHtRpIVnzEvd-u{9>~2D-VMgH+ zMY*_Y+@VJ1C|0&O-@wr*^>N%no|DaBgglar->$~L*{AaF%HWrasSS+d7msN6!=8mJ+xSJ*U|T*86M8#909vr4nk(_E|Ge5+ zA|wGaeYr~i2+mLhphO$Kyx-T+1R~9hNF53Q$aa7~)bgsT7g>lpnbp6egy{(Q0dMd- zihxYv%r)Y1_&APSt3+$~QO`<7c8fRkJ#C0b36^2S(H77j?mRLfG&D6@lZC_00O+X9 zfN-m~W!Or~p5hqVA+VI%b(~a4Y^z2U`npZ#oOEcIz6_23G=}@z>W(d7d;@JYlJU*cn;e3Vb4z;rd@bhbt54Q)|3MQ) z+@W}dfcqT`J(s=7vgw(_l9sd>!V+&XUM}ovSGG*K*OdJ{D{dV~!;|)uLITW?X-$M# zgF9QIaE(sHyR%ZIV_ho_ixB0 zUNGqDj|EJgd#b2)atJl6Ra*gKhYSCSMbyyGM9DhU3vAZVj zVqz0`h1nGhd4*Q>O(~lBVy|n(#{X5h!CwnE7=|9raGmD&x%+$_)mP~Uj6imJt?!7a z4M}BHDI+fHeow8Q>E3U>cXpHR{a%~2D{M;)&e`GHai~(7%UW~st4FfP4wU&|{z`Of z*fVz4vO}!I`leB@Zudg&lo6?yY_)kIcjA!EkXAJFW|$}wP$Ins_vGAQ{U!Pd^UVfi zqfGzyUnp$$%O=yH9exOF2|t9lgdf6Oux_%?v(^q0)US!nVJA#?`Ktkv2J6$s9<^pcKAgov74%+`^e&}1W3w|T`0%@+0&MYN zKB&XgCiBA-lhR9cebCiIqWd>{e@6Fz9HwCH#$~E!`(DC;PYIJCQ$tyq|N7W zc%=H}_yY<*42>;f$N)rKO7%DScz&(q^lTYVo}A{`^0PqohNgtZ z>Zg$1Dp;j53|kIHLW8tCM*aM@ihP{rQ?ag;v;cdQ-K0u%Zent9D~c=RJpAUh_4I4j z5Vr^5HF|I}{peuxsd#nXP-D;(-o*orMIr;9AooEi*Q3NJPY_|}*YnsDWiAYC`9GG>JjXoWK zfnHW(VU}nl1hWR$`Qk<9&OH~^Xld_hERw@MDkEqXed>^y9%&ty70)ShGM1bj`Bn#` zSs&zH`G$tms2tD~84mi7cpbBH$Sv)STq+Gidav_QuVeiz6)@_)M*GnuSYGG$LY*hG zPIlG(`7PtaWp-Zc+qm1ysnX97&IlnRa+l4x6OzuYb-}O31`29iv%8ttk|9gcx zVwuT4@j#ya{Z>NwKk!-w6U<$m((TqJ7i5Oqnivzr3>i+z3iTMUqe;PGuDdYMRpFNF zb*J}AP1@;+R73=%hC6D(|Fze=sRF`Vg;T7e&m)Y#D{i<+dIOX%+N>n($wSpgtdfD zxl)1rfuZ~^<$F8>6_O&-b|gHl7T+0|&LhAkx-9i|-dObrQq%5zyvV!kJM z5tK8!vA!fLNJBILRX~M@aFxcAS#NB`f&E9!`sV*jvsPs|&N|h?H@4!y3bX!lk#`yY z>eW^5yvDne*~;04kiwJD9~bB=L%%WZVX(Q)(ml+&R%~pO(g;J}cV%aC?_wS!Y*pFl zgf%*bS5fqN2PACn*r()@(R zjs&h<@Ks+W_$Irur0Z$#`Y7NUhkXp;dRqX+LhyAyxW>kg1g>51^$6e^yFLoI#=6H4 zu5-r{uCcKrfom6h)%-9E!q?dKQNT6UJ%(_->sZ1yHg+U%?SijI0N2>{QNT6UJ%(`I zdo1A^8#@xXcEMM@e_}!S8oNFUxW>B25U%$eOSs0yjs&h<@bw7b8oNFUxW>B25U%@< zC0t`;M*`O__=*hiFxD;zUt`xt0oPdf7{c}5V+q&T*fD}@|H9!KyFLoI#=0q7H#|g> zVv-DI5AIuXd%MN02NEDLtQ`&$i-kh~O>)G3 zT`SfwTNi6+W~?!8hiQj`CtIH&b0eO>5&E}nM zt*`Kca~0W^BcpRwES_cvlUOVr0izEvs$d!bvYW-s4S+aj7@+Zay}gSDL-BeADCcLRa*X+jnd` zan~ZOfDN47ktC6pTsL*iFUA<;06*7YQmZf)f-x6Jm&X=DrmDv9A+Zc1PX*^7b{YK& z0~xbb$jmfh1;4_8goqSISjn6xHDH1%jyOtfp}}e}Og99lihg`eCv-4xUdji82Lm}Q z*g$Z->rm-8+5_7Ypsj0tD=eVHkF%VC4U%WQcotABpWuNB>^BtZ(x!rP!MYT_3L1@I zibM=(+(YCQBcqYHNJTQh9K?ctCKvyr#CEj1bkoRjI zHvNwaH^zFsydobl{Ynl8|HsZ~%L#2uP>CBAT@NfjsXfVwmaajR8OUMzH)%H~xU1167&%@6GsmzvC)m{P!aW`c`UT-R?BYciC zQCQ6aVo9wnWwm&~eigVQ|016tm}H|*GFp(iB2omgW4-vlPcHKtRrD$nXl@B**+x;B z;UTzJ=il;n=2Vz%^C4}O!%D~F_9v_e(1U+gDt|?eC#+9xN3((?6+?(Glda}7b5BRdSMeMvEBNSa<#N0d_F&d2d`CIGYyFgP6psoF!b!9%?=gYk#R z;8Gx?_xU0jV|x^db!p{&Rmt1NdWdVmqwH&c3-ZT2z$lBD+*rhc$#saUb*ifbxmE#! zf_GVUrqM6wjwKG2F)Vz(a+HZ|Fn%PS!55@39L>iJjt({k1YV2KD8l2w$_9l}7`w+* zEFlDnVK=R+6&}Q6T!z${hjNW`i^`uQX8e)dpz!?Y!ndjz9-e|fz`Z*l+%3=%hTG7S z2oe;s$rxOAm0j3R!IE5E_5!e-jPjOcdNGdzZx`uv;Yewq}8s5 zLVk%FirK4AZk0s7G_++|eoVO2O=ZA@+!&rl6?t~tEppXs+D-;i4&A+aIlLsRb zPIL?GO?Qp+z9 z$aRyI!!0u!?I7vOEDI4XS+Im<%mUD1H4i1L$=sp7|EB5%k+>^61B)0etb4hlhhma` zzS8xT%^3I7zA0Bk0lU<0tg|{y; zRhcMIW9`b)1OctQQ+D&9_X%!0@OM%a51ce{kU=h{AiLVfY9KRI=>oEAJA#aHRYwJ~ zEj|nb8M$ACxM<29LB>>7nhErng3JiaNP@ekJh{5=e1nhuVqI>QEl;VQQ@OW!wXMqL zxNfD@B&g*3OvqSnH6^n;lK-%uUtGZ_3Z*1BGdAtmvLl?m6Lb4{!rZu{u?R2XTWW$? z*NPPk$#e@eLegXuoShzJ21MqI3FPH4-ry}UYw4zoIhG-ss<`E*#f3jr<>{Ol^etLYwNgdX!i}@dyI>8i@D~Jj_Ba#tqJ=Se zY-Q;ERJ@KN@uT`Xs3apnEVB>my*JGLNYf&&u7ui!VRX>99!yx0AbeMUN33Byf;AXB zY)%fMF*YHMw!IMNyWncu%lB>%2z*3D5-8a03?cUWPgfh531=1OM>+tYT^G4{&WJ;=%!hFXa2b&w=c3!^% z`x^EYtVEzS*+vD@+k{j@3o;rk2O3$~Mx1D85`*FB1(lpNzTH8xO|=CQSt&%7-`#&S zJgZ#ef^M}0s#Sj57`a!-b3KoC)w;Sp0g`A}A-1}R0P9+@LQcCPC$ohlJAsgYz&@>d7(w+ z1}~49QJcs9xFMXPp^X$i+|HCRuw)c0&)xb|xb{M}VJPJ2HtP#u=temuI-(gY=;C?U zkfi1w9?JT&fo!hQ=>7Y(Yk3?T2^br-joC#Tra@f18HOAN=E+`0t8lRJ|JXhm*sl5g z2wsdKcR>dRG+wlY=p@@ldyS9w8YK=gd4aOD>GQhQOK#DURIl1sBlU`I^*V-(2nZm? zjm0HneiUk8G%3^b4W=sw2|gzaXXeT(k&rx{K6w@#35;h9HRK7FYB|QOfbc=T#Rp)6 z)}17;f8pST`7Q)-Az5c0&}ykE2Xr>`xiq=pb|1^fgl0=qN~j-$oQU=-EaU%S?%jj!s;Ye9 zea^|_grEdL42rr>0_5;M;UQ5G&RJ?3wflDL?yAdI_0_%HzF$}I&sRl#Rkw;ipxxwo zlJE%c$n(fE2*E(3h88g>Y7oS!yPvxLNpwlZ2@(SI^eLQ5s`Li9y}CwC0klfK)mhhMhYr3#hfbRlB*C)<0?*~ ztp&5-@deqdDpIG(5+DgU07xUZ%9Szf8Kc#vivz%T261$ZGIW0?PKL|Do|*U$J%hEX z9GK)>eX!#tkIj3b%<6-YY%!FWNIdT5q55gRrQ()AYmd(R1jH?F?dFsw8r?EIAYqYs zd!F&eu13G$7y&6j=N0!mNqpEglyvM<+uJOq<|F}$u=TZ3hAjub0?H6HqU{?<^IvxC zGejjF?}MdSOafvw1a~5sWPI?eTsG##uyngQT%Xsz7QQ#q<3W-4rZ>O2OTUIbB>vKj z#4kqCsh#~@1y}XT8ct`-zd>*kE%qmYQFI289=S*j)oHW#5++0;LXxQyx}7EGq|{MRLnF+3uWa9iG|TKbjp-d&`=UM z$W??KRLtFDIi~jw9M5NN^XFxnKJk;$1}#Z*%8Ad`#F>a36URhwVGH^@symw#ms$R> z`BUSl_8LxnwkG}=PF&Z{xd_{xb5`dKpa>96yZ8f#ilgv{YhC9MAVT6G33C4r0fueH zqS^JuD>5W~D9Sm`dpXfiP-hUV61Bi<)btiOdVsPFImZx>8|kjaJovY^L?CD;oxc@R zGj|D)H>omKp!F3xFL5+v7NAK^h?HEct*9($ve4Y_2u6XL8bjwGu;gOiM1<>zyw}GF zQPb+6TTnc7iEhtL-R}FoRfueEXQo_kzpiqUgDuxvO_N3DjN<~N5*6Hb*8 z=LrCcKS!MS>^Y@`?jkOkWRAGBSMY&F$-A^(ve6W%$Xs#)6vK7yN_Z_s76*QBH9OST#1 z1JRY!dSZGp0Ui8QCskNd@cn^H$kv(~a@{(8Uy8>bsjl3svXxsEm0Y7=SI8qPYiiUL z?i6RZQKZ>01m#atBE)FcM8(}^B$1}R)by{7_dZ$~5X<-L;=Nk}xY45h>3Hu0lO?g+ z+;1`@Uc#js>6@DvOLeH0%Hs_baUe+8I#hc`Hk$;J3Y?Ruc9Y%_gNRxH%!DHmnOXca zQQUTRV=c;tT{`0kJZE&we0B7Hm(dL0JNIME*s=lOA^)yD4V!`;uM9qRt`r;v8+4(>kp2VB`JYxqWC4KS9V zwon^qe9`K*(j?3j4Ea~8TCjEGG_aw_o|)2t{zts6hw45^(UhZg;o6Dd@=Wo7!-yI_ zY{fU>4;x#akqP7@O0#>w4vZ5pR?#0Ef{np$h~hpq6d#5Raj@9qDW;P=9z#NBvMuQ7 zqa@0q+tH}D{m2Xga9K3$T;y>Yhw+7`dYEKC1PZTOqwWI@juWt5HqYRqSzxg#r7W3` zQ>Aza$(Wp8GLQ|oe&Ya+F0YI(KigT{L1L#RS|+pPK&JruY8|Kc&FL2+^tsC8iu-@0 z7NFAN7_9@;6js#2WLekR$BZ2X&17LmnRb4R){aJBRqURKvIh_g4&cbV%KG~=@0bE)K~ zff0hy($1S15JhP7Bw@=`K6G(65u^+nTHOSK3)XRk!*euvTldpLKu(l74P_{?jR+cx z@k{v-i{5W66=*EYOf1cn=J8KIkibeEe#;X&+YI<~g+_}n6Blzn@dCUwrr|FZRP-eR z-XaXeoYsL+YJ*$VT;_?X8Q4}3sp?>ZY>{AsCd>p|A`ied*EvxNgi4%fkgBe|fC^_O&k1wdz$24*VwFiZVNYTE$l-2u=Yw#{i^0TF9*IM$qd zv9JROP|?sm(U6}Vx*}-PT~)pi-srWR_K~RMCtW{-$-PnXi7=QH9~#*FeNoAqX9y+d z0j#bKWNVc4=5>S6u4}5J$CPW8?vF~|JaAae8#flf`Dm2%=BYv~HeWla`E60jn->#O z@~#iWdp~W(iT6HHZ8Z1mc`z!u3}q7Aw+2dH4>f9;y!O%0RQq~$2A_{NYK7tClMG;N zUKE}d3Y7W9naN1&A^fmjy)3`wNpMm=MA+1V(A zZcG;I^|s`kHK-$2-3=eXXpe)@29?7rtDDVzZ49WiffSwWgkKkheAKuG0%-!B32reu z8jt%s0irA>QKn-=p#n4E^0h(q|K1l zu0)J-8=~B=EN`e}z#T0l(7?a9U-0elq_hnO6ZnitkYX95#I?pA94@Oed55jVA*FdQ zq29I}^^7MgZElB{p-twQ(mXd|0^g)#=`#E@I@OAnD|`2)eNqwrG?-+|pyxpjN@TiA z)oP&J{zPtn_?VJ223-$9K>831pqWtcUuYp+rR(*$H%W!FzrO{ zcG-|%M#}BbhaFC95k6)x8szx>P}*TGOv*K>D;zAI-Mh!a#6UT?^P!*0->|=6LVZCD*+_;{yUbBR%8xy8LemvZIF&M-L_WRJ~qPKY3@AEki*I zsN~Hb>&@pv{AE$nn?Hul-+Fy@^d_^#m@bb>-u%(t zd@jUa5hcC(#cY1C5WguZdGm`7 zFQ9)?b^#_VP`uaHVwM$=!j5Y{p{vWQeOw!T_>Op!#oL>{>b$?wW#*{bLHs?kWvr(5 zkILf{5d2TPqp$NAdW52{z{Ms189%ANq?7#yP)K(=LP-~tY_&7=O(rD{1yDX8qRRHMhBOS zN=5uStjf~P@mvYI>dX>-XFOR<^|q+wQ?0+hJ>I){MV^VJ!sm{7@3SH!pasa_b7z#i z)Q0z(KkfXtLKPxgpm+*l3X& zJWbeamo2=(_Ne2wOQe(l#mLx?-2Cv#sOIbkMJ*`_;F9G4lY0`ybT&BM%&oEI&i|xZcJSZ$aEffE>L5 z86<}&IrjuSoMIj2Ix;XA_>{?MeUy`{dOI?P0~re_SXg=|vx-AjXi4w1uBB?9UN*EA z6*Q-Z{)+s}5!hrjtXS6-(>$E}4p~K?CCFZuFDF^&87BbosgW<|%0_2L(zm9}m&1B6 zoZwNJFK0hEbeG&Le-EyI9OAh`1D45Cjf*SziZ&7286R<55}(l`LM+-@d8Uj9RbkFI z(lIDcK}e1Ym8F1}pQQ|>fK_iMk{8uA+xepo7~%cRNT-jnRFoF}m5c(WxRx zUvqf-5~?nLHHguHMlcLdHvfSny`A)kq$oZ#h0q!z1rt-0%5mXf1ivwGSLpzm4G@V1 zfCLyl)BTM$;~pMQRLC_9xM*Q zBII^L(l`LBy$BN!_03M*TN_YXSla-s2hCO$|I=haF+hvC)Ur|+GrMzJ?w!%No8}L% z#tE9y1I!hr2v?6^=xWR*Xx6RR4q6vZSJd4Sa!?9jrvD|tuuO;w$>zKzhUGX6?U+H8 z5po3sZYySg408lNby!=|u+lGEdNLaOF3?ItjSXA?YGk96C{bBx8y#2m0y^C=woYtn z0x6p*W-h7b#xg4J_Ml5rzCk*MZrPbzTJDR9J!h^Ey4;Yb0PcEjFvR69e84nD)Wjvf zi8P_}Y+lmElMQyVR|+5>jV>RwR_xS)@RaNpZv(viq_L%JcnUobjrfB2X-yN0ct7R5 z)K>=WjC5z|s^BxxvJNYP9^264bW92`$Qu7BG{D>lHbu(dJ7u^XKf_wrRH6^XP&_pw z?IdON5Y|Ubi(_mVVI)cVLfP4>s3Y3pCme={VVsXY7?~6?7Ygy)F-J0K9dph%dNAoR z^XSc{WqIvJNG8avfuNMgi&dP(6oP;vC?4c)U@{X4@;BK(I=@SiXhS2>>W9jbg&G4A z4g;O}){c&*lZY|r-nCAIpSK3jrIT9bD-w_`}aRDS!O@65LWg?9uwk*Cjj+i=ep6)b>)V;y`zStUfc6k&uli4c~cr!{xxt_&#|r8ZSX%DSV# z%3fK)_ZllWrh*wr3CWlS!^HZfo!22u4eAJl>f!%KNLNA2Hbwi9;`LMlkSsZeDBNB& z%#zcHr^8LHz0s}(MKV7Qq9YUkDDqvq8ej!W0ZS-RO$gbU{%>Yu}Xjoak^A|ljr;N??9`Cp;U>V;NPhdPs}NJ zDQ89kb8m_c@37Er(^-xiti(x81n-}k;tn*vCYriAn(};w+2 zQbgK40MJCb9hG+h@PqpR(v<)f$N=aW_k^IC1_Sj>w!3Ltn<}pW;KsFR^9p@j*()pk zZbZmMGaCrG?`|jLba97*d>bsPa?#U;^Yn7ZT5cZ#Zn>XMYZ`6ISMZ)H_9`Qo*pLgH zE6OFjbuk{NI54qQvge}}m=JKvm;jHqT+7)|5MA2Rl6A^$LQFjue++p8VXuf zJyPF-C8R$djrm9q_r{8Cl({r0)fBI0Tf%MY z&z6%%o^2_~(&T&o8u26<@p?3PG@2HbP&DjGc6SMjsa zw8Q4r4x5Ab-B=FjosGtzHR(qVo{qw9N2Ejy-C?Hc+7;!T5PG>mx_zX7tLyfa#=lLu z|FuT*b>+S)HnjU9^{z;2C-ud5ew0`a?xZEzl72h7ttD-$ALqLp$N6`np0fdQod5d} zj`L(Z9G>Jq9K^VpyVDt>A=1vv#$jp58h*l5Jtos1k2zQ>!yHV0HVOHhAlWVbk?cMh6I)GwL zuk7axo%VC)E3%V;GS**KAGzhAW``e&tg6HpuE-Bcg+$*ml5YtC{#y0{- zF`f~oRlVmEI0Fq(Zh~+@TE1y0CveCXbCIP5u<7Em-q)#}N<8O6(XfYG|h$^ zVQELo4=Hj56^E!2)!9wJTZ_kd{-fyY2Je=K=2l3>$fN;afBz3`JI#SKklBX`hibxBc-z;%Zb?9?l8FV#5_{# z!~$Yaq}xdsAPgg~9gtBPb;d3rSrC=z$DuHlY^2~x@kV>0r{&d*G2byTjZKiw#9*C~ zHv0)CMp4{X17c6Me{PFH9Rh_GoA!?J=e<^uAMC|H1>B@z%1 zM?}_2Z1x9Ix zbn0ji0^i=z=BV!Mui41+*pnNgoCDU&X*)p63+*pY|9a23mRXcPti-wK{d8_CA0h{*1fuL{& zm1R={HkYV8Pxsl{DT9Ls8l=JL-uGnqEGN`-6*A~bMx0jl$_hSB37#kz_zWYD@R?F1 z@mbWfL}Z#@NPznxvb3*6OG9L0F3lf~$gE9@9EglfQ6e%hodph_FUyB_!XQ>G1YN$k z2soe=xw8lbWxM7nqwLxoQNoQbzW3arjH&EQ^NPjqW=Mj2UlIg28IoXU^+WCtMd5N6 z6}{hCxR*8)hk#thP;>LCAJatD;zevVAE13FDpHi{*V#;T<~zwYA~dr}8@I5Djyx?{ z!iBij62(n7RO8D|%|LQTblk|?^)I|&^-tkDmG;0Z|BHj*Z+Q-YH37R8L4C{)>A7M` zPf)+6Y9T+mhLu;a*7C-jbkfNupK{766BA2MJ?-?~x171`t#5n#S?}n7l>8zg zj&pbCplAvncI{`*8{h(%RLQp=Dsg|=tpXm(!t>y4VE-VO!u8RTxfF7s5<}=xILtF- zH- zY`G^Hl)Z9!MrCkUOEyjG3dsQb`bgs9lT^nh^w!FRAa|J2h#o7;1R7n3MK6gn_0z)n z=yviJ{KnQ=4jS~}kd)cuczQ-W^;;sB;OXhV!dpIPJC;2ZN%l>}Iit z_r(Z*W|BUe5VP*wJlW3ift}KVK@gK(J!swQ`vd8_F7UK6I>e7qP&5ZBT108Zpze|%PSCZC>Ticf06FIE#72;vJ+4%<(f^^t#FM*zKX; z;X6274j40)`8k%%t6)hU$og1-zCDEq;GMy>5O1PNaa_C3}Y%fW(J* z6AQzrzl5rq+Ug8jKNkaWY_$xo5WsvO-{wH%Fxdh|c8s|(nQDy&n#eHq1nauZ8#m5R zJTQd9_j^r;xZY6FF(PVE$%o`%Vbr#o-y<Fb(^+?l=_Qzenlx1!b~Lo; z<&MVpw4=3dWQ2;DxnSsIEl8%5w4S(GDDgO3i*LH>=MAR%Y0Edkoy#^#+qfD?RvtEx zIHva68dJsveK+R%ysZ`&sCaZ>sN46VQceB6`h`JC^Y1rmg>3vN9hg$I&dB8OfPY|! zj_4RWlsKZq31Q@YR8)J@VdYE=v1=;H4@*1aP?UpcFu2yem2!zGyIV(4Ltl2(R$s`aThVup3sM6-@{ zlv#`3^VI;$Jk{>CQK`YO|2t6OgWSu*lR5SPU+UWRQe~c!H*wYv0dq3;Ze{Pc32S`G zN6jqXh{SS1Qw%a~_{S)f zCvA8>{rXk{FkX$#;~FJ+u|iwZchmH)tzS%}O_P*Ju#@inh`BPyv~f34s^bY7xl6=v zfE1G7NJ>sJ-=z(lN>sBhMN_Mysed%@9gg($VdQRMO`TB~gDp{&yswUmK89SOx!+@0 z6HWOTxPMOP@rZ$3ge{ER-raS`>kaM}POLw1S-6;)(;cQli|Q)LY%5iClABr z0aLtqU6r8PWt0J;^-;+qj-~C=H~{W!&uxg(UkFMct!<3=9_dR}RlL76-g~64_UwoD zRQK#_vraFIN{v1H)j2@hd3_TT*AX{<0foDw{}hJxkz-Qrsuk+n`@s3baN%7K>#rUdd+Z8YJ-)+5)XKt|x;k;yL!2j5H#N5v*&RJKS zIo+LeQPI0-6_QwX5PFYm41hP#{EBJg^l^ff)feGj026U3W@2mLXLruUV{;4Cy?6{+ zo38tL2ThNn=~d{94M}p~1qwX9pkTXr5fV-Q_13X@@c!V{2Z$=T_+l%6P#3Sd^I*BguXA;G z19y;n)QSi;sNBub_!YJ(EgGUSI6x@dRJS%N1tWD&KSMLNjqIa1D5*xWJcfPt$aF$| z-y>uR{nYHM@hR&#qM{Dm?8}H^3)NKqZIFJvfr9fQPr6O-9SZMM2-);uMH=mgx6{3{ zE7wk%z8mJ%YL_2GqNZH~kIi2X^*J^Hs`(v!1ge36y0i^Y#ys@}R9UAADCQ+kaQR>b zF0KWpSrd@y50bJ`-^yk`xA1flaj_1(u+=z*XUH+^zw0Of@>=5>l98B~(a=vDh|vd! zHf5lp5IB|SET|xuE%Dn_q+^*t{e&u>@MQ}&E z*jxyg!8W@U#DGx(u+utyvIBs03nU8LK=T%rBJLZj4@QXODKn%d=nxz^tF$3T?i9-8 zRhSe2TSyKd+_@VZ*u*VC(|$cBBJtw?CF%lVK?VR>}v(=HCpu z|9fSxtnKU$zJz52Q;>zJQ%t9oUFJ^}a@QRWic`SV%=r96moO{4BU9Exr^ zXoSvp!xy#7kimT(=r@4w_yjt$*D!a-Aq$YU!>u(8kv|H_#$>7K58aszx>UKA^z;Pg zy~h9k79@)N&e0^Q>ER4{68@O|-w++IHQ;#yJ?y(W{?YsYj>_cMaD^8RXdcKcHs(#0 zW&eA6L)Gk1@#TSwxUN@@+ZU0p;BC|eO?`D>Q%L@wK;TV5+uNt9t;OpriVgpcPc-=P>$JX1@@om2kn8!%y|R`AaD@fYh{S za}Ewd^a%nxQq1L1ntVUN;{!v>k{AgWgMg&uYy&NO)#%mT6qBTY6Q8}{4^sJ>YyIml zLi5A8C=O0i6X2t8fmnCe!yhhN=S;G3EJi!ZdAPNB1L|Rcj*_liE2JOA$^LyYkm^U~ zHodht8b63h7^0>197jW9U+o>2n9>RCEfWjzu4=b*b+8|VwH!6TERpWmipZEdU+ajWX4aM>9KT-wj+)) zjK3Jpj@IGH^bZtnw4`vDDR?2|`e^tm-;w%jJ00SDN7D3E(B*FFG#;rXz0cK7tD;hQ zRCI^9p%%WCCWL5yb(H*ElDDj6H!HcOQBvp5)3t%*+zB$Qr_uXB#88y#R3ukV?_Gy7 zkY%`^}KF(1<#24B!-J0GH7uG zXpMF)7g2XMuo+lw(!IsT3cHWO##4rh;-DV(7(7{c({-RH@LUdD!`iiM?)i?`Po6l~ ze)vh=nYumgKosEKkysx%U2?@_gLB{`w|bhRyo6Xq2b{HzZO| z<8j5HaluUqz-Yl8`shjr~Lm{idd14v}WQZC_N|urK6-O&j z?aQA!1ceVl%q&czM#0UykjP1G)r>2<3@LR3C13G8V(ZZRKHm{G)3_*`3il7MZAWY% z8yqSAzEX;8lq9UO)CA9l7liRLgxU-4s|Lm=VW>^;L#FfuGsk!mOYG|A(qUg!B+4en zBbRz=%EP=%O$?AnvRJdyWsOR)O|Cp}VeFwa0!M%v?IZ@9GCZjH%3fK;v!9Bbwx~TM zfxUtuZ9niKl~wjQGvIq-j>Fg zuE#%v>Q?ci6v5lDZgsEh-my+lZ;|i?^((5TU7KS4|1~1P>?(tfu^rjWsp%-AJUlaw z0xdWl=u!NUTa9Fhui{VHoHH9dK#Ls%3GAv~S;+}31zi!?>=aoYC3hOLAzo(tz~HRB^t=i&zM;lX2@Q z&}~FGUq^^P-7lclITh}R=1xmbhfA{&qt5hn7Mz~sZ@XcSIllKJ$@k+KE}lY2?(VeM zlFE{fW+w}#VB(7|PXe7c1*w~aKWa!$Lr9ulUG?N_`}iyd9uYShgKI}qx?h^h z{KD|ai)E)T0?3aBoU6dQ${Q~hOy51$nd)>qhjuzt9=(bg40T?DxnNH&tclOi(y$}l zKBqUr0D*-+1s6MQjj=QFEobtsjj1^aM)p?1wP8WLE=syqTX|mn03hx_a}+qSIg0y| zB~LgzOrqq6qNFcbJ>B&U@!p}Yu&`1Tx-s5+Pt==4`!~h=&lvGkl9#gn&GFvbrwWBY z$VYlhlyrvxMh^(c0E49?!1mGFkmr_v8zHltrEmfgSY*?H43n~G!AlQ4m4_tV7jhp- zWFAZy{gAmY@B)moIp76*IG2xbJXe+jp2nO+@)2X(_?eqO?vCaw_n7C+uc!hPNe9!2 z9N-KJDjuutu^iFviAui5$dz+M=LV|s=XkcGKhmg3Pmto11ADu-QHeeuY#vAo?3RhS zf+I*bn5N`7NLP>IhMLYSCmUO%l255lweFAij#!8+BVLTUVBii@fvVf0hC^1W?-Es! zT`&#P38~oh^8JJH-h1qOtue9#rlxZ9Awn3Tp<_lM=#En2lYDscmHq<{@WD=eAeML(1-%C40p%}o; zgl6_^{Ok@FJ6`x{hk3OAy#u^_f98XGd9>s{xCEl;WU-CnImst9L^LD+nhm@ca{C^? z%f_{)N(M}2GL`Sk@qWuXRMgNnlh742{H^)SFLq61=GMM{9n~g+=7ssQ-i_Y<0N|nS z#M@xZfmEo{busi8%mT{FpqLiDi*J)kiD@bd438F@cajK6{p&uMmL>)sZck~s_)@82 zR7gE;E%wM~xSIBbc;YcpC3(3a#`8l9bu7?Vkgpr#{WCV+DZDRwE2~Z@xrXefsPx#7 z_@2ouJ01pFo}HGfhE{=dI8X7a#fzW#sYBf0xjz@z;x0;6)7e{GlWue1B2)eT4lMGH zhpk!n1^5+_gW*A2>d#;1^S9&quKM$Tor6!ofu|iJoffI}gnf;WOS*6A_MMU`5=k7%Ts|7@K(?28$26P!GMkfGx%3wgoYYP)Mk(T87>AZLNW87*JC5$2j_x*Cv<6JkoM}#Dz7hpL zWQaupj`wxfcG5FZ%rB9HWx8>%?boA}ul}1+2&XDqn^J6v5{MPs8ot@zj+*YvO~W&I zQnR7rBztkLoE-)7GD-VHpT+xrG-r!vkwSnb7Y`_-W{#XcrQAgnng~>c;TIQ}co>j; zKAQTKL6XIb-V5drVRGcIjYnl0_D508vk=KL%?RU3?EZZmZ!bn|Ki(*K`SB(Ng^o95 zI)hYT)}mRo_r5?3I&8k~AfhZ({Nt~x?jJ{FgZx=^!;X=8*}4~$3nMWdF?48@n%S4VhcHo{*vYSFAPRNVi`YOQWoYj2~L z3<^c>_f;6aF01vMMlBh-i#rBF{R$;B~L&tm`rFX)C0S=LFrdJixv0&Ks?J& zAlh&Yc+C@NeKg=FkZdOi-pEcMWbw^-Zz^9I+%i2okClKnld7PQ0?sCGtscD5o zGz$!QZvd2qRl63==gffL=ph&UFIiN&A78IM)6IY*%7BlGy=z|jH z)YEfo4`7Z23e6Sv6$b;-=BoK(w-^9xx!5UUZH*Q?zU)yoEn!Fok4-?a19T94CIdvx zCROZg+{uMRq^ZUyjhWWg=x368U=CKOpWEH=Wcxp?-(syF(>5_BD|6D*Y{IM>$uk$1 zu=HQvXVVycd6iDX?zFEgFV~S9hsl4^Izu^DY~E34+_Uu7QU%$;}DWXgAZ6At-M%XJ|UOsO&D-S8ZVE+?nVA8 zbFZFhmc1&2fil6f9D}8(~9#*MASk;F?_A%HDGc>79!k zxG}#Uq#`#_Vf)eL#`Q>=v>!iy*%NsvM(@u+McZRjrqFuASFN%dnxP zjzs>=2oAtO2W8r3{6Av{E^n*Fe4E=2qpHj*R+d>+;?J~OB*BQJ67{FQCge%X2GRu# z7d*W;0l^tCb-tJN+oo15_^HGZcpGypE3~_DM+*U{p-D{GG-RO?=fYnMkIx?i(U}FZ z&e9y#c0hsdn{pF73B4bq@v{4Ehjr&>z`Qj8;VTX)b}pJ(XcU^6K`6f-z?D_Zs|V4v zfgyJ_x?0SjlJcTK)`Jr@9#t+H+``nsmPsGD+vcECT(h?-0vw;w#QUOGr-`yw*22qj zANu>Fjz>$#@Hnu}wy3k-n0tz}vn}kzG)e$J^;z2wD~6^e`7$#HvQQV#0zrv1yx&Yn z!xtu8Vhc9k>_)SmELSDICC(9M zv;}E9@GsmNg?qgrdRl9^28?uNhRq9o^2;_%kV%91eam6!nRkMa6M8$wYRMrhI?@uV zU{1u^lAy;aZ5KZEew(k+_JFrv_(UJ>{k!mKGj13ION52kv<9l|(Edl*r$Toxqj~xJ4JJ#8fp%kdKSH^xiAJ`A_;*3@TFmKCxiTe z%FsDf*Zjcmo3J%1$84JlKV`iOfo-HbY2oV^u1&WLk<>2r&cC>_Zi-DhPuD^>9}B3v zv5Tfg2hX;{gpp5CV_`D=%(q{aZO6x>0l!*~w9y*?>2gw6Vv#_YfRCAp&*LmX{5a`p zXkfb|!Y*Z5kyfBYBl5n0xp)MkSK@>Bjb5LRaUSq}Vtvs|Dk?FN9O0zl7YtSVLaz%r zg~}#Hg$oS1Cfkq;yOoGV1Vgl1y+jqc%;}TJgmm?_;cP!g?6Mpov4&wVb8zL_D}IB&}q+|_zWMyz|e=AytJ3k2M%2O$4zc( zsk$$2^6Hj4I)j3n1TD|G$?Mx{5!1;{CWdM@j#8v#<*wk}Yp|5SKA?1YqL(KaLnzM6 zs@eg_@3jMP5h{Z##SZ%855Sva;7*~)!tUPz$SXEm4?te!B!9Qc0SFQc_+4$r=$Khg}#(Lw- zAjQfk)J)3(=yV7pg(QgJ3vCi3wz@+(d_!~tb8-(+i2R5LnKO+YIOGPqdvC0dbJj=K z*j?5Wn;h&es6z{fJ5Lmx#1lsaCwjin68MSWFkqPY$?hC+lsmX1$>2KbK?gj2DR(e&d)@&&qp~&q$8^H8XFFtKONm-g_Nw08v*NzDV&d`E?vA=L>*@r zCl~Cg3ZD%i82bTEMA>xF-lQDGwT@Ixu>*EC>f!+&kZtKFfPX0_<%}fR_Zpx@YMK9_ zMl4+xEcInyjfPxSQv&$n$K~Z`G`QO3XQAl&TGVo>P;7MZjXSHdpuXSKfBs0EcLYF++FwH9=~U{j;7Z#QZwVy5`nK!ewJ8ntA{DIWcPwXb8d zzP{I}Wh%6%2ln;-My(MjT+C!J9eO}x!@y$gBd5SiiTA07v6zMs!20Dt5U=c&wS75< zF%%imUcpHA3>?Y*1D9=OudJPqWW#~O@?N)RU-%1Pw0OOtW3i~6indNm`@teS9sV?saW zCQs%H9?7wrS4U%RDxgDf@%U$}+j1-eC$izC5xA*<&cLLSmgOayUmGReqnBcNyhonA z)RKFJ(-y;)CbB-KqolVaTJ_|ORl5Vu%o?p)AC-Kd2YK@{YE=fZAxe7l3LW~?XR6KT zQP&%zk~d#>6uvaxyUB!h7@Sa8ou=LTvMBBAD!X-otkpjjNLX!>e6F>iOvv^XoGhSb z8$g?b2Oc1yjX};#-=SPkUH^$#v6Nr5JhZNeFV$&sU0!Li!$*E&zm#b!qr-)1q+?BSTA>^h541?YpY1`ILDa)%WN6X!&t_ z5B*tvcrlF2qwtQ7#=+f|6l3hZD@pYTaG&5AxGXn(y}B$%XUlSRH0aAx-(T0pdmo+K z=$_Ag%03h&FR=q)w)Ov9wf|$X{%?v}-hUmNZ;AKbKe4$jU57CrUmk@PX>k01KWqXX z9VV*7uCv1 z(Mrc_i}pz*Z-4cyyVvCG`&BU**J4<}&$2SQrwpRRhSlvAJb`Bwy-#DnqQ$w4$3QX3 z0Hny2Ua1R+dAI^&vaTLqK_HooGf58`fPV$F4fwMh;9!+Joi9W$}}plOaS5IAbozW1)kgxOS8lLNTFO$%}SCib|mbw)6h=FXyK-4;cG^z zaLp9yQ43biL|GRId5A+F**qN3KxNzw|JU22CAY+xH1py>2g5rnwTuLZG_z-@;%<~k z2S~-f+`%r*2!Y62N}nCT3xKWcl~ulO05j3Ll-psI(`sg0dR5f(BY_92%lopRm0ZiX zaVJKP+fq;K=)IjOR8oL_^YF#oUn4S!kl9MU; zL^+x2RLIoWh%#W3f#MF-*3Hw9Pe)r7o)6nnJCGU;5*2N$uD+6`H*CgfiZ}%Pj#Wb9 zKuxFVdd@-cvJl-jNBC3uhTscW=IP5z_ZB*Z_Spi+0hqw#TR`Vri}+;c+|S$n6b(VK zM2CPK!t(IL#HEA0L$664`;jFEV7w(HyDYfd&UfRq1v>()Ygk9{VJ#L=ORnUPWM4^+ z7xMi?cK)sIm96^f7#t^jDWEAP6}2@Y@XDo`XfBO4)m$2m09F(pYM``ORa@=_q@vI* zGwt*UmIs@D5Nq+^>##4HuAv6<|2_Z5LT?!A*auR5T5EB?aBc+6rhgDGn+Nwo^A(tv z6vtn=?MN1@#SGWu=a^#{w8yBuamDQ&kI20fPCOC8dy3uDO-KmdI}PD`_#lGMu0vw@ z9^lu92yD)f?41O)2mZsyVLhYD=!=b;=k$GHM&;J^$`dNl>y$8 z+iQ32WGX(GHMJp{@{>uyTRRZ9la;(QO71bw)XDjX6|it2UJh_J#z2HzW`Ame@usMJ zza1(p4f!3oyrYaS0_rh|9-^&qu#F8*F^k>X5c+cI&%u%ubHG0!&M0|W*k6z=Vlt>a z()WTzZ2E`{e zxX^zIW=odH?^E3t4LjLk0G3K(c_xGhrUJ{c=fSA?&qfAe*sRR*AL9Lk7R7#2?fpaX z{%3~B45H$Fu=nfH}B6nM;4rfk9^ zb~!r5RlK@TA@MWgB!D}90)rv;NR=};Jyp)7e=#P0j}a**8*K&xJ{9F0lUS}?NE1q= z`hwPP+AMzQ=cd^e!APReR|xZRJdN(K|W!ws<5`Aaetj6|4HJT#(db}@1lzUGTYiq3yVvqJ@z(AveM z8u?6q9pn9?Q77sQH8&6vbFG2*fwTe=3tHCn_t8e_b64!R^(DHDn!SD%TcFIplTQm$ z<9xfVWD#(JsUp_fKs{M^I-V3EQtQRzH*;Ar=NaqE9Uj)PDR{9J&+@s%@4UCQECMBA zsyetgwXb#n8!&{e692Wouc{Dpd+z#6O4iVI*CD-co7W<}4^Qsu8=|V|1ue>yqLg`i za(h7vgR0Ol;OybUtMuXWsPC2sZm{BG&sBH$Yjm;%S-2u9xq*hpd<``#xhYD1(YOi4 zv|c%oo47J6dGqoL03>n=;i@Rifde zs!)7k;KJV?l^k?b>}X2a!ru`kec`EMC&Vl=PLM3Zb}bU?lS0 zQOTQ^ngR>&+OcwBw?s*AzHXtoC*J$QOLJ4!|46*|g(v6IX2Fp5?Mv0%k0X=)C>7|F zOyV6_y+E7Hc~ugBUqUpK=!)xkgr8mMd5Y~6p>Zk|JN=906(+sV(exsYzHC+3_R0ng z=?qVezIb&I7%W-wNVE2ayf%*~_RaGZ$J6N~O(0Yk``L^Wn~CJ*;@y5T7|-8~oRtG~ ztQOi`vY~pIppYv`lT>2*hjG~9$KsyQJIM3y04jzVPu!xa_v&BJDa zA(pHoRf2=;);~}fvVP7xLZy3XAdntnD%F56ApvxxFyj%652O;j~``uvly^P_whyjS7J+= zmv3K+vPpx6#RF^52-9ELD=Ya~f=aIMUOe0#mQ83B3%1w}jNJQhO`|@=;#zbuR_pv? z$8gHR2wuE^ASBt7ffn{X@EZxo(=@i5ya_qDAM<-@6n258OLiSyUZ4ci)WCWA$$aEj zMAeGCDnCV5hfnE{)MmO5qa@W=MXeVMEiG+H-ul&1&Rh3#5(Gggw+#VK9O(HO(YP*Z z{)@>3Z;+9^*UPgZeke*lY$ciW1TAL#!VOW*$MX8RhiHf#N#;D)gFG0XsOyyp7aBWV zEXcA-Riy7_Zeux@nsW|DhR@{<$NF0ugIZV}ltkk(^v*apdMn5E-F3^Xz-NMgt!wxN z8*rg5^uYu9%|+NP;53g4)$KOnTK`bfY}sxH9z{hBhwkKN*oJ0hMQV1-a37$o;KJ5N z2AgpOC|dwb_2RpMW^x-dFgP~E-2tf`Ce-3?Xr7rZ!r;A8)`dX`rL}}!WlR`Sk>z^1 z`=ho;U%k4zCY)!IO-rEAiCJ#0rfzarZ|(<_(z44sP$3pDXS(4poP7W1n@Fhwx$b{v1a(&}R&bag#CLm{tEAYGzK#^z(pRZG$A!pyu`AK24uKw2-}QJ4-o62gcQ+Y-#Sr2b z=zt9M;~@Nd7_Mmdebyr(wOy&^LJJ;i^*M2$G)*hdEoEF5E3~42)v3XN3>hczy^=UsKrZE7^T~yyU*IRsJ~#v z)@Fmlx;-jxvx?A#vtDj3y)z2>LVG!EGpfz9Y5`o={=^h}JKa!EEqq)GwgovZKJgL6K zTQ?F7uj!QySZ1rm*xJQ4Dftwr0mXCLim`pCcz05lV199KX24z_?YQ$b%eA@qwbkC( zsLdN0aCDUZ6tiUY)4N7LP#((SZQ_sZzVri&=elCdDsfMn*s zamuakr`)N}&1ajh}HV}8JV2SL-Qes|Ufyf{;ju=w=Q zq7>}Pl5}QPWHUn0y(H6f&KA@90NV7;t1fAgXo6;I4Awy-%S8+O*$*6aFoL` z0Ddrf2+BD-z`<~5YHpdMWP;Nhn*(rIjwD9(B2vM@p-J))^oPO=_ufwy&7jHhc)EcCq8!YE98KN zC;R;a@i`TghyIsIF9_8jSR#1K$~mvRStl}gf!tsX0gSeowjCL*p)#%v*gIo*983tW zP&4-td>J_xAR56WK|jc)pnyWzi}e;HLY2o@`Kn}KSoB0Mssn~Mmb(8*Zmn9=D+lE( zPr7s5NY_~}BNaIH)&JSUVC2>O*~158>?O~#A)5IolaT0Mvb3{6rh4`dZxKV0hLZD& zsOv)j@#>qhYKXiU*qU9CL;U>Y6|Ttf)Hpw{Z8ZEwj-kw1#d@HIcogSn+or0_^Tue> zO%l8TrnvWos!Dr__@V&LO;O2h2A1I%P|ix;93|b*MhB1L-n**S0|csLJ)-$rqLMdH z?zxIDS%q7pg2(aE&Rje+u$P&rz@aeKX*m?^R7iKL zV0wMdfXA~lKuDjIUP0nZZ8(V(c?h@)E47B*SB>_A#@qV$x~r=+pXG$n0AhC9uj!S8 zaDwZCUrzJ2bJTi>k?J^OUU4g0nw3+3GAMEqgVgKyuQQ?%s%Sq1@=QLs*eo^SW5RA5 zkr+iD7Qv+WWpuwm=dW(5tNtgbLNbwVA9Nizd!_EH4irBc7~+lVzEUOMC+0vAtC%4o z?*B>^e4ogm{rwMD$@^$l373MUO5Th4QN;RZ6>v*fs^GoUcN^{oOYeO*O37I6)?4F! z)r9@@m#d?+^DegVOjK&@vFSsx$Nto2+kQ;j{yxV({(rTPDOKu2mM$_$BTpC-g_*e* zG9|A~gg6QIZV{s_5MZ%H@fG8`G?6zW;Z`JGi*za@D|jywFGjL!kuF-p&|`7VHs-)S+?ICR4!2oII9Yr`U{ zSdh2iSFyKogUjY<%t6b7s;0l=fSlqwJXu^90PmvpQ#rbr_$|?ldjy}V>YZYG34_-# z6D~=u&h3pl6IO@)ccmwwV1d93Eb}m~N5_woP$GK8Ej$U_E9Xl?c~X5?ABh4!tP_1$ zj~|9%O)-{^kqp2Ph={!u{mT12k2mby1?=QSP$l~Efhx$DU^hhx{T-d3Z=f@3WcYl4 z49kJ8bZN1NupNhm2~^=O0RXO`$FQRi)osdG#!)Zre0r#uiw!ztcaNTim&e%3Um#ib zQF;)tr2Svzhb}q`)%^L=&Z9$;j=oO-Q^KP@5Uc)q{vOkBL(3=mz~wjgylqJO+2RP6 zX0}=SPz)EZOF!wDKU^%-L{t~TQ4Irj1RQ*M=pqjdvyBzuO+yzWHb)xMVo&d99l_DK z0c;o)3tV_S+WMABes(P4Vl+Bt;9+^Kz;T1E{} z0;hghIRWq6gcZFKxRLcGDi;%?HY^Wy@Ftrg9=u@8i(aZ#oquaH=*mJvDHC zqcIy(*xTA06jagJERO#yEPhOll&E+X{^|qZ{H^HZ1@kkA)(9DR5@BLU{#sp}??xqu zGi8_(&Rie-#;Me%HSY7cVMq93bn;|X39fKW8cIoI7XpL_(Y;Jp;?TRCN61e&W@VY+ zsB(h)KcitIxa3oWg&?@BF!5JNtC_5c=xKyH#viavMS_BwIjtFTCDGoY3b#Kz$$#Jj z_IdTVQK861M7rvF8>J$G&nZU1>r)PAtO7{dXhX}f(rH=TxFYJz!aa~^%%{4)EZ7Go zC_O(Mq|YolvF~t$OQOM_wumQ!x=mp$oAh_8G2u4z`u_n3X82EjsA#K?0An0Q07DiL z6JQ(|2Xjei<2YO}DSg#zF3T&OH9(&zdkBCk39@Z zq~*Pb%RA^!6)f)&9s9tPqK~4=p~>vO)XyXgb2F}%y37}}v~#qsU8UN;I7L~U55v}j zF1XmS;U{peGUkiwcslyY0S9LPj3wOID|>O45NRg3xfkN(L>Fh_xZ@fmxA9UY?fT}R zX*1s(S45+3+LS_~^|FZK_6MrUgU=Wdj*WIzwB=AQ9ce@;jGp|iIRkEx&Km^yH^o^4yLre>iSrh$W;DprcPom9opDyKKHMuIXmJyO^7 z%5KW#!Y-$|lS04<U!OBGgVkiC5wWe*<6T9-e10`SFZIb}skbH03?^pn2*&y9bZ?PIZFw#8~l$*Bjfy7{Uh9M%|Wg4rco%4)zgR+7- zn*@C=?n8vL1CpL2Hd`$X8F|5*4&mv07vB%d+$GlZ%5GN~PcqMF`DAfuc|P=~EgPbG zNn47Ur(Z(f^aVmLghli<9tDrZzhEFqYv4S#vwF#f+*WwtXmL3`I0I7(Mzl3*?a&P@ ztd;pfiu*)+=qtG@uOMSiziJ%Lq-x}si7(@rd$0GrK>==v%F@v!#HvqiGn{trY zs~y~G!`R~VSmWH*tSh~B_*NeG1ZwG|LuG&E%#in_fm;>z(eBQ zxxzd1o&>s{=SxcmO8h+Ef13UevY&n%ko2_*@p3$lrSp=$o|ldTKqUjax>pwUy$bfd z$_Hq}&`jG<*H5=pHLHN3f_7@w-Nu$W=z-Lzx%tyU;oDup2qe(Dd!_tSwYh;+))F^& zP6q8JyDAwB7+ev9T5aTxtOe-BAn&i`x%U@2F>oIZFkKU^JA`L*F-q$->%lu0kHUJr zt3{AEN9`ZHl6`BKmhIaK-?uR9V9$yM!_mm)-i7c6CfK`DX{56P=Sg?OkrX?&Bvtej zOo=Xl+oaXN^8he1L#O@m+n@kb6Mc5+H>!Tu>HNgboZG<%XD7){9}2Z6_2Uecq&1^Z zM2c;H{Mop=SN7p&BZtH7JCU8DYop}LG3x`Pd)(gK|LM5U=1<4P&gyX?y{aujU-GwZ zxXsHSUjNI0xqaiG3UsrvB;w0{1^LWXR8T^4z+Xe%lft(1#Kq z`E@J581BbWg4EX@(eg1n7!6@>q$#Z19UF6Vn57)Ug*h~bDchLrVN5lK4{Ty)6q7~l z?QehkS!cZipR@5fXL53KYHF%@=eyqhXYYB>dzQcVeeZw&`~Une{^CFVWrT*-5zk3y!WlIyXim?%&P#WLLm#Y7Am&pw5J!9emO4wlJzz-cNCb91K0Z zK`bw@KiVUrvDNKEJ3%)5E2HO6j4tjVbM^b!Ao@0@K%MjFc(&87ii+-n{oc}&pK}J+ zL|KRP^28Z{(S=%wTHuG6W8^)Y4ijVWj$%;RmWa62@4<#|zu`*3!>Bic4+*LMx{NaYoX1*Y2Wk$NWHPGQ3RJW}tC&Kzu0 zbQ~=`QpZsr*4I{#RK7ch?+o>6_u!+my?DhVm5<+n$8ew|gPcktdmSB7fiDkKJW^Ts zZ9>gW`E6GZH%9w*FNkKFTBA?46(^st8BX#UtM}=avfQQxluF?3{W7CwAD?Ndr`_Gs z$LCwhvJWXuS#s%5J$p)dx6Z&q6UXd&LEh=u>6&}@iyRRR#Z9vY`h zZ4aPjanO17ejg}hUBFBxXfI+CrbFBmk74PNw&Sr5@sDkz~X1G+znHUCOTz+i5h)ag8_`qBN4k>5qT z9(X;*U4tYgNAom-4cHCrJT$ACvGZzEUUf;yLOA3s*)Mc#BgaXC%#+rRTuYGBwHm=YrAy;!S zx`J);O4}560pn^loP#r(u$%M1+RVX!bEocM9b9R397=xp-(UvCQwmQ+9AwKQvw~Zo zMMhR=b;@{}SoLdSh<4XJ-I2BE(DQigzzq9=WnOJer~I(d#tqSiGYW_GEqhC&EMqq? zxpU3Y>Mr($AdNnZN_AXBjac8tqiM`ueY^U-La*?xc@Y>P?ol0W! z;0Ga+lq98H{(FUSY+Ksypc5)?)(v_FR?RhI@$QZhxr&;314gA{nR#D#cx)7zmJhlZ z*UgO@gEO}~@1n7}-8}NE zrp!aqzuCo=mmP|`<@kM0_aG^Fx3C-92`nZ@KcQJJ#!>p#mlll8fi!>;P{_;%nVo|} zWiA3nHu0I=YH|6)3*x|Nq&fMA7-ZGxSKKl%cg@EewZiOo)e#lN>B!{p{~`Y%B3?Jt zseXp&15oNN;TdV6E=fxCTQr!8njhVz3Q_TO{4BJO!tWG(Cn2#*IT2oyOiE3kNl1v0 z5zS$eK9i6UE8^kXC>$~sb@5K@sy^zP-)7?9yHRv%kEu=j?AlemvXY}6D(#=b5*IL~ z{>rKx8L1)Yy+|GQSg|dI3I3-+aY;Kkv{k%-&jYp_tJ4h9t#*`O}S*fV>RZGK!ylzO|_&Rqx}JRQsPVT@LO z?L3Ydf(R%4e44Nej;J8xUrb|jH2m3)rU5yn-zj}d6m}Z^j`_tiF3Z8e%Y0tJ0gi-( z$D2iI!yUt@AjMemf(aa^7U2=Z7iH?k;Ion49-Vn|&(fXK*>kSzc^YdbC%Pf96zK1c zrc6#;=0{KR=n8n;8%6D?J5#F)o;8j-N{YzlZ6{r7LJ)2+t`9_W*7F(22*bRmm;$*a z7K?E@i3bdEa+b8lGyH-gICC&* zT=>fX$Ej7E^oi^cqAghQVL3~JuNGSZ;ifcZQf5e71-i#Z#`$MrP#bN3uoc)=#zxfU zxPD#8PQO8DjH6S$hDc)~&ari+#kZn4=Od3*`A*3dFDDbwGgcHAD=+8Re_hQYwW=c9M$Cl}41`e#;GX!4d@2iAU}Q5&AAnPmJD z8w0-!UXc9YFi0~V(8n}J@v~^hC1dwNHA03J;WmVBxuymCB^%-$uv)@#Bfhlnrq$z0 z<}C0pqO0vD-qG8XFg32psaI3&^>S2nSqj{7brQdd0v`X*&^t1cb)^1vlyju^a)T^I z=Za(_&XKOIq;Z!JpW(XNFctm2(fn&`rXp1Y^NcgAv=wbFW}J02Nf~R@G^-e3C#zFl zb4htrxZfU~U5k(2RAr}*%FdUyQOOndX0El)S_aFk0>U=TiDT9UcbxlMYW-|6!$$ z>fi%CJ{^eZ^}st`amyG#66Lz!#~(+DKno}ZA^1x6!-BVl$g`(QD<)Q1D)mQ!3WKkL7<8q zxN1`UHLp_=N%DT7x8a~Ymnfq~v2noL)eo>M8-oG4;$UWm$c3Tzj1J=3$u!v~4dKj% zlPRy7y8G**w9gf#jYFJKghENmaYb)7R7qXD`4jD1{vZrxOUjHWgk@&`7QrYJ^FG-^R-dSAyYbi`5vI z++UZ31erGIKSgKQ&_CcBENCC7e(?BAsUN6%FvUZP)6}I{h}Fb>SjR3QhYkp}QJ_r; zLQa9m+E2L;mI1ZgBea)&mMkcA>W1{t_+}tq)hioxTt3dW%JM~EWfz$>msVm53FglT zQg0rO+C;{V<{N5lG<%gf8!f43|CEF^idH>Bjduo=`Cz+s*QahelqMvDE$=G{UKV}2 zKu&eM)E>%=3h9TAmSd2xiY>#6HE-rpbZH`)8c`y%^;QMR-oST_AKr#>uz*)jJ}RQf0D z;5B_a*dApa$mDh4zUc`Pm^BG}3lS1fGr`DkGSA%isc6Y@k~|1#R;vU@{2T~hl7s@Z2ZSe_tBFg$g&Bf(8 zyn0~3LOmIke4*y_U8pZdSzoBS9Q04|zGsV0w!7FdFvtH_qEds~*m)!l)j9u1yOrTs zzJ93F_!z$rZr_q8klDA}DwQvv2Q*VCSk8RrP*BSJH|T^$zI?cljg2jmX@J=jXc&N9 z0M}F^k;17=qHyN2Wy{`*&)aAfFsCuOjlpY7E@SVe)7bL&0{VT<_G_}U{r$wcy~)3t zg28!q#5dUQRlTyVALFRIzxIM=)jqv!Xz#`IRf-Ut2O2!VV~ivoF%0PxIUjG^T&Avy zCVhLnZ+LXBkIZAJK1#=q6MEx+9 zB<<%Ejx5~!s|uuPdR4bBm$`~1OP>!L9Yv6L1JvzqR6JYX1=^CVi(ndb2?Ci0SyBk4 zWdIhI_5!Jat7PWJfQ>IIjZEFy#g->LSwK6%y*cVR!KF0@ZgYeIPB`N-IC_p_GA!sa zn}B^ReRxKu7Nf*Dedosn@bud%=a+Gpcg9G32Dp^8lBthI4>@=dYqCszd?!yYLq;;Q ze8jXES*AWSoxnB7a`mN>xTCb0sZVX-#?og=fyoBZQZzO^^)@tZIW5k`V`yQ3zy>bB z2@|Zch-aW-Eg4+~klVj)H7vf5mYwQ~J`(V7A0v1)nYxEU81eQk7>Hb&h=3V5AC2k` z&eOE8aAMI^FdVG!xz0@WhA3xOyWipUn=u7fMd>HW=AYCTr{%dsJB&!!GGd3V z_W2+a6|R0o!x;3X#$4cEC8tQ{=a*arV^r_~U5SN7iWL&5ZV#0Md@_-;R+xwzGxgQCE(NW7Nng0L|gANerA4 zmJQxIU!;L>?_-n5d^E=W4Q(pSOeTtbk%OfCrs-khX^5P0Z4*8p!*V-``9%esrqmKH zSz+_C&v9q|gw4wbiqOlNH`hHgUdis=uzvo}=+@o#XhPC-E3IM5~ki*%-70N!rcVnyRN(Yw-~Pz1SDcKyaWx#*e)d>@S6E%rR#rt$*-dwXDkk_ zO2Xn1e#@aih-qOGep;1q!5H9fN-+j9!uF$jy-P|~%BdbLI}m)cIj)RyK1VM%$iUVJ z#o9nXC`Vn^{JKW-uc{f?R1un39IT~*4QytcI9BZ3R8_s@R;SCNCl?dw41Vm65uvLY;?zzi6-Y4J8^oW7Ecj$5pnG@}g;e`T+%6Z?Wi06M1U2*7ZPDcZ+hA{xN|_B7O1avpct@1ne;e$bQK{7idsn>Qe;e%GQK_MO zxcM;b*jI9MNWPB`qJ##D^8>5aN z`hB_<%DM2kQh`9X!liUv>O(JX%IF2f24uYQ*u-M@bmP9vmA$gg?@jG<8VNq-tlS2$ zI*R)4gjlhE%7f{)s+a`w6!z(CV_OZQV>*+mb3au)9H_zt8It14-~`l#+Vo1IwYEXdbZ*>Z~bD_qx3 z@&c~EZs533lOzvJ{~@W=@u-IbkyT4R6W}mqMTI`z5JUNAGngHh8Tv??X}TFIKA6d( zH$`2)@vmm0$)*vu0-0<~yMrOEkVxbb(!#oKrD7NWwUMD?xw1U6n&u|;0^gBIqt}>P`+6{nJ9r?p7)@CuCw#cV`q4{W3#N$xgi4lt>SN$J*YJb* zM5Eo;*LYjj!<`)CLjST+>yUdkxs5}F@&s{uSGLo9F_4; z<{!k&Y11kPr^J}8#k0sg0Maz0ZNmn4GZ}&Aqel4^WwH*QjSf69$tdBRAktX7Z$)`u zJNc7nxpbJ&AKoxWHevx09vvCAkrsyz9Hoi3oh-MkA`H)7O=P*>!TEz2sB^U=^QCAX z@{E<24p#)K;Yt1j^Hg>J=)>O_gtOco?kNHXBA_ngY_KCTQFo=U4Qe{*aE7vYv*_x+ zMSXLO5|uT7u2nc$2Mxp>LzRnTo0}ikDcd;@*wU30$R*f16)F?$=K3tTuod0YsFIP9s1GR04-l(aZA+u8OM8>~XZ}vQo9_ z9<(~@`TjyZoUOgyBOhT3MQV|?JGF=fSxKkL{;9#^DlZ(J*pBssWDya2qN^ z#k!s?bGFxLodZN{p=l-NWGv#^7@fx@g8F4tkzPjbK`5?Bn;acvPB|5#2vr2Vo54Y) z^Gv)KbDUQZaD8;{pqba`oHwWm>p{1%M$7~#0W18D?Z{P_sy-$%l>Y$syj{P*bTqGiHR24V?whiFQ=phU8JN&$2?k#5 zY=!`@>D`wm`E?`0R2QZl3D!>u!l`nScd+g35N{75N3pcC3^@it*J$jP|L)Sx64T(5 z(m^-O&a=}Xm$R;jfq2jxNI&c41+R&MezDs@^9x|~)UdF;Hc#P(RAkjH^Pyi3t zG?`1>2lW^$1@yX-P@Ly-=WSXu>G}117WNIA7SZ? zI~}#ZW`GnU(&ASvMr3#Y3AjqjCSVK~mp*gI#|^@1w9~QA;N_pu#8pu)*fGostQEkL zq5`&&&*CrbW+U@CvaOGn)?1I7VM|VA&G6~@e=@xw&iVhug|$x!AD;Qt_}Pi?4n#Ou z^r5>iXn=fu;p_`#pk2kndsyH;gq7{X7;H~qbw-YsNT(sF0gBq-cyar1s^cI=o&8hR zt!t~QmB3-#apJ>;!8xp-p4e=8Ms+ttJI;rg)?r~|u(-@P8?2R_beSLg!VEy;Tqj*0 zpmp$xr)xI&RH_Cefg>xp`l+Iv{JAD%bUF14E0VtP+?u(+188pJ0NpXKvF1$qqcG-r?<$*@Khj9pH zYDdXU;L=>bgcF~S^2WMg)ZHX43) zZFZ_CE9?GDuUnno=b~x1*dTYrzM|$nAC=ssLRpHq2hOkty)Q&bx7hGB-AC}@&Ztx| z2*r{-5%1k%!^3tT!G~XrN^Y?+%j~0j7ii2z;*Zb9|D{H)u+08q{}?sUYKYF1$@n36 zX6XXS904EOEU%BG?Nk+=oolOw$j}fWMUuO7_)L)bvlPNrc1K0$DC8KfJi%cChrC4?yf0b6Fb zDT?~+#0eJn4|G|$I%+kniyxkIK;i+gZxOi!#eAkLBo!XPZG-)BaYur$<02)1eMJ+N zbsT+UNY{l1$ypYGJ2+&LkRa9?g3 zsh^ruJRl@5L+(qXoR5y>RFb?*W2wtlzhTt>;JzlitD@zqJ-uXzuZj2Ws}d6YIa$PA#-Cnx_mKT{1Fe{}||o1;xf zTPe$mYo4gqvhOi&+?|^iu11)@H!wcp!;M-&nEy*A3Ske7a0~Q1w=d~Eo<`uX03Q!n zK*D&Auo#u@l;MNozgz&| z1YjTc1VEl41p2)JA36fygD?Vp#>S9lNbUd#__NRWIHL;edPb!gQc%HLnboq-X|^)~ z*D1(ZC_1%sAE|}PO1>hfw7&vGvnmFLt)28*P(Cj0{9mS&cnxR^ytVrg72JZD2Jb}0 zvUfsDrACsaxQs&NweWsjAzUAI-5@=-8Im-Mv}`^7;gE_3r$x?1UmtyWraq*ltSDRj z+*Vo<e&9XC=$&UM>E4O%865EP{Ck+(?NT5IAFS0=EP}uxP3MT<=A{|!sh+5GfUn( zrbRB;*=YEfnp~iYNNH0Odv>-uQ3gGJIvRb!6rzYm1$3Y;1O@1zPdo-ohnz9$O$+!_9fatAc`y&R6R<7A+HxzW5d1*Mp- zijwd5Id_T}HA(ij(Y8yn%!sp({4c+YN-k3<%nn#P|JPIFP1@I;dnA4*KxcE;Di&A=#d{KdL#>GcLAJ!`WX!G z)CJj|?(to`0)Q6)0IB*gXHTVL+L^PzAby&vp-Q9!WpV3fs^TZ?pQ8%yEz!x`=8n~ zc&@TlYF*z=5*Gu%I%@yK+^OD$_c+%~Py2h)taoA{cQD-uHLd?Yd+!1-XHldNpLfnl zazap}prW|TB!DDdFwq2}B4plmccY7LR$XP?i}A9%ta~x*x-Pqd47r{_E+>$X1B7rA zE;(ER;i3dVI6%N~Q6iuQ1&xRrE^1KJpostHsjBXJr{8xb7yW+w{l4!%135GEc2{>- zS65Y6S5>Q<0mBb-LSk8!SPt`Shxx0TcquT;W9Sm~BnjUL$sK`{gyzq60N>~m0LKLY z63T{V;oa~mB4m5H_W7mS2wlWM4xA9A4*(Hv^A!h&!!VY&VFm#0u>eg9n)`*GV5i3% z>%5iww2#!_MNZp^nB9Lo{x@mx;Md**Eo2KF`#-MaY51}a716W4>Y*WVOSTT=yQi65pt2t zn1Kjtsbl8zR<9grFlEn!2iQA=ZdL~moX*uNy99<7sL{V-C5zJ_HUw>`@^&Ae(exVx zM^N*)#jse0aH9ma9QKo>GZ8n!BNcXEpi#%c7Kd$_E?ysC$CWJEGr5h>C7W*yv9Av1 z9tZO^wrl<&2Vu=01_-4A%PH%Id^F9-^4YQYEr+m7 zJ8|e<_F=n2us(3Fu{V8q)FD_OxVxyrgFsF6(Z{^DEk*7rXz7-_G0+nq?G7(%DMt02 zaGGphz}UmZ1j4w(#VFMwJd(W=+mF0i6~iMtR2(Pj)8g4%c|knmy)q0kg?-idF_?Tu z08r%mKE!7om<8n@R52ZT@Lo+4zjg>V9rRhQ>dxLx^KVLUB`r<7kg^hqf%WLph!VFoda+gJho0xxMh8E#5; zvy)lql?*(0D&FTle{MS&@}u4CWEOcP+sVLUi3v;*ve?TRLgW;&bB5FB}0gBf#&b`J8XflF?mZDUbGYQW#^Dc zGUG4t7K4wd8jYE5hA$Y5U&<6wZT1ga!)Czt4`djYQBQF6e1U?A`(q87zEjpc%;bq^mB7NQz3d3jQ6ti$IOiK2ig6s7@+Y4! z8Zcg)C}mfAC1VLZ;G>)Ofl0}$yrgj)p4H`#cC?Rd^hyR^POu|=UG2|}Sh(c19j#8+d!?4cy#A)Xoq`lN=-Cc^iE>8jCT)T!&3@@aK6+TZ&w?yU~VLdnE(U_3J>-_vf}0MPccj*L#guvbCbN)@>bat!qoQ z)Ykf3M-P(=OSOE3T{n6kR#G0mae|3c0f&4gUW`urHZ2Q zQkX)S`lZbp+?K3C=9r1bN(%c4ve~V$D$Q@kx@uM8E(u0UGYHXt6A_tJ3%Sp0+CtXc zG+fAKX?%KBX>(dTvr6@pus=nVRC#rMt{QTBL!7fx_{X=9Dg8xArE06^+M9 z@Jz2}D_T!-u%hcCb>)8@sMdgWMkcV>pbLrvaK^!8^_>f{=CSw+V0_6GGT1+%6rbWuJlR?*GdmV zukw<6&b2mrrAn@KwLjl;u62!9YT;VnTT_(quSz8R=SsDdYu(WCHn8hUwVZ3M>jl@^ zm#iD$RfmI7sqc*E*$<&J44e_w-~g_IHjL@vgfVf$)av3AR^9Y`^X8}A9h>>gWjn&f zFjJ6ZrWyOp7&|>QD7$zLf91sqTIV)nPwv(`u5{^6my?lX{m%Eowtf#N1&1**jfw@8 z4Mc{)9?f&tBtNC}yCy4nlI2j)2IVI_)#$L9N&AaR?U%D(F*r?Pi!{YS%uJBn+{VduSI@S97btwi1_*)DpAKD_R;kVGDxLd|DdAevy|RR_9*{ajNo_P|v;Q z--Ac={4aa%74@Y5`}zOd7=Ucq(9=cXqWewVal+)rEhqI}$`*6W6x~%$-U z=*Ry4AO7*gf5PkIAOGin!RufD_22ON#O&F#|NWDn{EtulCtjb%>%ac%r2oe2fBxq) zpZUzmr+oIapFQ=|W_DUO$KG?Zx!JsIezqW6Xz#wPFI$wIF7Gq4GqT0@UXt;>G+UPS z+k1JoJUcTxD_fDR%+AhMWdqqc*}3*UFFP+=otUO zUy@ytt(W&uHk4f|@5{2wvdgn8vJKgl*;Vr1m|czcHQBYU-e1qYk!{N!%D$O>D|=Ypk7SQz-^Tkp*>=3YEAL0M z?`4l=-_L%K{m|Y!vK`su*%R`9GJ7ifQTF5PC-&Z%?aZFeek$*uWzWR-&$FLrzrg#K zc<;)dmG`f*UuVx{zsa7@ejDG-+G%*tvG?2>-}7qo?Y*G3ptcb2zS<(ZPnY)@wZ*k1 zwWYOXwSIXoubo*ttF}VkD{CujXXCvJ?}6Gm@;g|&-n z7uPPSt*;H$F0EZwyS#QqZA0zK+EulU48T+!tub8t_`6!8;hW9viJo?i1Z)m>7m^wV zMQvA2E}IdEF4^Wf2-_1#fr;I_U^SzRgLG`s9_D+6C)8?oCCjlwq7E(ak|y|LNzoKw zi2?Y~y-n~+#qkO*%19bq;$U>AyMgVAoK^>lunoNeH_#OIoPMu(mKtd;4?TrCK}Gda z{l1B@8^xMudQI#3Wuauz>*8e!qNUN5UUjZEIwaj9hBkHk(S19m*k@*yL;AWN>0hD) zM>vw{IGh}KXaX6Qjl$H~ZADdz=y@f2dNKNuXYk=3k1rS2+IuBk;0-InQMd)+;t4RZ zdmGhf^VY_B1q$_utJ13he{C`s7dgx)bTEU8(JlsQ0{xBCIUyHFH8m&_V{D@2z(j-m z`BE?+KC9)%5y7#Lk2>8#!E2%2A@9ZI-J-^=)}bl-LRS{CE9XfI68t4vB)g-dlpVu1 zpq(=cdKf#tCtrExHGL<4Hk=zgu<5RGClK#nqGQiFfaFdmqKAe@19;TVYH^Ks)~pt* zYA^%vCK>lSac?x95uMGJs4EY%-4!Svyw*50Jy8-JI6MzVSE$%hQWaml{_Z${IEw&x z;f!7PY}UMYB6`<@5Vz1zJUWT|X}e+F;lnZ`ML*|Ya@U`d3Vu^VtILQLFoV@0qmD0% zyS=s^-YnG#gewkCZ}R=)(arwie6x*sSQ3yN;pyUgf$WQ_UBtF}JLVR(SR2Cjl|Eve zTybbQgBaR)JuoC|vLU`Yi-37d1F&o6IO#_pibjT7UjJ$M|2Mn~Pb#BbC;;-|yGuOs zAuoHoy6w%6cnRGVC#QLBL43%Q3)%}m>V+Rw4*Pr-_>*>2_(>lZ@ozE=A*=yiE10;SvRlvLQ9Bxa z!ke(A_iHwhm(nFZblH+8Hc5gq`=~{#NscA zU~-%$J?);!6s7Uf??yb!`%MZFWlg9kMDuk8;5h{K(*Sr0zwHEI;J?CuZvJUe1v39R zlr_M>w#pV5db;-iNejduDa3(R|Dn`V^bCi-rAq_`>e*a66Xtx7^vM)fvZ*K06uO&g zGRqvAUD*Cav9F{Sp%PMtPz=P9Q3+@Mcs|}qGEkjtL%vI>1vEkABtuDW!8p?!e?W)w zxHe9Rq|4~n{M~L0VTTNXTAfBSacrwNwjUCWkoJv1e*3(dE-hx z*{;CCI8otZ`x%X}nO&&{e35r(hcf2x2y_pWF*(OVx<5UL1@*23wzf@SeYkh7K7m^3!0CBifb~{l`&zBSAih+F15IjnDDh{p=3mZ%P%et9|t5PA+AG^3LhGmJq&L z=#8Qg8cBqIAK|;M*N8NBorB+``kWLE;7MBT)zmMr;V( zL|I!b&UP{3!n^Jzu-gM@D7#(z-xHtbUAAEm~)?#B82Wqqu($A|s% z=0yF>4*La2&~x;(|5Bpk5;WJY`=>h;TL>4IXbosx#!g-&-7YC#OC7``Du^#s6k_WL z6o$S3wWQW{9lCOs!!b;*B^*xM#-O+ZB)|6uJq@$O?*rjG^g4cThVo1>!|&la6aaqj zOEr&`-u8fwL9V{ukWcb4aLJuRJX|1nFkP_`7t$(+Va|tZLjOye&VZM-g>rtN0MkUy z<97#su2(o$J17MVzpB(Kz9l6#x;jXFpQ~NPkoOja+XBiAg(sQy$1rHQ`vpP7=+;y{ zTkRb_M>~8DN90+fB_RS8A!P34+NzM+YaNENrd0|81C3JqBF@O!7^d*LtNCq3d#OE? zLPS|-cFM{xCycWMaU7R%@s0fTO#I5e#_f_YmePv2(p$N!OEjG2+Ke(4Km<>1NMDy> zwV8y*oZZYumZnYf$0cmJ4Vtd^<`hkflR=Sk3FHjxet+1TH6roec1UuPj4CRppKdF;zUNgn3OzchxsE4=XwXIx^u>&6;T8~Z#;zklTT!|DQl z2USRI$YqJ)3IEb$60Pl8Izi5Yxlz+He z>2IZ#*+uHOfW7;hK%`s4yrK*2&}`EpOmB-#LvJhbs`I_M+j~Wd{xzB-lxnDsjx}D> ze1kryln}@*w!3%ah81vh_YPtY$%OhK5xmK@-lQ$;4_IeQ>vWwLwRQS_LE{d1`eIf# z9hMNldSdi13j}aEe|RtIc=MM!Od|k3uOt98F%u)eNQO8P6zaoIU0f)bq>cn|g|}h^ z@E6j`%pw6?!`{sd1Td5kfH(l6DIBi zIE5ScY6|c4e%Tb}=vSD+3yA4Pz;xtn!f-d_=tDAvcR4hh!s#+f_O@jT&nMvH2-uN5 zu#d==1AXOgu!A792I>SzB^dbNqS7Ms9wZMz`Vq)GwN`KA4{t?RoP@sa<1m)T=Ovbh zMtb=3rfxCEQ||Geb1-np+g_mfj;!w?Z_QXAla1hZ@*?Z|4tputM)+uB0k#yi#k?o7 z?-6g#Sl`iTu02#o%eTFzu|CNm=u;ReWG~l?@NAlsh5lvrg#i*$9Xaqsi2M#p+YgC9 zBo!gW>2X|9X_GTKJmKF|X+!CR%pZ3=n9?>0aHrIcuh3|J%66He5RAR7(jK3vv^yQL zDQ!$b(n`R;Bt#?@F#@hNe$5}4@WW^7S%+f;%;zNn#&0CrS@;8d^Xd~8inF*onf;u% zVuU+ETA5WO+&Nt8M?@YH=2dve#O_&pLAcF%QCBv?eKiNb9#=wjbe!fjjc^ZdV&N9vzpGt!(i;;%Z!L*9P~IE&krt6gpa3k*(V(bAqYdMyWQ4 z%~J~#UdDkk^GIOAXYmIKq>DzD<&HI@VLmU>aA3ki&V)|{Re%W(lb#Ed(UA$S@Yal$ zHNft~A}ycGUNUe_sBX9bn;ko`m6nIX#8v5^1Kym`GQ;Tzr5dW!@;P49Xjww;oC(Kv z%e35aqVmTc9&01u!aqD=daJ!%i?GuC1D$KFDbA`%%Y; z+$&18JW6eVH@WRglv-^%VhP^Rg%=F#S;*#&?1Cc^QX6k~Lr4L_2_(hfOPII==xh_Q z_E_Qx%|+1A+ukY;C6C1F1F-{ERnY7FW`t%3+lYTt>o5&Wffe{lTI3Zhhah_@+p6Hn z@p`m~45DKGtT;qi>JZdA&Tvuz5YG@8YRfQDT2~IjXSkcC2t0)V>wb*sv`JVrB0CzY-gUmHk01 zY`%11BV3*@i0?^k;>Dh>|PooMx<`xySvVMtu(8I2>!R2mg=2|05d= zDMg=p7|w`W&wBEn_tM5rpL?V=Hx@Gr?pQ^&`ixSWQ^wRs;lQwe|8c$YVa5LAM%R1u z7cZ#y&L7`fA3cBEe)ZAtpQ-PMUoGe0sJ{90QM@PbhX2EU8S2$X9}5ut(0goc#s2y5 zX1KC|g^V8s?E};cKqsTd7&!(Ix8yfrO$LDDdbI+!zT-z*Bjd-Q=KiQSYRkp?-bLoKOo5y^m;kfNr9bx$db*(WbZGFF3e>ycugzIz~gr6ifjA96b)iF>VC%sE?$Q1>aIAhlrl#+-r5tfow7Xwm!-} z%cXb0<(zOiL0$DR;_}2hLS8SdeN5vpe17d1Of|@9bbVC7C+BZ}VPoi^wt(5-TAT|)2=Vo8KxzQTbZ{d_3dRqxKb z7et9cjMr=8-Ty`ul-<|F?vr#9W^>y=xoavs6A#A2L(vTiktXnl`O_NiU=vbzgCX!(8gk~-xs<_5K=V*CI&5$4+;04B1 zS|~s^B&r@z6M7Bz4^R@be_<{d%prH!SB-2l5rpgQ(s-*Iyg6fI%;#9IB|%4QYPOG{ zB(!gIFcx>jtMo!3O!PKA7M-xm=ue`nDZ@p0Eu1Wdljvv4Uy$~l?O}QZ2CziIFSeNp z>g9@pw{k$T7t*Pd0W#wNX%8pQoI-BI0H`l@;JD3uYtaC#7&MgN)pIXfkhBEYTPdl` z02fCz6k7rKS@_d)OxIEPgEmhH?tY{Qa|Y~1dHXn)wmPTX5$IV|RcMR|Jc;xXXod7K zLRf)oS6}kJ8-1wKr}RNO@H^-WgEy^%1mn{vw3MVXz02W$U+Ite+kyc<;N~9U#!?c@ zQryV(5tF-)vSq~d0LqBtFw2Y>lXHS~M|d&52aAlbW6=6hojEel6%BVZ^R_e=4R^xz z0enW%SlBX$#-?^|j13s+SBVug5Y|W-O>iw@13^El7A}zhNDR8O_esCcCuNa(tI8(P z3*7GoR%ij)57v8azyvy4K6{<7c^v~PyFoAT4KH9oW#i`s9x4^^J>H`uph@oa1-^gS zMddHt4kveY^Ty7g@sSkUY~`LxR5-4RkbH#eU?x^2m`H=hN`gV^2^*FXha%lI0Ipo-nkZ^n+>a@Nd( zww$R9QO07oh2GaBPdpQU5$v>NKKmS$?I&5%B`Vpe`fS$#5nCaV%oX0NOC6B8pGaQ5 zbfebq#U4>k!HrN07iIUE6-@|>R6VI(n=2id9Rx91#)iDfHI2be(!o|`wP*+Oyb?%N zwg@r^uqt?=*-mA2w{$V@KHQT`8ra*sC{Q*`6_WS>!)rszI}=itG;wxS6mems%#TgR z=8~j2)kf0LJdj~eNE&q8Qy(E30)JG}ej$nr`%uyr6&v@-2a^8%Q+OPYQ8-h}1%-wJ ziv%w03eyZ4Cv|Gh#x$*cUo(O-WrY;Skxg@b#o5#8UflAV6KshGy-#(kWYSW8vkkK0h8R_lDc5$ItyLgu| zZ!^Y@7%#cajEOW3=Dj^_DD9bq(y05zRB{r-lkk{1%~(Y(PE_-z)_P@o+!z5oiF#KR zcQenc-k?z}w5JF5L^>FW>Z1F}ekuxDv27UhsZ2W-7HTxzFZ8A?f`|!uV^icxlhIa( ztAZ9g1Y?2J5K9d$^IIsgCnj5kYmH1GWgND8z~wJrn~}9tLb_zQYPZHt4{tmt;MfesruDWrfoC zQ(Xw%cEP58RT5jVu!;MFl0|ZnH*1LOZHveuFKb;SkE)vW%eqIn5?D;C(t3|7facM2fPCc}1TvnUj-NNX|^uX+1*o9Y?)tEYyIw3IAhLP<`7@6e! z8Y}iY$cHK`^}J@RV^(U)l8N2DVx$@a`ZB|9bUSvzvZz#d+_|MMO=%z0h4da&+=7Z16$g3o zDpcIVb%@#4B>~rA_Cg*mX5x}tQF%8PF6WZhYve`yJ6=Z~2^0KexuNS#d`;08vUTBw zySgM>7gBZcKBYFxyE#CsMWbu1rJX*Ol(0)LPvxR*GJ2x8^yW5W6(eI-VL?4a%ES;R zLYG%TwR#7T7>`k7pKQ8#zc_C^^_9KE!JBV@-iX>oVH*_87zH$;j^@N%6g$9#E_xau zvRcj?c2y{l?DL7}@?bV@B#f)HA;CnVB7K5d08ixgp*@9TwW(Z3l-iB+s;5mxaWVM`MUE;_KL8GKU`p%=}U6 z;(mGmvQ56AGw5nz5o&?m!_atlac86!Um?-dobHalqv`5A`h)iD08bm!W(6gKX z@cyTs64<*-U?hrh5K*~ja@^!0Qj&$c~1UOw;W2krY`~wp~5{bq` zk_dm~Upf+I99O-DC=eI{a(^5e=6(|F0$P+q+=(1GuSJAOHLnU6&f@g+p zwV)h}nQcQN^G}OXsj#bz;|WVEfWzSym)5y#iRTdIrM1KX8me^v$r0>!ZAoSpY)dP! zwxR_0z~b7%X*Rt|I6-ez?TTHW&M61Oh0_F%CU zVaDZ<=z{CKd2^vupBCd`5`YE_EJS zcb@mZ2>ScpolexI|32Q>zkRw3FL7~^a}K$B$}V4F9$c#EdgT<1d30{Ut+=nSWVpB$ z7s`0OK2Bca;|oeTF362aIW%&)D;F*>xF{DsFyaCOjI>d&=Oya(QAD0zf7?dCnbVAQ zjPOvW29dKhGv9-m8}uHlXUJStC53`j7bR#DvXS8_?Qr|yDI8vk!f=7ZUasc~Z^Cn! zXs|{$!Ay-c5_L81+tLde7kT{^TK|n&Uk^YgcWuvTZIpy=lXTxsO_5Eg66-qUVh44m zf>NEbuAoGnOT|~e*D=%_Y2xdcu7P)A{F8Cx#d?nYr5HPPKi=Kde*iRi{I-+mdY$|@ zwT3u6=89Y_=|AL&_-c6n&i1xeYX7LJ2`f<~Ve1jho+_P=={kfz;UY`(CaB|b&Og-A zs}0PduX5;?wRIwNhQbm(Wo@RpWSFRpeF>f~_*`WJd+dlrI#>xO{n zn_J4Mw9Y{o&pfI>})=XfD#6s6k=tHs{ z7qi_{f~Ge&V5>-r&sGkom5dUYC)zENJOAq~^6Xb!rDNhHK&YT%#WjFpT?^f<7NafXbnY!o=?oo-6jfZ`7?SoGS{_hb*;BeNC?6a>Kp_`G7&rP@qL*wU|P5K1#E9?{D zWPm>~f5B}OihZ(<&Tyc%jt&!`v$2kv*cYNIYz4FGBOshM&{>lnjYrf+3Y(@gJ-h(5 zOjoh5OC9X3nyPxdfJLX+3%RjH+&%ei7Mq#eb;LLv;Bb3A3htEr1GuA(={g*KxRePz z!{hEe_1IhGP1y)=*E6+>jUxb;Hl`t*_ybn(BIBN>=v_8KSb=zSnI7dhKgWUJrXou` z3I&se#jLl(XetFwtKcBca}Z`pq|}?-b-1xXx~<9~F@er>pn|7lxu5T_%%%q+*+wND z^s93O!}FM;iHbY*jILqo& zTCC+9E3Iz>;=`h!2S-2&Mzb<(Xdww7p-U;x)|HRc8n;o(QaA9y4m)0rk*My_rNhJe z5Ik~Si?bJKKwU^%QQ6Uce!I6}RL}4kEOMjzJK3#hZkUzO`5j*SHf0|?PA7{XPg5(r z*yf0T@k<${{Cyj-#&eUTLi4ov_FR(_ncoF40DvYOU1h{F;@68AR z$@|eRyr60LEjPSaRYKD!ef1!Yp=ovqm;RAG|4YKlTzTNlLx&!TabbiDsG*G{?oTA~ zAt-8l_+-UU^1_50R}8n{^bzt2?rTP9wqW?2i$wTAvS8|1H=r$SHQ|Squ(ZVv$(XVR z(M}7OEo2b`p)$a-E`f`A2>EHR@zgtyCzDxr!Xd~Snuyj$ZD*@xq zNT8^Hr|#T}0yoWFbg_dl)_D%<9NTHz^z*={(vIpiw^9gpaJ9+RW+L-?)&B||TOOFGeR(=rm?1J=))ii24z_5=QFKIVGlGF+1T^W=R=v#uTyl8RnpM8pD{qSZG%A@z_KY{^7tWMMji^Cw>SSklOsmfD85 zPYqgVk8pJ4YDSavKZyFlLFKCu&vGDk6{4sJGGb%sR7}#DUFp?qW|c6?TX@wQ_JQ(N zC-c^k@=_Twrx~m73FWPN0Vr?ZqU&qZtKXp2;{&Nu$5GpYSQbkEh^_pf~iAE;YH{7gv94IV+|v5*1*oPgNCul>!^mo%{si8OUlJviI`?EZ8i#lk;^X*FEt_oqPC+c@4J_Wpni~;H_v! z4$`Ha0tFYsCLD6d?!q2WKyE_rSrlL+85k6Q^ zv?Rh?lDP0nFPH;Z2>;i_M$e=vj)^NArs=VoRHa&vrP&C2>@@d5g69K%Lx|rIc1zh* zG^tx(-Au`h7L6-8B3>~WVq7sd67SA+-W@ZpNa~bya&1D@x}s6R4&(C<<3~EVw2=EA z>dok(x{*`0aFSsolM*W3;!6%phytDEgNdV2lZ;D zS|7_T4*ojd^@_d0_8Odz>4wh2PuOZWlv^E&-7!v$D_``;SRZ|Ucrx_cypml4PB(KR zNtd!tEWV~Eg146{5@q?54;R&#mn5xiE>#k_9arof{@kt{r!hXi=B^@8{p{nu(<_;7 zBpO>j=jmdtmnL1=QmPdN>dd6*-ClIhHMV=aQb}XGh-qK;BwUI@2qI@{7haGyg&j3* z+Tz@5=^#|j6#j+C0qWXlPZuS!MW|WRy;SUxVXcY0g?nU@m7~9}8KD_(QANL+x70yg zVUIjLkzi*yBxAxB%q2=%>P@$#s&tR2Rp3@MCyQ^BaxU7!VaZmrHh04#qG=g81HH@k z!X#4*A4@mA1KzA{dZW#!uwwF}U`qF?=Q#-5r&7`NeJTyZ8YmdoU0jB`A9w7Z@34$@ zfsETqmN-*}UpR!e5pwGsZY--(2&j^sWR+pK48KiRu4oJ1pwlqytU3-qpqS=}RC~SF zVSY#VC9P2i*ZK3JS*#*UjA^&rxa>}S#Oizr7N@UHIGl4ywq1Hd$(7m8=54H6Vk@~z=c4(U&RYJ!8M4#(ny813$dP|<*3t`Qt4!f??+ zAbjT79~DoQsKW>^m@URTsPse(HE~{f9FCWmX;gndrt2CVr|{L!!IdPQeMz&lIEbKA z{KDJBnpFTW6!ZLzl5J0fz9?%rAWyghzCrfXyTOf#$3-4>C2G%kzq-<#br4%QsN#sSIDUE!W?$QkMu z-!lHrAUpugH?1r=hMntlb6Zzr&U&sL_u5AIIRAPrPrnq?L)|y58~aVv(wIvNHQ6vp@x6?c>^m?{x!FSte9v4@X-JRyKp`uP3&Eu+yq6(h$ zAQo~E8t@ZXg&l;iH5v;UsYoL?f1KezfzSYwBZUZ`UOMGpP=ebV%GY5VKvk}b6AT2_ z(=6#At_grvFX=f%g{?9RlhD>(Qrw)S8Ce#4L^2RKHOE`Kn|}mX&I`k^J7V zd!WqKrtj?=vibcoXTCWz1yFNusyh+=iNt>yF3fOZ4grN4R#^D=5AdQ}^Emi3i@9%` zIuKRt$>7e}q8QR}=j*huxhW8ZDTaJbu?YSn$P*EX-$?PM{DIva%B`8qLfmJ07j6@V{Q}D$#)eO#B~|3~ z%g_u1fLi;+)H8N8%;KR>ufWf87;M3I&E|0IlSET#pMaw3J`I%mBsM`Fzu5URPeFLT zEKai$U6nVRH^oL6;6X%%O$5R}_!SJs+APJNoL_2^Wp2gLi(>GclBIt>MpgXN@_ zSL~%;+*T|sGpeSSR`-VLvQulk;#7SJIG1$!7VR@1ye}Q))egc&$G-Bwwf6VW5b<3obj>RxWCtSj<*0M(*-i${Q|Df(`&d#`GEma?NFaphOMtS$@Y zB}kTqBrp}rYCc$67hiP%Mln<;_nu+uAxz z?aB(eT+kVy3+&GNpqvlk`(IWTF4hM%{v3+KV6x`0jpC+7?oa_jAeCvSfvAogF4fHE z7*_@CJ9=dgKqClI8F;Jdv8q71Xq)R5%|Ijeiwd)g*e}j1X0r<;PyYfFnz00Wtf@oj z45a;p+Sqrs<|hau$8jPCu?b=j3pgopt2rj9P|IczwTQ2i0{S$*O3VPN;wW+<77d$@ zfq4$h&P~X-@@FnC>Y9I$h~xQQ$<9q^^CP}hcsck5Uh=Mxkr3c_ttcwM>2xmiN(P=g z0iR9>-{&O_JXc{pFh{jx)os$epNqVbfu|1(!KdVLx|cNYT%!5F%1*sM!z&s17BgGE z*q_@m4~aD&=;#8o#4FjJpazNk{}55CZnn2X8Edr?<%#=5lo42wD3@Q-nJ8nW-4bOi zxi>@^EA5sjW68ZC%2;W)L>Wu&4N=BQZHO{H-y5Qgl~SU-vdAgBr>8tJ{SKaaXcu2F z@^UlDgzpx(Vs|?1CvGHIC~X+&mayfs+%Qy9Eyqzi7rFV(Sjl|;>{^5hC3umSRcTKh zc5+v*>A#HO+$Xh{E^|n47E$#ASUI6}gMW8%Bcm=M&^DQc8rr5l%*n(Q zenqa1a~x)L_T%u&X83wp0-W!aZLyKt=2xvQF1FO#u*NGHJ(2NN@z4vrnxydXuxHzHS z!&IEKCt#xwBT$b-NHMV^99ys^KGpY4sl>_;z?g=!Dq=mzX zse$HyyM+%&63C?>XCHP^j5`u>4@qmb*aL{{sL%%G)~r1++sh-yYou;~7kGcZq`Gdf z0Zb|YtWd=Uy`t&5-1HY$)kR*yZr~;tE#vhPFK2kQa$>*0)^6~fQcb>2;|5cFl@IiZ ztm(%(Q_}DpsAhhpaPSNpZI~1CW))wgZxfv|z#xDqL>6-d;?RvadCezK@)cvMk~ zefxfYmyRQj<_OHY>U|<65hle)sF#JJ2<5aEzo5*s2x6Qm?%63{~DDh2_ya7r4&#dzD1 zQx16Z#wp2!w^^z-8~m#PN|^43{E+CR6fEBl3uf8nNwjpcNHqDEOx@>sb7mc*X+*$U zG7jeEhldb<)cklFpjFL{t&9oN>M~reGm<57fp_CxJ!c7~h~2F7L9h5Ztw>e{eo!{)Of2$-s7xAZ0Z}`@(8;R^3=2tVUx|f(0w+mT+Qla-P$SHLq6$ zk=cMLfiy6~I++zYa>eGcm?`($9Vdf5zM?C<$X8@9$^9f#A)t{UFvtVT2M2SS+XD+Q z?FLiM7?kTqP|ZUfhOQ*4=7M&W4upD5XPfs>ui@2uaxl!JMqmSe#zk@l`GbTjm7~CERXtuBs5Y zysC5?ysfM*t16=(OOVr51(_+`{-UT<1knO2*e?=6C#N_?rW3GO>n!cn?o|qym`lVk z$0o=Pw18PnZ1dU`MRGm*q_o#j3dE6a5&9gcZ4rVwd^bD>cTon?zebf4Q2;7*6Iq2# zDgf^R4_iePn9ig{o^kH`X80}oWkDcF) zm24l&T#2^UoI5S_Vh<~KA_?+@LX;+o>V1RNhX#7%Om3V=1au;@@|7t#(%;_+AFh0Npb6LcsN5aBk@iM-AenG8XaZFs^{2~T(=robQ{4ikV&G!5R7xVg2b36*OaCn%7B88-A zzs_NqJN98fd)Ot4U6KYg$zN5Hde?hplX~N&GDuNqx4}@rN+`c zEi%|W*H}*TN+pfuYm6)Fq_IH5fFn3`3&~vw<$|YXnA|qverMqSwgr$0(cK#s<>0qp zD5U38IHwtFEU$@;lTl++YST0&KGl0_`4H^&+6Tya8HfgNacmK=;3@fOLD1~=wmGZX zn1(C8b1b+8fYp-^cfIf6@guaAdX0xzy#OZ0U&4WllZJ~oo6pFQ_?^4^a5OXlpY;}4 zEt!mKiI251FwZ#CD;*{E1fn61b+eufE!pCQgrU%U-v!1#!nparX)bJ)EYYMOX-H)i@> zq1Q&dGJN&^vTniH^IRkcv+e{X45x#%?x1^0Dd@2B1g)D8$edwPaESQamiJf zQj5YJnPgoe2NA=q_ji$3vZPCTBvdgqy4dEw0zCA8_u45?z<-lV(|QwM>h35x?%?7; zhaLDhNEUl!wG$5qJ;gy4;|jZ${2)cEntUXOdExXqi0tD~5-UT%((i=%jR6fTY8 zRZ(w_^w#M8c*&)*c~0vsQEw&5^=0By$wl3tL1U%;w$X#RcncMa{Ol)-9(@NUO9$6T z1(+AA3(K3^?noARSz|HN$T%e>erDd!jsXDAz1i zO=^2awN7-)z2dMg65c))SRwEukxUGzI7%?o9GmQu&vF1aD1fO20HMbx#HLN96)3u) zO`~8}I7HjfP60$t*$K&ntn`xK(FxJJ0VMfvYMNi=g$+e82?(Fjs|iHEoXkNINhj26 z9a09Zaafu%h=vFm8Iux@d=H4~=TukUKyaF}wKtz7_e<+;i9f>D70|;-oWM`OTXJRX zK1*x8y=T>FTI~oYh*XE0$TV$+|KeLyvBe{Tn=Z@Xbb;75F90mgP<)*?+J#=waH|Eie*?T`jr_1*v?~2^5Z?z#nrPT0n~(Qmhj+6Q)$6c{ ziNUx;TOd*D1!AB$0{DKdOdo{BY#lDHN{b#%(_6F7&gR&$-$(P)?GR>m%sNX(KPa6A zmuS@;hP-Pw)YsS?6I8$4D0g)Ckd8F}Cf0hbu<(rflN^#)I!xWr1rrITO2j&8BHb`; z^h&nFpCCjCd1NP}#{nZpaQD}OIHDW#f%Mh^b99k;b->(-0dpw8=>b_Lm^-nIIXL$Q zBmi?wQJQ9=5i!4LOct*;JFK-cs?j0#xrT%2VBOG++GurF=m-jkQK8h4S>=w*5{m>^ z96P=Zw_I)B{FLW9+{{HOxw^Rio~cz$P8tmIMaQ!RgB&uZA%NuChcuo&HP7AV)y=Gi z0Jt``qdUE<(Uv6Onp*4MpOb~N#})fCtxNvm1@-Rv;mT-;GN7QR> z&g_dFdMGy&#keB1KvP+WsLu$$>rQhEe8op-xdmR4T2&=j1_624Xm#WNn%?gqM>eTqUBw(_~m1>TO8RQC3LZ8aPRgyFulClng(I4taRsq z+r5F!U9vxAI)%6`2`$uX`M-m^#}@IO+@33NYVCD)*P$|8>l(N&nwR-4Fc+10SArcg5r}jVv~#1>KcmSMCU;$(iEUOYYH+$n3CrYf=7kD-)vVCVYa$H0F{jXc@pUhcjq+JaBee#vI$XN z;vr3@CCrf~AaUv1kZ-hMEfjj#>u$r}y!rk8*jP7K86^QdN$^E)Z#>vdR$LHUQC`%HxH`CS@Bo^G z6Zq*q-b+=ZR0g&cy_LS&@iSpzr5S4_n4N|GfEKrQ^Eydy6GpD?Q}W{$<`d?E5sCJ~ z_Awy&%vFn8+roEqT-l=Ey??lCD@^S(qYM0R(#h)^U5){q}>c6e~8+@++yYpoR*8#bi2xxG@wN(L|7# zLE(t-Gdd_g_?XV}F`X04w=$@m-J!<%#)RkK`NJu@U#HBguk`9>{iSIrY$@zsimm7c zk_5=``FU(Q0wxqtw>^w+dv|N@AsfR)JRq7COdJ^bhvB$U%|FCD!}=6BP1JwR@%}H< zjjyxgo%{bz>^LxNu;q_+g;yr_Jv!&;i9eW`Kmsol%1DD-g$SVx|`T{@Y zw=@1%@&*89@FfdQUm#m!?!4~+SK>trPDv}9+l*C=iL(kdl@5FPMP5nw@;n@5`d`_` zi{@quv1m|YfHp;sS}>K|eAB!q<&G3tuyg}p_K7NUp_AYeZ}v>xTdRjL8nNk?M)(=l z=J=UfAR>H|P3bZR)*`)50^=SyKs?9<0!eOA*k&`cUr!P`95_J0Lb(|{fHFq(OFlZ5 zKMXT6LxhbSh43ySlY>~G)>~z=DiXyG%?q)GPx1oWSZI6k%MSS>#Td0*lUO(UVPTfb zGBvMb6|sZT3E6?ky>T)|IeYe-iN~XhJfP%O2hYXWZ~(t41PM18M83Av0(?;kkr0a_ zu7zhY1lqyIUMR=ApoI zHb(}?Wcw@pwWMgE){$ zhEx7N4WEm{c$gCaSKoYNr(rx)8pbHN-hixh7*f|-wNY#eqd%F1ZzES0Cvt^;B9?uWT#ykH)YMfauVLW z$O{{dLgdlz491Mjuv)(8UBy7gNG4e1x@TaN2>e2P9mo@GCRhc#nRb(ni{ZjBZK-lA zrK6)Q4s4d|DO~4{EsAVBL!P4DF-|T0S^!c%5Yd%{QOcPCcRMu5B87Mqj>1QwP@N)D zl2475QiwF0E2O(5b22l52Ri1rgb7{ZBeN4s6^htN6?ye*(12tH5`bu+KQ<7!AVhRk z1DBQ>ApeE^3w(qBVht9~(4|>`aW+tOG|Yxj!sK9OiBuL{>D@5G0kbv2X_W!AsR+s- z#$CoS85w1qiM+aGQLF(guq#ADs~`d1p%z(|Od7?f@tDYIG-A`@iFk`H%m|T4E1=4i zXE@L_rW~ZQ@!!aWOJHkb8tijs4hGGAb1=}k_w#2tVJ|osm~oQ~7mfvyWJNV`oo$ZM z5a8^_zaX|}GxvM+FPPsB1K^x&rVZ26<&|LIAkn4M_#9*nO?Vh?y9vz11_T6>6h#BZ zUvYI zMQ|;WSfH?}Vcdbq8M&iPZ)vj~4tF=QzmahL7_i?S;R69bEW(re<9&M`gY}sKZb2hgbdth@G@)Mif0gHYERu*r0C`tmdZf46QbKad4 zNLkjhQk!7Su0GcRRy_Dr`y%gt0j2Z<+on_b}S$fcBMb9SDVHQ;H41cK; zk^glG^FS3vc)J!!ut9ysT!i*skM=PAu{}I;?U_OZQ1Pd=F-sLzp?_WL*fEhzH<(0w z=HS^)Q8}qf1G?&*Q1zsBRw--Jrgd^g8od6S96ajI*rt|TyT0JPG5Vm=sd8ixMw5bu ziT+RkMAez9I|toSbp}r3I21`b45-m@7!&YW8HLKv;vnQE914}F6IG33b7>SKild0C zGg`G#MAaGMn1k3O)%hN8#xy>WAng;~(#v}TvFg zOQAw-Q_o{wsFj^OEx{1?7lsI42z9%Y3)f(1!1$TCaH#-+#2lVm%E&yY8LNC#CuSNLXc`H)u-%hk!L)k3nmL00XziitM4Oy9b7P%|0>;%M5lmu1Am;Ts&)aGn3%F z;b7GrDsu0r^VTEWG<9--txd0fW6BQc!b@H5)DX8HQ_0ZJigEG?lt-W1r~wxxvnc1P z7D`VXr%w8Fnz4qVMo(I2fcZ_S%`^ctLqb%rGX?;WWE;hvgwH$>-gH30a;m1K8Ts%5 za%zAI`K~Tt)lLO@Mx%LAz}Ml`Lbi;PSi*&^AEqq)1k#xhev;d>c}aJD>`pOmoAGuU z7YLXcYEE!7E{+mIO7yzu=s{|#`r&;I+dzBAN zO!p@X9A%Gc`UD7G8^N^TbGARmDfcS@iFSx6B94B6ki7X2))P5a+)Xj0UZV4*k3hk+ z24V0>!B-A0j|ua8rJBX{sFt%O><><8oHjM)<%cYc=a=#`$oJsBlgAqo6EP@@A7{-y zCH_c(osU?E)rD0M&4Cb;`A%JiSZ%1H-UwWWb~=Tlt9oq#f2j9JE?`>EDO?ePVe1!V zYYW1m5k+$9im}3nceI=d;V#RqVe!|(M{LN#N6q>XBn&|Y6_uhqNPLmxftVecXM1bk zR3{|5h$DuqY?=fy1i)-W0Xw8~9MU2+*F!oN=M9(Pgn2tl3+SQjtsU=tTI01!Hkk*0 z*HZwnnLndsfR>zicdE`T(SG3{sLhPnl`{c57>G6+&1S{Z)HW<>C=A^M3!`HiTiwhL zZ$3M^t&GM2r%u@Uf@TD1JPWPUd!`RUK|U;orIv&!mWW`^7VggHJj7p&4|#w0$)HJG zz-Q!)vo%p8N_NOIN-e$|>%oGTpyR?w(_$npL>hc;mYPc4LM8Xm+7F?ZM zuKokKyOz?EQJN-js_(5{Y8R9`bl|>q=twj{3s2G^q+OzZm|Q}O{&5@Ae?V|>O1pJ! zsawbxMVU+oYao2%T@VFe5vB25Us+Mh!}`&>{B*th^812Uen5{}5Fb6rJ88JJnl;GteLeC@^Wm|zU<;~tirMtz! z{8CTA$uojajS5)!)RY9Q4Chwbonb1~3Ps5Y^M?A{Y&nz+o_uTU*q^i!od>z-goBcr z+0>f|@>PYTy7g>1RIx!(ZUZ#`DY5l~Ddx>|T5c;1kSb*upom=nr`Rp14>CGA`wQTS_451`=>VT8Vvfy1v^h-L3+PTZT|+@UVR7UanF37t%j; zao0Pv^-yrvJFF6RUr^z|ddmV%b=JpddTPxKAW7rO}qQGB=&iW>sU&RI4> zh4tYB#x+zyR$Qa%4L1htJ*X4o^OCrbDwOQkB~Q1$yt)1-;7=_j=XuFrXQEUP^ZB-2 zJGEqVN=TcS?-jqRogwzCnpof^f1^#%^wrj~bw88Z>~3cOd>;&a>x&}Vr7}cur@Pmb z)_o4>3{skd90mw+OQOj+-*PbJpb0-@UmON}iqJrp&t!QL@)Rsvd6 z@icreh6DpjU>alP2&IBFmV0w%uOYoUx#?ECuS`>CdBv+$UX0XpnuZqfRw%4>bza_rj8ehk} zjjv;mJ@&Zcj+;Kc(a8S@uebm4pZw{Jcf9k@j(-Vtg!_21a*Z~yK?c+HwM>%$-Z$VWcP*T+8g_y6#ZC;k&(AOHA2|MS26 z>%V%T|IcSmKIOBgHnY>RIoaH7UN%2lkS)ymvPIeHbOTof zo_?qAYE?Iz&Fcc`nG(O4aHIE%&PCr#u(k zLDfctzS4_WHrLZK9Ll!j3m|B5NR?4>L)0WbhgnGf#dFTpbc7YuPWdbq2=)-Oa-xE= zJ+I8>At&peAF~}T3@|L{T%U||e`XShmb>0yBLHKDX+adoV{2~*Ye&B}Wy0ByL8m@z z$KAWi#>TZiO5@e1z;dj%fw4M&pdYhrh}nWk_fA#~88HALJ_wQ%{utD^h{X9B41W`= z3(sxvF!{eR;(YkQQ8EQ22UOC&YQ&XJcF^f*U`RFIOT3fj5lWcR%fuAtX2c8VF&_^0 z4X9?Z^>R}{6n6qbbF^m!NkMCSYK~a%-7w$UlfqyF7;Tp57pSQMJ`w2nFJQ7daa58CU!9VDYdtA{bOoqR5Ei84L7v6y3-jqqMyQau^cX&>XE5h z$f^1dbYz=M6(I&|lEf3&yQSEC7W*WM?TW=3bmf{|FdxOHX}^LR_qeQD>6OjPNnt(f zwCZ|R+{zRh&VA)w<#;|rmC)HT-Fg-Q!?pGrNIr=j-!7dC-#lnb)+D$3pHPMfYKyim z;aF^Vx0qLym{Dzs!mlX}`CnUytTPY>*}Ro2 zEPP9bJOxAkm%@;DhLvF3*1Z_ARF%%E9#+9XZt$L)9`;X4oXR{-H2W}Q1DXdT96thr zW|-UTe?Ymo5;&LvhTuf*j~}+{%5=)O#Ty&WgyRzk4YN>uarF|`MBrH}lF+=gIu0A2 z5nL{#ung*YF{T`peGG`=Z{tRVuJn%Ut&ghrimi1n7r;jamxw=_3C;~JHi&RCmXc?9URpEle?G%xE(V@x4 zL>AuZ;O^8t?S~?pk%J>TbJlCr?P;?4yD^Q^IJUnJP zS-#Fv9|TJxkB8o(0ca;+7)~YIygAcZ_?&AL94TU0grw64l$Jn1*c%m<70FWcejx%d zj1w>sU~$9T{OG35R(p^fSn8#`2HU+ycJKRNN{@D=@o|rOK|^;aD6^AVY#*yC&WVIw zkfBu^^>7exrV6QrMp=?_WXIeNhj(qStgrW>pY5S|&Bwi_DOB%8&A1*N&(-68(yQCJ z-(v-3+^IeEM^(ku9$GSiK3!23`mk7BCpCm>XObFoM4=|Zn&S+L%f@_@x`|M2axp zF&@C@B_5zl9cOduG%6UK5tcfRE!jO@=Vskh-m5F!+gjmmSx)*tMO$obYqIuci+uB% zE4`+znm@s?ba1vz;h8*GrVQ%;U>IXSXEqCS!mWfe_uh2>|J1u*ILF`vCyb7IT&?RgToqF$9}s<3>WxjcQ!QrjTPqB4}v`r7E%wqeRcg_2N(&o56*$LEFlb z%sRqf@W?hBz2inh)Q%Rt<{1{5iXtNugX1;cOJf^TBWBq|ux0kvM+##eoz%asqJDj} z3Z&6l9X;Uf0#~y6DYDE!!!s}z9OCT4zX`M(O33qmCoM;Jjt51 z%no<6;Wu)Lg#?LuV-)0p>=th0^U2}4Fz=0&k@-fJ*MI5zB)6_$E=0&8a6OYfD^6|@ zp{bHL{s=9RpU2f2_Y(M#oH_XgV6AifexiJJ&Tx;9QEL(6VItJL!ghNiXQv zC>EK4Mg`TcMf$bj&D=83Q7qrekHTMa_Ur5H*K0^F62LT4d4M`1)JMo7dYnZj(m>K9 z;CmZC<1a^$94&u>25vu~Kf?sVHjn`fJ0$x!mf(BxE&8Af)QH`vP$T*r5^3}vTYDc6 zRMd3CPSFhm>gyR;D_w|e*ID5I+Z}(GY4GOZK$`@bL?M8)C4R>G6E8Y`?#Z_ao@COK zebuAvCQ@;rf9O*mr2-cG&di5|6-z;pZm@PrR|~s&PSj4>5HZyU@U0+hBOE4E`0+@V z1x;Z>r`FzwJx4bXr_+xesq|G4G+KBD{Xo{&fyAzc%tRfX&1pm|5F1ILC@G(GOj(`| z)?z259h+Y{@&7R~AX!QC!P8rSqP$XYdu!c~yqyJlyek)7Z^#E~=(CJc*Faybe2y0B ztUh`U5YPi2JeqVGVa+bKx(wpLc;axJzzua?e^Ps|>lu$(1 zF0ZphT}~vVuVbBGmFlRg76vWCDDZ)_t>;ShG-xCkMyb)O!PFVY^IpfsB+(+#O&WFV zv)5_PiOQnYiAVY!`!}alPXn&i)Tj7Mne@C;9dTyrs9-JdI)-yZxanGpbE|B^$JAG< zBM09d=jrrP9d#$V^7&$VvzI3nvDj;s+=-s06Y1`AJm3W7rCm@R;t>iRgyc99!))XJ zvne?_V607y#^QRKko0p-Ggh&?STvq}LLznNdO6bpLh=vZh&(NUI^Rp%&ZM+wr*9sP zf^5sK`M$*qHrm=3I}p>>)#)JFu_xL(BjGiU9DI1J(!)UsSx_Y_F5fe~CA*@52i!#0 zK~hqQ7GKk2>$AL~sp<&IA;!zhN)P>?1-*hNF)P%Muw%oWO?F080eHgltR|d@Mf)lf^@{qB>h|B1+9NL zazg(YbXLBiW?7rk6W~1tKPy#pr zctA0q3r5jq{VN{bAAw#*t*JqKOR)=c4Ev~MXhJP9{80@wtqP<|jHO=5z+)*DSc8{b<|VhN4nPmrd}GJn_j@G+&qYqP zF3p#@+)G;Tx!An%a<6VDHRS(IWgOHj7LE149-QUlA@q|KRy z5k9pi^32IO`qwZTxwCuC<}kH(5H9XD6XX~?F#(gIL1&2KgyKa!jH5W|Yer}$PWU|P z{ZN5K@2?OiQAaR2Qa84nE`X)pg7ZU7c?7pr5`00Ls0>ogI8{^5bU2K~g6?SgX4^!$_w$0H-FZ|g3oHJM`PWDbVQ0e7 zcypM{e{gTcAlvY@EeRn=UJJWVO3x_DGBDP$$v_>Ifnp7A@Txod`^vOTsBn{A*i0e7 zX_)q8gg2m;Ff(MkgKdXaD+oL0DiQZya=1JTKQS^vO`MP)W@47VVzAIO2d0r!-_oNT zxGmdU?)@~jNv@yY)RFO=>6MJ}FiDe0?}P`O} zT%^c|WdqMeo`0hw__IskWg@Xa(iO4FOWviuC;!gpZ!GqHOfuvFuVlR^tEl42xFkGK zrg7y~9rj#*Zd|#QYoF)OjVp7d=l7njnx-uD{1r*}R(mDm%DN+2^>lGiFHLIUcJa{F z(vDLg3w$+CgelRrwDMRxG0xw`R<5 zMnKVBFuzU=Zt^b-ZnQ)k#IRJ@IjPl&XUk};K~evm!ulN4SC!`hUG3Uk;)RQ`iDTO- z^glch+;HUot9${$X+IUGOWf|%@6IkrN62;Xxs$X}uXu&r3&s55c;R{|BoMEU8_&C; z@H#>gha+=1uZV&h-Xy%>gZC!*;7Qi-x4iWjdf36mZhE6VQEW|!f=3OF?HZMWb(L=l z)+nE~dCgc!GfCyBBkMuq48U*c#ngbzUqOdB8gu^`Khl3~x+ns*2D8245MWVwj>pss zjx9VshW=goP388Nr0pNm+CJMF3t%+#(_qTB-c0=iP9b6#=0SG1k}N;=`*6zmkw}77?>VJD;uI?d54l=>6pzDsRnRoBx>4%+x1HzSN0aqQ5}jzy zkx2Ju^FhHnA4+Vu6cVPupHL=Y5UYH|-&Iz5RDcZ4NKD~OXo3@hc8h1VL$JjI(|nfS zwze2;dsNcw8n0xD;NJw44$ae$J=-vjN5e3|7ZuvIUhiA#5HtzT(NlOo(flkgagaO| zmEQoEcIJU83Lg>O)_9Oee7&_8w4bOoUgWLV?M<&2q^P>cfI?^!q=kD4=5_43O(cF# z^T9B~%WFdsQ6)MZBxqI`@fU%Wy)Jsnbo_xjFoQ(<7#b2>s+34`C1345w_M2+1V4x) zMP}EB0byeIblb)vq!DW0p!_xi8qQ#iBjd(5hQJ@eE-+k@x%39HeZ%@KGsV6Anaxfs z&gw1RYg1+pMZ5V`tBV5hRS5|VdnJ?CLpEHk0bcz%A({n4LH)kZC=U1 z(-`io>UMu_Li`W{-L7LmM^gTLM>XLduVgJ8+`fga zUf5cop*;V7#}@AQO4b51!qynyjpI_^J!~xsLn4C4g@{!`~9G=Y1cf67@CB)XXBYB$Jam>d^$HVXkXDN03 zfp6HWid6DF2WgZ|jXQsERk0rjC;fQLD;eog`KIP`SW@!)Uee4DVm$fbZAHpX{mp*h zl?=QZPo~sTQ z=+BSbjpevDz4{Gx@X#*UlkKHeWevp8eYf2sgXwIe(yJcfMny?;V4Lp@DFQ;qBJj-# zB+kHgRW7AhEzB{!1n}&t1#adica2>SDasfCS>k|^m>1`JJ!25qjae+iKL$Jp%9HsX)SV`dK`D`2+=wL9b(2fo|SdyJ#70|E%T>gjmEN}Sfu_VE}GkyZGUjyzueEcSXl7@;a|n zT7N%y+di4Ss@LTI{k0PYz_GSxU3k${DESgJb*09T;WUgPnZagw;7jHHD_(7^`&Ze) z+6ESzSKN4|w;N;As$14KzxmCwYsHQ=FNA|J6zn|`1BTeIzy2Epd?D8B!yoymhIxHl z0=z!)3B-8)y99WB`qR6M@j4@0oGr3`TbZ4mt;zG`lRj+}>AYS7aL)$)rpgM~tPgv2DpN`zjW1 z4C*aiV2{p6<~3tk3uC$xVN6>sO$u2LxL7#-nPJ&vXj(xJtel*gw^dk|cmrm>xjd7d z_V%!8@y_&nS<6s#89Od)n%iYNDymoPmBTh#S>;J0jN`V*TUc3Y;nJ!WUIiTGJIWm# z@aif>hFF{VY68Yi$%p5?ZS3>nQxq8YY&Qeg2&Tsj4`EElxHJks;f%pMzS>(he!reg z=Z|!>j-Kzej3ZydTI}-dMB`ZFMNK8TSQ^;cF;~h3UdtM|NNR=1#H5iyFK&%oD8G^Za_)_3*ffJya&_v7G_>B(MIKi3hT7F5#HFT5LGW0HIEh6Qm z$?ZO0^rD;9`qwWFblyPT?6s_cW!eCIQ4_@6;ze!#mP!McbtI5suVoD^2@RwKa;q1$ z1|)7e-_r3Q>^84u4Iq?SQFI`-1RD}G-R{K=O%lxQRJhp-m=cR<>LQum;RTFL`&fWv zDz;+_%o~p+L2jnB1IH6{MmKGtsS%OVWa#~wX4AvR5bvgt_)y~PaHpA^j7U%mVxc)W z_zKR1)2MAR;M6HLnee@d@5$!tZtt{hzBH=3miLve6S>#Rs<=cHHG9*{^2ObfC?f2@ zRKqy7#$97-bo+7&We%alnkG_VZ;|!gE$jOyL<|D5t-0cfDU6Kl0e+HL0B*LX#Geif z>k?KRpUL~Y2e#x8$BiZT^A=;Fo!mxa;a0C@^mHmJv8kEKg7~VJGbw1!FjpLt8@K<+a7!P_S1OFKVKPBn?*Sw^G{~v4^JnUdh1!7b^LTKIG4B>3tf{g)Y=1%uL?2=YN;9^q(LlE)6&^ z*;+ZN2=Cht&nVH!h*6v}R7NO*kcl=@<%T8OoT?Gb|jOOBfo5-w{xCLJ?Iz@HVXD z|H6)6*OB@E&?{NT{~49o)U1SDc6do6myZ+t%^kr%?v)JuKMDAe{K`_u`vyaWd2A?xt(6lCZYBD z)BgN6)d4=-Qvav^+}fFi=iqE&Ig>koKSav$o)nTBV*ni0`owSfJVKeu*Ih=+>3IPDNrh*?l@|AE#{ zJ?FKpQ||}#d`(AG{KhL8Dj53fsCeF=TbJHvGmlW&8ZD}4GU(wwtz9|ow7C7ZuKWeN zGWYhPs-B(|%<)Rrm6eO}V0{P>nZE%N6!s6T6Ye!4%mmfqR&{0x6? zE9xCB&lmf1gFge$gIWiM3ni{_j)wW1N8BMGv^d^n4#j%$$9SF(bR?~QuVnN2_73SJhjkkQEw`@J12GIGgmdQ!A$cwy^O%9?wMe?1LFs+Ndq{$9?ZR8iO zDz4?!!SoWZWZ1Ail`Nc>nb zhReL9jbU<2cP{tm)}2XX8qmo!a?)Ge;N`4E#z*c(JG#;<87}DI;XtqQ=his9JcoXNVLT0_t5x7WqBJ{(nfjph)9ZizphXa%R#w#Le^%?Q9LwFl#GZ@1qj z!;>bi`}o@<@wb;3(egzffuV)BW#wP$s7BuGl?*L^fJ#-%=oT+&%SgOLwscg2hrN=4 z=OvQVm0p*u(p$Zx5eJh?=MQ!^uXrT`F9Dc9=s<|oWxyi7pO`dvd#UC@Z0=VbodGtN zD)FK&A}h5P-Qgt-Sv=OxPrIPVH&b7OJH3*PhG*9V|MsN!U-FU$o~PCM{T=6Gi&rx6 zJg*kUo0y^Q@{(qT5~r5?I@%8I_DTkxPAvrg@&x=nUedsiW$(9j1b?qrGVpY8ai;KP ze{SoSzAPq!Hx)e2s9AiCOof4?9r)V)4$zj9dasoE+5=wFNVk=RKj_b`Yx|99oXalI zm&AwgbuVWv^7(G~+BdwC;ic8>WSc*?#z$J?;xaN+3efweS1?D-p0?`Nx4o>XTMYQ9 zRJSZb5ofNaGRseGdiV5N;f+(-kzHL9hz1C4TtyyEjvxyo&9~SM;$}_|RiXzd7I*D@ z)0(FwWlXY;<~Ae9r-So0XQayYFyB@})qJmhqsO~cRoBt~f)|N|q|B}3FXE#78Q6KF zU`H=nl!T{@+e9LNWb#MWQ@Lt!|8VV9aKdhn$?XXy$()rTwXFJe~^yT`9%bUqY8N1%b`bw zw|-wUcGr%3QM*Y;*c|RZTf{jhuc)`g>lt+hj`RlMNMi0~uhcwfc?8_Q$bv=FqlRS; z_E&1hfX|Nfy&q#qC~Sonw!Xj6R#Um`fS1+tA^O-Aj)%awCSd{)iKdte5Tr;c0oWRc z_GYd)usd+$eCt<=?$WWx8Y=q|!^?{ivA>^v1{UmsYv)vJ9ro#(>VmF!`RIhvU+Bf2 zRZP+2CyXd4HgDihAN2%9l@;kb`9yg=_}vD9I1sPup`ms z3bMJvYa7{+&rI$*63%E89+9i?$KQ#PuJV?Qk{C6Kby&%N7JOr@5SLDO>Y;hH!zy_f z-L-E)b;^gpd*0f`SEk-F%(pBry^9Yqc11443&wHxo&H(I&~B#ZHzN?6Y24<~$J0;DGl3jHzdELb#Z?{pKzG6oYnM2-*P%^$R>0KpEWE zQvy0r0(yYNJ@b@pFl+Fxp%>eIA(9&qiJ{0D<-{ww`J>(~7bk0%B%C83VDI#!3|MXg zZ-?x4-W6LIRKcdyaKP2zb=fa4zEt*c87kF$!5HCXft8i3Tv@6jN>#-rT_l>y1*5!J zmy7y|ZpcS77fHgVuJNXpsTil;g>lg~2Gb2Dp0VU1?+~U8WWc1f&@FIe+TC~yK0`?Y zJK0_y$R>ww4oFnIq*oAoL0!RF@c0@}ECrp61VtN@0T-95lIdp_4Sii!P$A+1?Ue;e z4FRCbsR~YO?g&fG2$O0WQx(K`66ERzR~27dTuAK{lw_fjiyDFOcp$mZL0kA6yI?9% zqw7Vg_*^#8*wq_Rcg3NjjtEQ*I2$@{9?UYP4hMdLSWve z@Oc71GrUi3$H7ckV9$%@a&}(?luI-LC&Y4IzZd6slG%vr3i6*b1PG-!FycyzVbTu9 z6pj#8=_o)To9H$#G8XDN6~4P@M-so)M*v_?yn2YKO_}J5xs(BhO3g?C#CsCR8khlf z5OzYlkVtHL8XRO7lF9S&Kj#TI?Mha6VHwf`5@Fk9T z{0w~AA5yK-fhC4R5QdFOTmhI27&?lN%tMtZJ{jf3{5y z$U2TEP13ox`BXya5d3I~KnAfsgP!q!*n1N=yQ(T*_zpECg-{MHrJ&rZpcIo-5a`lY ztb0T)r|#Hlo1WA5lFpbC4lH2m}QQA{qfdqP7|p6%{ph zD@H{Pg59X7-~YeX+IyY5&$+h}vAg}=@4NXy-Fwbndt7@>d#$x2-Q}&S48Ska-ED=c zAO+M%`mioNk^%|DcL>nn*tnre>ZZKNVaRjc z&E+6XwL$WMTpsaaI42S-Td^zZvq3S(Zbrplm}n4n$&NfLILy0mOetxPSZUUsH1E)A zZ_u(!`K(?(TRsWQ?VJjTj^;!`PdkV&k0;Yh5xD8G$QFdc89t?k^rLMF_9GQglF!#| zH}_#0kzK!zouwD|^#jwGQKxNfgp4Fh(~za%)r^u>hifvNTN9aV)bh^Npa*$6zN!_6 zbDC%if-EJ0$>4^1oS;>4%|$Bp)n4OO+2ki_BBs57U7_czb3N~hKKT3(wMqYn^?R|d zA5%c+N4&a&nk;&LrCY9ej-_E+Ay0MqJrtb6r=}#D_Rl6(n8XhIlnR> z3IzGNWPL-3B$*9Yi=l0(XcD3ngNUC^X~L&;+Ur}TRDxo)2&(u?S+618Ky7)ja~#b0 zJ`IWtYS|;Vx1kM@6Z0@L4x@XOmc_6~g*-C{78p`UPFlg~tL1y=b&mE`u5)Cx3AhE* zL|QwFGy#D~9fj_r0TNFHwY4GTM(>MV>&Vy{4nSBix74VUDDqCZ6f>|~+<$>5`F(|u z(;jXtTwcM2yUwe& z5MA06SeKGZh3YXipKF0v>1N*Qm8{hiinM~tazVoqbmk2cWaxMru4J=XN)wJ`KX@ds z$EKwF-QJ+-v6^@<;0Y;ydY-vG2cz3VlIr;Wxy1{#UD|p1r}ABymk_e|I8;HUzJx0E z!Ai8COvhCCsa8dorX4SYoye7(CeV^BVLm(XohK7�}b<(A#?g(s+P11*(SbSS&s$ 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%0DVgLZvlXbu%G4-Bjx;zVjUyQFDf*|3k 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

K3LYdefE) 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

8Hli2WR7GB@e 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 FcbT~j=!KCTQda-Lk)CV9>{%su88#1 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
  • ImnOm#!0IiB2sO1|qrp@Ly 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�P+7r=NMtcJ5j`o~Kk`f%6x+gV4@4X)V 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Ϋ{zlaIStr#Xf^PWqB|-)KJlO`q7~!iKXrl+Xb# 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 KUfRBg_5T3OdzSV9 literal 0 HcmV?d00001 diff --git a/sdks/go/.gitignore b/sdks/go/golem/.gitignore similarity index 100% rename from sdks/go/.gitignore rename to sdks/go/golem/.gitignore diff --git a/sdks/go/client.go b/sdks/go/golem/client.go similarity index 92% rename from sdks/go/client.go rename to sdks/go/golem/client.go index 60f27e7aa1..f009de8d4f 100644 --- a/sdks/go/client.go +++ b/sdks/go/golem/client.go @@ -18,10 +18,10 @@ import ( "fmt" "reflect" - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" - apiHost "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + host "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_host" + apiHost "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/codec.go b/sdks/go/golem/codec.go similarity index 99% rename from sdks/go/codec.go rename to sdks/go/golem/codec.go index deeb75ff7c..6f0b4eed43 100644 --- a/sdks/go/codec.go +++ b/sdks/go/golem/codec.go @@ -21,7 +21,7 @@ import ( "strings" "time" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/codec_test.go b/sdks/go/golem/codec_test.go similarity index 99% rename from sdks/go/codec_test.go rename to sdks/go/golem/codec_test.go index 626173789c..8b682c1a3e 100644 --- a/sdks/go/codec_test.go +++ b/sdks/go/golem/codec_test.go @@ -7,8 +7,8 @@ import ( "testing" "time" - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" ) // --------------------------------------------------------------------------- diff --git a/sdks/go/componentize-go.toml b/sdks/go/golem/componentize-go.toml similarity index 100% rename from sdks/go/componentize-go.toml rename to sdks/go/golem/componentize-go.toml diff --git a/sdks/go/future.go b/sdks/go/golem/future.go similarity index 96% rename from sdks/go/future.go rename to sdks/go/golem/future.go index d7548ade08..634950f297 100644 --- a/sdks/go/future.go +++ b/sdks/go/golem/future.go @@ -17,7 +17,7 @@ package golem import ( "fmt" - host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" + host "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_host" ) // Future is an invocation that has been started but not yet awaited, returned by diff --git a/sdks/go/go.mod b/sdks/go/golem/go.mod similarity index 87% rename from sdks/go/go.mod rename to sdks/go/golem/go.mod index ca08485849..674164f2d2 100644 --- a/sdks/go/go.mod +++ b/sdks/go/golem/go.mod @@ -1,4 +1,4 @@ -module github.com/golemcloud/golem/sdks/go +module github.com/golemcloud/golem/sdks/go/golem go 1.25.5 diff --git a/sdks/go/go.sum b/sdks/go/golem/go.sum similarity index 100% rename from sdks/go/go.sum rename to sdks/go/golem/go.sum diff --git a/sdks/go/golem.go b/sdks/go/golem/golem.go similarity index 95% rename from sdks/go/golem.go rename to sdks/go/golem/golem.go index 73293a465c..0dc992ea0b 100644 --- a/sdks/go/golem.go +++ b/sdks/go/golem/golem.go @@ -45,14 +45,14 @@ // Importing this package links the generated golem:agent/guest export glue into // the component, so an agent's main package needs only: // -// import _ "github.com/golemcloud/golem/sdks/go" +// import _ "github.com/golemcloud/golem/sdks/go/golem" package golem import ( - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" // Links the generated wasmexport glue into the component. - _ "github.com/golemcloud/golem/sdks/go/internal/wit/wit_exports" + _ "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wit_exports" ) // Unit is the empty input/output marker. Go has no arity overloading, so a diff --git a/sdks/go/golem_test.go b/sdks/go/golem/golem_test.go similarity index 97% rename from sdks/go/golem_test.go rename to sdks/go/golem/golem_test.go index 5102b4601f..8f9b278199 100644 --- a/sdks/go/golem_test.go +++ b/sdks/go/golem/golem_test.go @@ -4,9 +4,9 @@ import ( "strings" "testing" - guestExports "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_agent_guest" - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + guestExports "github.com/golemcloud/golem/sdks/go/golem/internal/exports/export_golem_agent_guest" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" ) // These tests run natively (host arch): they exercise the real export slots and diff --git a/sdks/go/guest.go b/sdks/go/golem/guest.go similarity index 95% rename from sdks/go/guest.go rename to sdks/go/golem/guest.go index b7fc1b2fee..0b26c66398 100644 --- a/sdks/go/guest.go +++ b/sdks/go/golem/guest.go @@ -20,9 +20,9 @@ import ( "os" "reflect" - guestExports "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_agent_guest" - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + guestExports "github.com/golemcloud/golem/sdks/go/golem/internal/exports/export_golem_agent_guest" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/exports/export_golem_agent_guest/exports.go b/sdks/go/golem/internal/exports/export_golem_agent_guest/exports.go similarity index 94% rename from sdks/go/internal/exports/export_golem_agent_guest/exports.go rename to sdks/go/golem/internal/exports/export_golem_agent_guest/exports.go index 4c1f3c2049..9c1b78f299 100644 --- a/sdks/go/internal/exports/export_golem_agent_guest/exports.go +++ b/sdks/go/golem/internal/exports/export_golem_agent_guest/exports.go @@ -27,8 +27,8 @@ package export_golem_agent_guest import ( - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go b/sdks/go/golem/internal/exports/export_golem_api_load_snapshot/exports.go similarity index 93% rename from sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go rename to sdks/go/golem/internal/exports/export_golem_api_load_snapshot/exports.go index 02c0e8ecef..98d6849850 100644 --- a/sdks/go/internal/exports/export_golem_api_load_snapshot/exports.go +++ b/sdks/go/golem/internal/exports/export_golem_api_load_snapshot/exports.go @@ -17,7 +17,7 @@ package export_golem_api_load_snapshot import ( - host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" + host "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go b/sdks/go/golem/internal/exports/export_golem_api_save_snapshot/exports.go similarity index 92% rename from sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go rename to sdks/go/golem/internal/exports/export_golem_api_save_snapshot/exports.go index 51e5ff681d..db8ebf380c 100644 --- a/sdks/go/internal/exports/export_golem_api_save_snapshot/exports.go +++ b/sdks/go/golem/internal/exports/export_golem_api_save_snapshot/exports.go @@ -17,7 +17,7 @@ // the generated glue). See export_golem_agent_guest for the pattern. package export_golem_api_save_snapshot -import host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" +import host "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" var Exports struct { Save func() host.Snapshot diff --git a/sdks/go/internal/wit/golem_agent_common/empty.s b/sdks/go/golem/internal/wit/golem_agent_common/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_agent_common/empty.s rename to sdks/go/golem/internal/wit/golem_agent_common/empty.s diff --git a/sdks/go/internal/wit/golem_agent_common/wit_bindings.go b/sdks/go/golem/internal/wit/golem_agent_common/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_agent_common/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_agent_common/wit_bindings.go index a3ff04ccb0..881cafb8aa 100644 --- a/sdks/go/internal/wit/golem_agent_common/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_agent_common/wit_bindings.go @@ -32,7 +32,7 @@ package golem_agent_common import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/internal/wit/golem_agent_guest/empty.s b/sdks/go/golem/internal/wit/golem_agent_guest/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_agent_guest/empty.s rename to sdks/go/golem/internal/wit/golem_agent_guest/empty.s diff --git a/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go b/sdks/go/golem/internal/wit/golem_agent_guest/wit_bindings.go similarity index 87% rename from sdks/go/internal/wit/golem_agent_guest/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_agent_guest/wit_bindings.go index 58db29ea40..40266aa97a 100644 --- a/sdks/go/internal/wit/golem_agent_guest/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_agent_guest/wit_bindings.go @@ -32,8 +32,8 @@ package golem_agent_guest import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" ) type SchemaValueTree = golem_core_types.SchemaValueTree diff --git a/sdks/go/internal/wit/golem_agent_host/empty.s b/sdks/go/golem/internal/wit/golem_agent_host/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_agent_host/empty.s rename to sdks/go/golem/internal/wit/golem_agent_host/empty.s diff --git a/sdks/go/internal/wit/golem_agent_host/wit_bindings.go b/sdks/go/golem/internal/wit/golem_agent_host/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_agent_host/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_agent_host/wit_bindings.go index bb8b81a13f..42aec4fb01 100644 --- a/sdks/go/internal/wit/golem_agent_host/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_agent_host/wit_bindings.go @@ -32,9 +32,9 @@ package golem_agent_host import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/internal/wit/golem_api_context/empty.s b/sdks/go/golem/internal/wit/golem_api_context/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_api_context/empty.s rename to sdks/go/golem/internal/wit/golem_api_context/empty.s diff --git a/sdks/go/internal/wit/golem_api_context/wit_bindings.go b/sdks/go/golem/internal/wit/golem_api_context/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_api_context/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_api_context/wit_bindings.go index 209ef11a46..d65ce02a8e 100644 --- a/sdks/go/internal/wit/golem_api_context/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_api_context/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_context import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_api_host/empty.s b/sdks/go/golem/internal/wit/golem_api_host/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_api_host/empty.s rename to sdks/go/golem/internal/wit/golem_api_host/empty.s diff --git a/sdks/go/internal/wit/golem_api_host/wit_bindings.go b/sdks/go/golem/internal/wit/golem_api_host/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_api_host/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_api_host/wit_bindings.go index b030183996..8e98827b04 100644 --- a/sdks/go/internal/wit/golem_api_host/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_api_host/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_host import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/internal/wit/golem_api_load_snapshot/empty.s b/sdks/go/golem/internal/wit/golem_api_load_snapshot/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_api_load_snapshot/empty.s rename to sdks/go/golem/internal/wit/golem_api_load_snapshot/empty.s diff --git a/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go b/sdks/go/golem/internal/wit/golem_api_load_snapshot/wit_bindings.go similarity index 92% rename from sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_api_load_snapshot/wit_bindings.go index 66835a5d08..4ffac13a2d 100644 --- a/sdks/go/internal/wit/golem_api_load_snapshot/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_api_load_snapshot/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_load_snapshot import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" ) type Snapshot = golem_api_host.Snapshot diff --git a/sdks/go/internal/wit/golem_api_oplog/empty.s b/sdks/go/golem/internal/wit/golem_api_oplog/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_api_oplog/empty.s rename to sdks/go/golem/internal/wit/golem_api_oplog/empty.s diff --git a/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go b/sdks/go/golem/internal/wit/golem_api_oplog/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_api_oplog/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_api_oplog/wit_bindings.go index a9499e4576..0c2822584c 100644 --- a/sdks/go/internal/wit/golem_api_oplog/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_api_oplog/wit_bindings.go @@ -32,11 +32,11 @@ package golem_api_oplog import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_context" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_retry" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_context" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_retry" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_api_retry/empty.s b/sdks/go/golem/internal/wit/golem_api_retry/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_api_retry/empty.s rename to sdks/go/golem/internal/wit/golem_api_retry/empty.s diff --git a/sdks/go/internal/wit/golem_api_retry/wit_bindings.go b/sdks/go/golem/internal/wit/golem_api_retry/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/golem_api_retry/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_api_retry/wit_bindings.go diff --git a/sdks/go/internal/wit/golem_api_save_snapshot/empty.s b/sdks/go/golem/internal/wit/golem_api_save_snapshot/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_api_save_snapshot/empty.s rename to sdks/go/golem/internal/wit/golem_api_save_snapshot/empty.s diff --git a/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go b/sdks/go/golem/internal/wit/golem_api_save_snapshot/wit_bindings.go similarity index 92% rename from sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_api_save_snapshot/wit_bindings.go index 8dd77335b0..9d07672aae 100644 --- a/sdks/go/internal/wit/golem_api_save_snapshot/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_api_save_snapshot/wit_bindings.go @@ -32,7 +32,7 @@ package golem_api_save_snapshot import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" ) type Snapshot = golem_api_host.Snapshot diff --git a/sdks/go/internal/wit/golem_core_types/empty.s b/sdks/go/golem/internal/wit/golem_core_types/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_core_types/empty.s rename to sdks/go/golem/internal/wit/golem_core_types/empty.s diff --git a/sdks/go/internal/wit/golem_core_types/wit_bindings.go b/sdks/go/golem/internal/wit/golem_core_types/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/golem_core_types/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_core_types/wit_bindings.go diff --git a/sdks/go/internal/wit/golem_durability_durability/empty.s b/sdks/go/golem/internal/wit/golem_durability_durability/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_durability_durability/empty.s rename to sdks/go/golem/internal/wit/golem_durability_durability/empty.s diff --git a/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go b/sdks/go/golem/internal/wit/golem_durability_durability/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_durability_durability/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_durability_durability/wit_bindings.go index 0dbc887c77..1e274a4143 100644 --- a/sdks/go/internal/wit/golem_durability_durability/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_durability_durability/wit_bindings.go @@ -32,10 +32,10 @@ package golem_durability_durability import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_oplog" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_oplog" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_quota_types/empty.s b/sdks/go/golem/internal/wit/golem_quota_types/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_quota_types/empty.s rename to sdks/go/golem/internal/wit/golem_quota_types/empty.s diff --git a/sdks/go/internal/wit/golem_quota_types/wit_bindings.go b/sdks/go/golem/internal/wit/golem_quota_types/wit_bindings.go similarity index 98% rename from sdks/go/internal/wit/golem_quota_types/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_quota_types/wit_bindings.go index 9b29315dc2..78caa29757 100644 --- a/sdks/go/internal/wit/golem_quota_types/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_quota_types/wit_bindings.go @@ -32,7 +32,7 @@ package golem_quota_types import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_rdbms_ignite2/empty.s b/sdks/go/golem/internal/wit/golem_rdbms_ignite2/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_rdbms_ignite2/empty.s rename to sdks/go/golem/internal/wit/golem_rdbms_ignite2/empty.s diff --git a/sdks/go/internal/wit/golem_rdbms_ignite2/wit_bindings.go b/sdks/go/golem/internal/wit/golem_rdbms_ignite2/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/golem_rdbms_ignite2/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_rdbms_ignite2/wit_bindings.go diff --git a/sdks/go/internal/wit/golem_rdbms_mysql/empty.s b/sdks/go/golem/internal/wit/golem_rdbms_mysql/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_rdbms_mysql/empty.s rename to sdks/go/golem/internal/wit/golem_rdbms_mysql/empty.s diff --git a/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go b/sdks/go/golem/internal/wit/golem_rdbms_mysql/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_rdbms_mysql/wit_bindings.go index 7b90654826..adf75a26c0 100644 --- a/sdks/go/internal/wit/golem_rdbms_mysql/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_rdbms_mysql/wit_bindings.go @@ -32,7 +32,7 @@ package golem_rdbms_mysql import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_rdbms_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_rdbms_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_rdbms_postgres/empty.s b/sdks/go/golem/internal/wit/golem_rdbms_postgres/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_rdbms_postgres/empty.s rename to sdks/go/golem/internal/wit/golem_rdbms_postgres/empty.s diff --git a/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go b/sdks/go/golem/internal/wit/golem_rdbms_postgres/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_rdbms_postgres/wit_bindings.go index 2eb922aeac..8553ba1e50 100644 --- a/sdks/go/internal/wit/golem_rdbms_postgres/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_rdbms_postgres/wit_bindings.go @@ -32,7 +32,7 @@ package golem_rdbms_postgres import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_rdbms_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_rdbms_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_rdbms_types/empty.s b/sdks/go/golem/internal/wit/golem_rdbms_types/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_rdbms_types/empty.s rename to sdks/go/golem/internal/wit/golem_rdbms_types/empty.s diff --git a/sdks/go/internal/wit/golem_rdbms_types/wit_bindings.go b/sdks/go/golem/internal/wit/golem_rdbms_types/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/golem_rdbms_types/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_rdbms_types/wit_bindings.go diff --git a/sdks/go/internal/wit/golem_secrets_reveal/empty.s b/sdks/go/golem/internal/wit/golem_secrets_reveal/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_secrets_reveal/empty.s rename to sdks/go/golem/internal/wit/golem_secrets_reveal/empty.s diff --git a/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go b/sdks/go/golem/internal/wit/golem_secrets_reveal/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_secrets_reveal/wit_bindings.go index c908f44f2a..07b7fbb5be 100644 --- a/sdks/go/internal/wit/golem_secrets_reveal/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_secrets_reveal/wit_bindings.go @@ -32,8 +32,8 @@ package golem_secrets_reveal import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_secrets_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_secrets_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_secrets_types/empty.s b/sdks/go/golem/internal/wit/golem_secrets_types/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_secrets_types/empty.s rename to sdks/go/golem/internal/wit/golem_secrets_types/empty.s diff --git a/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go b/sdks/go/golem/internal/wit/golem_secrets_types/wit_bindings.go similarity index 97% rename from sdks/go/internal/wit/golem_secrets_types/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_secrets_types/wit_bindings.go index d492a20502..ba1453553f 100644 --- a/sdks/go/internal/wit/golem_secrets_types/wit_bindings.go +++ b/sdks/go/golem/internal/wit/golem_secrets_types/wit_bindings.go @@ -32,8 +32,8 @@ package golem_secrets_types import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/golem_websocket_client/empty.s b/sdks/go/golem/internal/wit/golem_websocket_client/empty.s similarity index 100% rename from sdks/go/internal/wit/golem_websocket_client/empty.s rename to sdks/go/golem/internal/wit/golem_websocket_client/empty.s diff --git a/sdks/go/internal/wit/golem_websocket_client/wit_bindings.go b/sdks/go/golem/internal/wit/golem_websocket_client/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/golem_websocket_client/wit_bindings.go rename to sdks/go/golem/internal/wit/golem_websocket_client/wit_bindings.go diff --git a/sdks/go/internal/wit/wasi_blobstore_blobstore/empty.s b/sdks/go/golem/internal/wit/wasi_blobstore_blobstore/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_blobstore_blobstore/empty.s rename to sdks/go/golem/internal/wit/wasi_blobstore_blobstore/empty.s diff --git a/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_blobstore_blobstore/wit_bindings.go similarity index 98% rename from sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_blobstore_blobstore/wit_bindings.go index a85de1df1e..4c28616edb 100644 --- a/sdks/go/internal/wit/wasi_blobstore_blobstore/wit_bindings.go +++ b/sdks/go/golem/internal/wit/wasi_blobstore_blobstore/wit_bindings.go @@ -32,8 +32,8 @@ package wasi_blobstore_blobstore import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_blobstore_container" - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_blobstore_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_blobstore_container" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_blobstore_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_blobstore_container/empty.s b/sdks/go/golem/internal/wit/wasi_blobstore_container/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_blobstore_container/empty.s rename to sdks/go/golem/internal/wit/wasi_blobstore_container/empty.s diff --git a/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_blobstore_container/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_blobstore_container/wit_bindings.go index 53e1965e62..70adc33867 100644 --- a/sdks/go/internal/wit/wasi_blobstore_container/wit_bindings.go +++ b/sdks/go/golem/internal/wit/wasi_blobstore_container/wit_bindings.go @@ -32,7 +32,7 @@ package wasi_blobstore_container import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_blobstore_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_blobstore_types" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_blobstore_types/empty.s b/sdks/go/golem/internal/wit/wasi_blobstore_types/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_blobstore_types/empty.s rename to sdks/go/golem/internal/wit/wasi_blobstore_types/empty.s diff --git a/sdks/go/internal/wit/wasi_blobstore_types/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_blobstore_types/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/wasi_blobstore_types/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_blobstore_types/wit_bindings.go diff --git a/sdks/go/internal/wit/wasi_cli_0_3_0_environment/empty.s b/sdks/go/golem/internal/wit/wasi_cli_0_3_0_environment/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_cli_0_3_0_environment/empty.s rename to sdks/go/golem/internal/wit/wasi_cli_0_3_0_environment/empty.s diff --git a/sdks/go/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_cli_0_3_0_environment/wit_bindings.go diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s b/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s rename to sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock/empty.s diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock/wit_bindings.go diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_types/empty.s b/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_types/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_clocks_0_3_0_types/empty.s rename to sdks/go/golem/internal/wit/wasi_clocks_0_3_0_types/empty.s diff --git a/sdks/go/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_clocks_0_3_0_types/wit_bindings.go diff --git a/sdks/go/internal/wit/wasi_config_store/empty.s b/sdks/go/golem/internal/wit/wasi_config_store/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_config_store/empty.s rename to sdks/go/golem/internal/wit/wasi_config_store/empty.s diff --git a/sdks/go/internal/wit/wasi_config_store/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_config_store/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/wasi_config_store/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_config_store/wit_bindings.go diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_client/empty.s b/sdks/go/golem/internal/wit/wasi_http_0_3_0_client/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_http_0_3_0_client/empty.s rename to sdks/go/golem/internal/wit/wasi_http_0_3_0_client/empty.s diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_http_0_3_0_client/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_http_0_3_0_client/wit_bindings.go index 2a316f5adb..44d53dadb6 100644 --- a/sdks/go/internal/wit/wasi_http_0_3_0_client/wit_bindings.go +++ b/sdks/go/golem/internal/wit/wasi_http_0_3_0_client/wit_bindings.go @@ -32,7 +32,7 @@ package wasi_http_0_3_0_client import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_http_0_3_0_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_http_0_3_0_types" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_types/empty.s b/sdks/go/golem/internal/wit/wasi_http_0_3_0_types/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_http_0_3_0_types/empty.s rename to sdks/go/golem/internal/wit/wasi_http_0_3_0_types/empty.s diff --git a/sdks/go/internal/wit/wasi_http_0_3_0_types/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_http_0_3_0_types/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/wasi_http_0_3_0_types/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_http_0_3_0_types/wit_bindings.go diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual/empty.s b/sdks/go/golem/internal/wit/wasi_keyvalue_eventual/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_keyvalue_eventual/empty.s rename to sdks/go/golem/internal/wit/wasi_keyvalue_eventual/empty.s diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_keyvalue_eventual/wit_bindings.go similarity index 97% rename from sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_keyvalue_eventual/wit_bindings.go index 9ceefecf02..4568363a14 100644 --- a/sdks/go/internal/wit/wasi_keyvalue_eventual/wit_bindings.go +++ b/sdks/go/golem/internal/wit/wasi_keyvalue_eventual/wit_bindings.go @@ -32,8 +32,8 @@ package wasi_keyvalue_eventual import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_types" - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_keyvalue_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_keyvalue_wasi_keyvalue_error" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/empty.s b/sdks/go/golem/internal/wit/wasi_keyvalue_eventual_batch/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_keyvalue_eventual_batch/empty.s rename to sdks/go/golem/internal/wit/wasi_keyvalue_eventual_batch/empty.s diff --git a/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go similarity index 97% rename from sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go index 8a4358322c..e44e354ea8 100644 --- a/sdks/go/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go +++ b/sdks/go/golem/internal/wit/wasi_keyvalue_eventual_batch/wit_bindings.go @@ -32,8 +32,8 @@ package wasi_keyvalue_eventual_batch import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_types" - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_keyvalue_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_keyvalue_wasi_keyvalue_error" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_keyvalue_types/empty.s b/sdks/go/golem/internal/wit/wasi_keyvalue_types/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_keyvalue_types/empty.s rename to sdks/go/golem/internal/wit/wasi_keyvalue_types/empty.s diff --git a/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_keyvalue_types/wit_bindings.go similarity index 99% rename from sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_keyvalue_types/wit_bindings.go index e2a25c2d2e..a4df6086a6 100644 --- a/sdks/go/internal/wit/wasi_keyvalue_types/wit_bindings.go +++ b/sdks/go/golem/internal/wit/wasi_keyvalue_types/wit_bindings.go @@ -32,7 +32,7 @@ package wasi_keyvalue_types import ( - "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_keyvalue_wasi_keyvalue_error" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" "runtime" diff --git a/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s b/sdks/go/golem/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s similarity index 100% rename from sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s rename to sdks/go/golem/internal/wit/wasi_keyvalue_wasi_keyvalue_error/empty.s diff --git a/sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go b/sdks/go/golem/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go similarity index 100% rename from sdks/go/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go rename to sdks/go/golem/internal/wit/wasi_keyvalue_wasi_keyvalue_error/wit_bindings.go diff --git a/sdks/go/internal/wit/wit_exports/empty.s b/sdks/go/golem/internal/wit/wit_exports/empty.s similarity index 100% rename from sdks/go/internal/wit/wit_exports/empty.s rename to sdks/go/golem/internal/wit/wit_exports/empty.s diff --git a/sdks/go/internal/wit/wit_exports/wit_exports.go b/sdks/go/golem/internal/wit/wit_exports/wit_exports.go similarity index 99% rename from sdks/go/internal/wit/wit_exports/wit_exports.go rename to sdks/go/golem/internal/wit/wit_exports/wit_exports.go index 83f14a9c9c..5d72b6885c 100644 --- a/sdks/go/internal/wit/wit_exports/wit_exports.go +++ b/sdks/go/golem/internal/wit/wit_exports/wit_exports.go @@ -32,12 +32,12 @@ package wit_exports import ( - "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_agent_guest" - "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_api_load_snapshot" - "github.com/golemcloud/golem/sdks/go/internal/exports/export_golem_api_save_snapshot" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_api_host" - "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + "github.com/golemcloud/golem/sdks/go/golem/internal/exports/export_golem_agent_guest" + "github.com/golemcloud/golem/sdks/go/golem/internal/exports/export_golem_api_load_snapshot" + "github.com/golemcloud/golem/sdks/go/golem/internal/exports/export_golem_api_save_snapshot" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_api_host" + "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witAsync "go.bytecodealliance.org/pkg/wit/async" witRuntime "go.bytecodealliance.org/pkg/wit/runtime" witTypes "go.bytecodealliance.org/pkg/wit/types" diff --git a/sdks/go/marshal.go b/sdks/go/golem/marshal.go similarity index 97% rename from sdks/go/marshal.go rename to sdks/go/golem/marshal.go index d4ad845256..789cf5a0fd 100644 --- a/sdks/go/marshal.go +++ b/sdks/go/golem/marshal.go @@ -18,7 +18,7 @@ import ( "fmt" "reflect" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" ) // Values cross the boundary as a schema-value-tree: a flat pool of nodes plus diff --git a/sdks/go/registry.go b/sdks/go/golem/registry.go similarity index 98% rename from sdks/go/registry.go rename to sdks/go/golem/registry.go index 6e7919c54e..a1c768155b 100644 --- a/sdks/go/registry.go +++ b/sdks/go/golem/registry.go @@ -18,8 +18,8 @@ import ( "fmt" "reflect" - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" ) // fieldInfo is one exported struct field, in declaration order. Declaration diff --git a/sdks/go/rpc.go b/sdks/go/golem/rpc.go similarity index 97% rename from sdks/go/rpc.go rename to sdks/go/golem/rpc.go index dc2c264085..26c7f05033 100644 --- a/sdks/go/rpc.go +++ b/sdks/go/golem/rpc.go @@ -19,9 +19,9 @@ import ( "reflect" "time" - host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" - clock "github.com/golemcloud/golem/sdks/go/internal/wit/wasi_clocks_0_3_0_system_clock" + host "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_host" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" + clock "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_clocks_0_3_0_system_clock" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/rpc_test.go b/sdks/go/golem/rpc_test.go similarity index 96% rename from sdks/go/rpc_test.go rename to sdks/go/golem/rpc_test.go index 1bdecaa3d9..929e1189b1 100644 --- a/sdks/go/rpc_test.go +++ b/sdks/go/golem/rpc_test.go @@ -6,9 +6,9 @@ import ( "strings" "testing" - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - host "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_host" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + host "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_host" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/schema.go b/sdks/go/golem/schema.go similarity index 97% rename from sdks/go/schema.go rename to sdks/go/golem/schema.go index 522c7a5ac2..b5f0d5087f 100644 --- a/sdks/go/schema.go +++ b/sdks/go/golem/schema.go @@ -18,8 +18,8 @@ import ( "reflect" "sort" - common "github.com/golemcloud/golem/sdks/go/internal/wit/golem_agent_common" - types "github.com/golemcloud/golem/sdks/go/internal/wit/golem_core_types" + common "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_agent_common" + types "github.com/golemcloud/golem/sdks/go/golem/internal/wit/golem_core_types" witTypes "go.bytecodealliance.org/pkg/wit/types" ) diff --git a/sdks/go/types.go b/sdks/go/golem/types.go similarity index 100% rename from sdks/go/types.go rename to sdks/go/golem/types.go diff --git a/sdks/go/variant.go b/sdks/go/golem/variant.go similarity index 100% rename from sdks/go/variant.go rename to sdks/go/golem/variant.go diff --git a/sdks/go/wit/deps/blobstore/blobstore.wit b/sdks/go/golem/wit/deps/blobstore/blobstore.wit similarity index 100% rename from sdks/go/wit/deps/blobstore/blobstore.wit rename to sdks/go/golem/wit/deps/blobstore/blobstore.wit diff --git a/sdks/go/wit/deps/blobstore/container.wit b/sdks/go/golem/wit/deps/blobstore/container.wit similarity index 100% rename from sdks/go/wit/deps/blobstore/container.wit rename to sdks/go/golem/wit/deps/blobstore/container.wit diff --git a/sdks/go/wit/deps/blobstore/types.wit b/sdks/go/golem/wit/deps/blobstore/types.wit similarity index 100% rename from sdks/go/wit/deps/blobstore/types.wit rename to sdks/go/golem/wit/deps/blobstore/types.wit diff --git a/sdks/go/wit/deps/blobstore/world.wit b/sdks/go/golem/wit/deps/blobstore/world.wit similarity index 100% rename from sdks/go/wit/deps/blobstore/world.wit rename to sdks/go/golem/wit/deps/blobstore/world.wit diff --git a/sdks/go/wit/deps/cli-0.2.6/cli.wit b/sdks/go/golem/wit/deps/cli-0.2.6/cli.wit similarity index 100% rename from sdks/go/wit/deps/cli-0.2.6/cli.wit rename to sdks/go/golem/wit/deps/cli-0.2.6/cli.wit diff --git a/sdks/go/wit/deps/cli/cli.wit b/sdks/go/golem/wit/deps/cli/cli.wit similarity index 100% rename from sdks/go/wit/deps/cli/cli.wit rename to sdks/go/golem/wit/deps/cli/cli.wit diff --git a/sdks/go/wit/deps/clocks-0.2.6/clocks.wit b/sdks/go/golem/wit/deps/clocks-0.2.6/clocks.wit similarity index 100% rename from sdks/go/wit/deps/clocks-0.2.6/clocks.wit rename to sdks/go/golem/wit/deps/clocks-0.2.6/clocks.wit diff --git a/sdks/go/wit/deps/clocks/clocks.wit b/sdks/go/golem/wit/deps/clocks/clocks.wit similarity index 100% rename from sdks/go/wit/deps/clocks/clocks.wit rename to sdks/go/golem/wit/deps/clocks/clocks.wit diff --git a/sdks/go/wit/deps/config/store.wit b/sdks/go/golem/wit/deps/config/store.wit similarity index 100% rename from sdks/go/wit/deps/config/store.wit rename to sdks/go/golem/wit/deps/config/store.wit diff --git a/sdks/go/wit/deps/config/world.wit b/sdks/go/golem/wit/deps/config/world.wit similarity index 100% rename from sdks/go/wit/deps/config/world.wit rename to sdks/go/golem/wit/deps/config/world.wit diff --git a/sdks/go/wit/deps/filesystem-0.2.6/filesystem.wit b/sdks/go/golem/wit/deps/filesystem-0.2.6/filesystem.wit similarity index 100% rename from sdks/go/wit/deps/filesystem-0.2.6/filesystem.wit rename to sdks/go/golem/wit/deps/filesystem-0.2.6/filesystem.wit diff --git a/sdks/go/wit/deps/filesystem/filesystem.wit b/sdks/go/golem/wit/deps/filesystem/filesystem.wit similarity index 100% rename from sdks/go/wit/deps/filesystem/filesystem.wit rename to sdks/go/golem/wit/deps/filesystem/filesystem.wit diff --git a/sdks/go/wit/deps/golem-1.x/golem-context.wit b/sdks/go/golem/wit/deps/golem-1.x/golem-context.wit similarity index 100% rename from sdks/go/wit/deps/golem-1.x/golem-context.wit rename to sdks/go/golem/wit/deps/golem-1.x/golem-context.wit diff --git a/sdks/go/wit/deps/golem-1.x/golem-host.wit b/sdks/go/golem/wit/deps/golem-1.x/golem-host.wit similarity index 100% rename from sdks/go/wit/deps/golem-1.x/golem-host.wit rename to sdks/go/golem/wit/deps/golem-1.x/golem-host.wit diff --git a/sdks/go/wit/deps/golem-1.x/golem-oplog-processor.wit b/sdks/go/golem/wit/deps/golem-1.x/golem-oplog-processor.wit similarity index 100% rename from sdks/go/wit/deps/golem-1.x/golem-oplog-processor.wit rename to sdks/go/golem/wit/deps/golem-1.x/golem-oplog-processor.wit diff --git a/sdks/go/wit/deps/golem-1.x/golem-oplog.wit b/sdks/go/golem/wit/deps/golem-1.x/golem-oplog.wit similarity index 100% rename from sdks/go/wit/deps/golem-1.x/golem-oplog.wit rename to sdks/go/golem/wit/deps/golem-1.x/golem-oplog.wit diff --git a/sdks/go/wit/deps/golem-1.x/golem-retry.wit b/sdks/go/golem/wit/deps/golem-1.x/golem-retry.wit similarity index 100% rename from sdks/go/wit/deps/golem-1.x/golem-retry.wit rename to sdks/go/golem/wit/deps/golem-1.x/golem-retry.wit diff --git a/sdks/go/wit/deps/golem-agent/common.wit b/sdks/go/golem/wit/deps/golem-agent/common.wit similarity index 100% rename from sdks/go/wit/deps/golem-agent/common.wit rename to sdks/go/golem/wit/deps/golem-agent/common.wit diff --git a/sdks/go/wit/deps/golem-agent/guest.wit b/sdks/go/golem/wit/deps/golem-agent/guest.wit similarity index 100% rename from sdks/go/wit/deps/golem-agent/guest.wit rename to sdks/go/golem/wit/deps/golem-agent/guest.wit diff --git a/sdks/go/wit/deps/golem-agent/host.wit b/sdks/go/golem/wit/deps/golem-agent/host.wit similarity index 100% rename from sdks/go/wit/deps/golem-agent/host.wit rename to sdks/go/golem/wit/deps/golem-agent/host.wit diff --git a/sdks/go/wit/deps/golem-core-v2/golem-core-v2.wit b/sdks/go/golem/wit/deps/golem-core-v2/golem-core-v2.wit similarity index 100% rename from sdks/go/wit/deps/golem-core-v2/golem-core-v2.wit rename to sdks/go/golem/wit/deps/golem-core-v2/golem-core-v2.wit diff --git a/sdks/go/wit/deps/golem-durability/golem-durability.wit b/sdks/go/golem/wit/deps/golem-durability/golem-durability.wit similarity index 100% rename from sdks/go/wit/deps/golem-durability/golem-durability.wit rename to sdks/go/golem/wit/deps/golem-durability/golem-durability.wit diff --git a/sdks/go/wit/deps/golem-quota/types.wit b/sdks/go/golem/wit/deps/golem-quota/types.wit similarity index 100% rename from sdks/go/wit/deps/golem-quota/types.wit rename to sdks/go/golem/wit/deps/golem-quota/types.wit diff --git a/sdks/go/wit/deps/golem-rdbms/ignite.wit b/sdks/go/golem/wit/deps/golem-rdbms/ignite.wit similarity index 100% rename from sdks/go/wit/deps/golem-rdbms/ignite.wit rename to sdks/go/golem/wit/deps/golem-rdbms/ignite.wit diff --git a/sdks/go/wit/deps/golem-rdbms/mysql.wit b/sdks/go/golem/wit/deps/golem-rdbms/mysql.wit similarity index 100% rename from sdks/go/wit/deps/golem-rdbms/mysql.wit rename to sdks/go/golem/wit/deps/golem-rdbms/mysql.wit diff --git a/sdks/go/wit/deps/golem-rdbms/postgres.wit b/sdks/go/golem/wit/deps/golem-rdbms/postgres.wit similarity index 100% rename from sdks/go/wit/deps/golem-rdbms/postgres.wit rename to sdks/go/golem/wit/deps/golem-rdbms/postgres.wit diff --git a/sdks/go/wit/deps/golem-rdbms/types.wit b/sdks/go/golem/wit/deps/golem-rdbms/types.wit similarity index 100% rename from sdks/go/wit/deps/golem-rdbms/types.wit rename to sdks/go/golem/wit/deps/golem-rdbms/types.wit diff --git a/sdks/go/wit/deps/golem-rdbms/world.wit b/sdks/go/golem/wit/deps/golem-rdbms/world.wit similarity index 100% rename from sdks/go/wit/deps/golem-rdbms/world.wit rename to sdks/go/golem/wit/deps/golem-rdbms/world.wit diff --git a/sdks/go/wit/deps/golem-secrets/reveal.wit b/sdks/go/golem/wit/deps/golem-secrets/reveal.wit similarity index 100% rename from sdks/go/wit/deps/golem-secrets/reveal.wit rename to sdks/go/golem/wit/deps/golem-secrets/reveal.wit diff --git a/sdks/go/wit/deps/golem-secrets/types.wit b/sdks/go/golem/wit/deps/golem-secrets/types.wit similarity index 100% rename from sdks/go/wit/deps/golem-secrets/types.wit rename to sdks/go/golem/wit/deps/golem-secrets/types.wit diff --git a/sdks/go/wit/deps/golem-tool/common.wit b/sdks/go/golem/wit/deps/golem-tool/common.wit similarity index 100% rename from sdks/go/wit/deps/golem-tool/common.wit rename to sdks/go/golem/wit/deps/golem-tool/common.wit diff --git a/sdks/go/wit/deps/golem-tool/guest.wit b/sdks/go/golem/wit/deps/golem-tool/guest.wit similarity index 100% rename from sdks/go/wit/deps/golem-tool/guest.wit rename to sdks/go/golem/wit/deps/golem-tool/guest.wit diff --git a/sdks/go/wit/deps/golem-tool/host.wit b/sdks/go/golem/wit/deps/golem-tool/host.wit similarity index 100% rename from sdks/go/wit/deps/golem-tool/host.wit rename to sdks/go/golem/wit/deps/golem-tool/host.wit diff --git a/sdks/go/wit/deps/golem-websocket/websocket.wit b/sdks/go/golem/wit/deps/golem-websocket/websocket.wit similarity index 100% rename from sdks/go/wit/deps/golem-websocket/websocket.wit rename to sdks/go/golem/wit/deps/golem-websocket/websocket.wit diff --git a/sdks/go/wit/deps/http-0.2.6/http.wit b/sdks/go/golem/wit/deps/http-0.2.6/http.wit similarity index 100% rename from sdks/go/wit/deps/http-0.2.6/http.wit rename to sdks/go/golem/wit/deps/http-0.2.6/http.wit diff --git a/sdks/go/wit/deps/http/http.wit b/sdks/go/golem/wit/deps/http/http.wit similarity index 100% rename from sdks/go/wit/deps/http/http.wit rename to sdks/go/golem/wit/deps/http/http.wit diff --git a/sdks/go/wit/deps/io-0.2.6/io.wit b/sdks/go/golem/wit/deps/io-0.2.6/io.wit similarity index 100% rename from sdks/go/wit/deps/io-0.2.6/io.wit rename to sdks/go/golem/wit/deps/io-0.2.6/io.wit diff --git a/sdks/go/wit/deps/keyvalue/caching.wit b/sdks/go/golem/wit/deps/keyvalue/caching.wit similarity index 100% rename from sdks/go/wit/deps/keyvalue/caching.wit rename to sdks/go/golem/wit/deps/keyvalue/caching.wit diff --git a/sdks/go/wit/deps/keyvalue/error.wit b/sdks/go/golem/wit/deps/keyvalue/error.wit similarity index 100% rename from sdks/go/wit/deps/keyvalue/error.wit rename to sdks/go/golem/wit/deps/keyvalue/error.wit diff --git a/sdks/go/wit/deps/keyvalue/eventual-batch.wit b/sdks/go/golem/wit/deps/keyvalue/eventual-batch.wit similarity index 100% rename from sdks/go/wit/deps/keyvalue/eventual-batch.wit rename to sdks/go/golem/wit/deps/keyvalue/eventual-batch.wit diff --git a/sdks/go/wit/deps/keyvalue/eventual.wit b/sdks/go/golem/wit/deps/keyvalue/eventual.wit similarity index 100% rename from sdks/go/wit/deps/keyvalue/eventual.wit rename to sdks/go/golem/wit/deps/keyvalue/eventual.wit diff --git a/sdks/go/wit/deps/keyvalue/handle-watch.wit b/sdks/go/golem/wit/deps/keyvalue/handle-watch.wit similarity index 100% rename from sdks/go/wit/deps/keyvalue/handle-watch.wit rename to sdks/go/golem/wit/deps/keyvalue/handle-watch.wit diff --git a/sdks/go/wit/deps/keyvalue/types.wit b/sdks/go/golem/wit/deps/keyvalue/types.wit similarity index 100% rename from sdks/go/wit/deps/keyvalue/types.wit rename to sdks/go/golem/wit/deps/keyvalue/types.wit diff --git a/sdks/go/wit/deps/keyvalue/world.wit b/sdks/go/golem/wit/deps/keyvalue/world.wit similarity index 100% rename from sdks/go/wit/deps/keyvalue/world.wit rename to sdks/go/golem/wit/deps/keyvalue/world.wit diff --git a/sdks/go/wit/deps/logging/logging.wit b/sdks/go/golem/wit/deps/logging/logging.wit similarity index 100% rename from sdks/go/wit/deps/logging/logging.wit rename to sdks/go/golem/wit/deps/logging/logging.wit diff --git a/sdks/go/wit/deps/random-0.2.6/random.wit b/sdks/go/golem/wit/deps/random-0.2.6/random.wit similarity index 100% rename from sdks/go/wit/deps/random-0.2.6/random.wit rename to sdks/go/golem/wit/deps/random-0.2.6/random.wit diff --git a/sdks/go/wit/deps/random/random.wit b/sdks/go/golem/wit/deps/random/random.wit similarity index 100% rename from sdks/go/wit/deps/random/random.wit rename to sdks/go/golem/wit/deps/random/random.wit diff --git a/sdks/go/wit/deps/sockets-0.2.6/sockets.wit b/sdks/go/golem/wit/deps/sockets-0.2.6/sockets.wit similarity index 100% rename from sdks/go/wit/deps/sockets-0.2.6/sockets.wit rename to sdks/go/golem/wit/deps/sockets-0.2.6/sockets.wit diff --git a/sdks/go/wit/deps/sockets/sockets.wit b/sdks/go/golem/wit/deps/sockets/sockets.wit similarity index 100% rename from sdks/go/wit/deps/sockets/sockets.wit rename to sdks/go/golem/wit/deps/sockets/sockets.wit diff --git a/sdks/go/wit/main.wit b/sdks/go/golem/wit/main.wit similarity index 100% rename from sdks/go/wit/main.wit rename to sdks/go/golem/wit/main.wit From a98f778fbea77807eb0782a4b5d6f2c79aad7c01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 18:01:57 +0200 Subject: [PATCH 012/149] cli: go language support (templates, build pipeline, sdk overrides) --- .agents/skills/sdk-development/SKILL.md | 23 ++----- cli/golem-cli/src/app/build/gen_bridge.rs | 6 ++ .../src/command_handler/app/template.rs | 37 ++++++++++ cli/golem-cli/src/command_handler/secret.rs | 3 + cli/golem-cli/src/model/app_raw.rs | 3 + cli/golem-cli/templates/go/common/AGENTS.md | 2 +- .../go/component/component-dir/go.mod._ | 2 +- .../tests/app/build_and_deploy_all.rs | 17 +++++ sdks/go/golem/LICENSE | 69 +++++++++++++++++++ 9 files changed, 144 insertions(+), 18 deletions(-) create mode 100644 sdks/go/golem/LICENSE diff --git a/.agents/skills/sdk-development/SKILL.md b/.agents/skills/sdk-development/SKILL.md index 4d207ee848..863c49fa34 100644 --- a/.agents/skills/sdk-development/SKILL.md +++ b/.agents/skills/sdk-development/SKILL.md @@ -168,8 +168,7 @@ import "github.com/golemcloud/golem/sdks/go/golem" // binds `golem` ``` A hyphenated name (`golem-go-sdk`) could not do this — hyphens are not valid Go identifiers, so it -would force an alias back. It also leaves `sdks/go/` free for siblings; `sdks/go/examples/` already -lives there. +would force an alias back. It also leaves `sdks/go/` free for siblings. Built with `componentize-go`, which is pinned per-project through Go's `tool` directive — never installed @@ -187,13 +186,8 @@ GOOS=wasip1 GOARCH=wasm go vet -unsafeptr=false -composites=false ./... Native tests cover everything that does not reach a host import. `empty.s` lets a generated package *compile* for the host, but the linker still needs a definition for any `//go:wasmimport` symbol that host-arch code actually **references** — so RPC calls, `Future`, and `ClientFor` can only run under -wasm. Those are covered by building an example component: - -```shell -cd sdks/go/examples/counter # or examples/orders -go tool componentize-go build -o counter.wasm -wasm-tools validate --features all counter.wasm -``` +wasm. Exercise those by creating an app with `golem app new … go` in a playground and building it; +the playground's `.golem-sdk-overrides` points the generated `go.mod` at this checkout. ### Regenerating WIT bindings @@ -227,16 +221,13 @@ Notes: semantic version tags"). - It does **not** collide with anything. There is no root `go.mod`, so the repo's `v1.5.x` release tags are invisible to Go, and no existing tag has the `sdks/go/golem/` shape. -- **Major version v2+** additionally requires a `/v2` suffix on the module path - (`github.com/golemcloud/golem/sdks/go/golem/v2`), tagged `sdks/go/golem/v2.0.0`. - Consumers using the default `GOPROXY` download only the `sdks/go/golem` subtree (~7 MB), not the whole repository. Only `GOPROXY=direct` clones the full repo, once per module cache. Repo size is not a concern: the mirror serves far larger monorepos of exactly this shape (aws-sdk-go-v2 is ~1.2 GB with subdirectory-tagged modules); the only hard limit is 500 MiB on the *module zip*. -- `sdks/go/examples/*` are siblings of the module with their own `go.mod`, so they are never part of - the published zip. -- The mirror stores a module permanently only if it can **detect a license**. Confirm licensing is - visible for the `sdks/go/golem` subtree before cutting the first tag. +- The mirror stores a module permanently only if it can **detect a license**, and Go has no metadata + field for it — `sdks/go/golem/LICENSE` is the only mechanism, so it must stay in the module subtree. + It carries the Golem Source License, matching the TS SDK packages. ### Local SDK overrides @@ -280,7 +271,7 @@ cargo make wit 2. SDK builds successfully 3. SDK tests pass 4. Agent template rebuilt (if TS SDK runtime code changed) -5. Example component still builds and validates (Go SDK — the only cover for host-call paths) +5. Go SDK: a generated app still builds (the only cover for host-call paths) 6. Dependent test components rebuilt (if any) 7. Platform tests pass (`cargo make worker-executor-tests` for Rust SDK, `cargo make cli-integration-tests` for TS SDK) 8. Code formatted and linted diff --git a/cli/golem-cli/src/app/build/gen_bridge.rs b/cli/golem-cli/src/app/build/gen_bridge.rs index cdcbe77987..240cbd7bbf 100644 --- a/cli/golem-cli/src/app/build/gen_bridge.rs +++ b/cli/golem-cli/src/app/build/gen_bridge.rs @@ -881,6 +881,12 @@ async fn gen_bridge_sdk_target( MoonBitBridgeMode::GuestWasmRpc, )?) } + // Go has no bridge generator yet; see + // GuestLanguage::supports_bridge_generation. + (GuestLanguage::Go, _) => bail!( + "bridge generation is not supported for {} yet", + GuestLanguage::Go.to_string().log_color_highlight() + ), (language, BridgeMode::Guest) => bail!( "internal bridge mode is not supported for {} yet", language.to_string().log_color_highlight() diff --git a/cli/golem-cli/src/command_handler/app/template.rs b/cli/golem-cli/src/command_handler/app/template.rs index fd27300c7e..26e2166216 100644 --- a/cli/golem-cli/src/command_handler/app/template.rs +++ b/cli/golem-cli/src/command_handler/app/template.rs @@ -820,6 +820,43 @@ impl TemplateHandler { }, }); } + GuestLanguage::Go => { + let target_root = application_path.join(new_component_dir); + + // Each Go component is its own module, so the whole module moves + // with the component: go.mod/go.sum plus every root .go file. + // (componentize-go only resolves the SDK's WIT when it runs from + // a module root, which is why the module cannot stay behind.) + for name in ["go.mod", "go.sum"] { + let source = application_path.join(name); + if source.exists() { + upgrade_plan.add(MultiComponentLayoutUpgradePlanStep::Move { + source, + target: target_root.join(name), + }); + } + } + + for entry in std::fs::read_dir(application_path)? { + let entry = entry?; + let path = entry.path(); + if path.is_file() && path.extension().and_then(|e| e.to_str()) == Some("go") { + let file_name = entry.file_name(); + upgrade_plan.add(MultiComponentLayoutUpgradePlanStep::Move { + source: path.clone(), + target: target_root.join(&file_name), + }); + } + } + + let build_dir = application_path.join("golem-temp"); + if build_dir.exists() { + upgrade_plan.add(MultiComponentLayoutUpgradePlanStep::Move { + source: build_dir, + target: target_root.join("golem-temp"), + }); + } + } GuestLanguage::MoonBit => { let target_root = application_path.join(new_component_dir); diff --git a/cli/golem-cli/src/command_handler/secret.rs b/cli/golem-cli/src/command_handler/secret.rs index daa511dd37..2705430e6e 100644 --- a/cli/golem-cli/src/command_handler/secret.rs +++ b/cli/golem-cli/src/command_handler/secret.rs @@ -259,6 +259,9 @@ impl SecretCommandHandler { GuestLanguage::TypeScript => SourceLanguage::TypeScript, GuestLanguage::Scala => SourceLanguage::Scala, GuestLanguage::MoonBit => SourceLanguage::MoonBit, + // No Go agent-id renderer/parser yet; Other(_) falls back to + // the TypeScript-style syntax. Matches model/deploy.rs. + GuestLanguage::Go => SourceLanguage::Other("go".to_string()), }; } } diff --git a/cli/golem-cli/src/model/app_raw.rs b/cli/golem-cli/src/model/app_raw.rs index acea46b456..20d8ee827f 100644 --- a/cli/golem-cli/src/model/app_raw.rs +++ b/cli/golem-cli/src/model/app_raw.rs @@ -1124,6 +1124,9 @@ impl BridgeSdks { GuestLanguage::TypeScript => self.ts.as_ref(), GuestLanguage::Scala => self.scala.as_ref(), GuestLanguage::MoonBit => self.moonbit.as_ref(), + // No bridge SDK targets for Go; see + // GuestLanguage::supports_bridge_generation. + GuestLanguage::Go => None, } } diff --git a/cli/golem-cli/templates/go/common/AGENTS.md b/cli/golem-cli/templates/go/common/AGENTS.md index 1b79edbb00..36bf8f1335 100644 --- a/cli/golem-cli/templates/go/common/AGENTS.md +++ b/cli/golem-cli/templates/go/common/AGENTS.md @@ -39,7 +39,7 @@ This project includes coding-agent skills in `.agents/skills/`. Load a skill whe > **Go support is new.** Go-specific skills (`golem-add-agent-go`, `golem-add-http-endpoint-go`, …) > are not available yet, so only the common skills are listed above. Until they land, use the Go SDK's -> own documentation and the examples under `sdks/go/examples`. +> own documentation. # Golem Application Development Guide (Go) diff --git a/cli/golem-cli/templates/go/component/component-dir/go.mod._ b/cli/golem-cli/templates/go/component/component-dir/go.mod._ index 6d2313e855..4c9e4ce5e0 100644 --- a/cli/golem-cli/templates/go/component/component-dir/go.mod._ +++ b/cli/golem-cli/templates/go/component/component-dir/go.mod._ @@ -4,7 +4,7 @@ // scanning the module and its dependencies for componentize-go.toml, and that // scan only resolves when it runs from the module root. A single app-level // module would fail with "failed to read path for WIT". -module component_name +module component-name go GOLEM_GO_DEP_GO_VERSION diff --git a/cli/golem-cli/tests/app/build_and_deploy_all.rs b/cli/golem-cli/tests/app/build_and_deploy_all.rs index aed87b45ef..9ca500001e 100644 --- a/cli/golem-cli/tests/app/build_and_deploy_all.rs +++ b/cli/golem-cli/tests/app/build_and_deploy_all.rs @@ -237,6 +237,23 @@ fn assert_multi_component_layout(app_root: &std::path::Path, language: GuestLang "expected multi-component MoonBit layout: moon.mod.json should remain at the app root" ); } + GuestLanguage::Go => { + // Unlike Scala/MoonBit, NOTHING stays behind: each Go component is + // its own module, and componentize-go only resolves the SDK's WIT + // when it runs from a module root. + assert!( + !app_root.join("go.mod").exists(), + "expected multi-component Go layout: go.mod should no longer be at the app root" + ); + let has_go_at_root = std::fs::read_dir(app_root) + .unwrap() + .filter_map(|e| e.ok()) + .any(|e| e.path().extension().and_then(|x| x.to_str()) == Some("go")); + assert!( + !has_go_at_root, + "expected multi-component Go layout: no *.go files should remain at the app root" + ); + } _ => {} } } diff --git a/sdks/go/golem/LICENSE b/sdks/go/golem/LICENSE new file mode 100644 index 0000000000..18740520d1 --- /dev/null +++ b/sdks/go/golem/LICENSE @@ -0,0 +1,69 @@ +# Golem Source License v1.0 +*last updated 19 May 2025* + +> **Notice:** This License is **not** an Open-Source license. Each version of Golem automatically becomes Open Source under the Change License on its Change Date. + +## 1 Definitions + +* **Licensor** - Golem Cloud, Inc., a Delaware corporation. +* **Licensed Work ("Golem")** - the source-available project published by the Licensor, copyright 2023-2025 Golem Cloud, Inc. +* **Change License** - Apache License, Version 2.0. +* **Change Date** - four (4) years after the first public release of each version of Golem under this License. +* **Affiliate** - any entity that, directly or indirectly, controls, is controlled by, or is under common control with a party, where "control" means ownership of more than fifty percent (50 %) of the voting interests or the power to direct management and policies. +* **You / Your** - any individual or entity exercising rights in the Licensed Work. +* **Third-Party Code-Execution Service** - any product or service (single-tenant *or* multi-tenant, branded or white-label) that enables an unaffiliated third party to deploy, upload, register, supply, or execute its own code, agents, workflows, or services on infrastructure You **own, operate, manage, or otherwise make available** and where that execution is powered, directly or indirectly, by the Licensed Work. Employees and contract staff acting on Your behalf are not third parties; **Affiliates are**. + +## 2 Grant of Rights & Use Restriction + +Subject to Sections 3-7 and 11, the Licensor grants You a worldwide, royalty-free right to copy, modify, create derivative works of, distribute, and make use of the Licensed Work **except** that, *before the Change Date*, You **may not** provide, sell, or resell the Licensed Work (or any work that incorporates it) as a Third-Party Code-Execution Service. + +It is irrelevant whether Golem's own APIs are exposed, wrapped, hidden, or embedded: if third-party code ultimately runs on Golem's execution engine, this prohibition applies. +For clarity, it is **permitted** to integrate Golem into applications where end users submit data or content that is processed by Golem, provided those users cannot upload or execute their own code. + +Any scheme, technical or contractual, intended to evade this Section 2 while retaining effective use of the Licensed Work is deemed a breach of this License. + +## 3 Automatic Conversion on Change Date + +On the applicable Change Date each version of Golem is simultaneously relicensed to You under the Change License, and the rights granted in Section 2 for that version terminate. + +## 4 Commercial License Option + +If Your use is outside the scope permitted in Section 2 prior to the Change Date, You must obtain a separate commercial license from the Licensor or cease all use of the Licensed Work. + +## 5 Distribution Requirements + +Every copy of the Licensed Work or any derivative You distribute must include (a) this License in its entirety *or* a URL pointing unmodified to this License, and (b) a conspicuous copyright notice for the Licensor. + +## 6 Version Scope + +This License applies independently to each version of Golem. Parameters such as the Change Date may differ for later versions. + +## 7 Termination + +Any breach of this License immediately terminates Your rights for the current and all prior versions of the Licensed Work. + +## 8 Trademarks + +No trademark, service mark, or logo of the Licensor or its Affiliates is licensed under this document. + +## 9 Patents + +No patent license is granted until the Licensed Work converts to the Change License, after which the patent terms (if any) of the Change License govern. + +## 10 Disclaimer of Warranty & Limitation of Liability + +THE LICENSED WORK IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND. TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE LICENSOR DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, AND SHALL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO THE LICENSED WORK OR THIS LICENSE. + +## 11 Contributor Assignment + +1. **Assignment.** By submitting a **Contribution** (an original work you own) for inclusion in the Licensed Work, you assign to the Licensor all right, title, and interest - including copyright and, to the extent permitted, moral rights - in that Contribution. +2. **License-back.** The Licensor grants you a perpetual, worldwide, royalty-free license to use, modify, and distribute your Contribution under this License. +3. **Patent Grant.** You grant the Licensor a perpetual, worldwide, royalty-free, irrevocable license - with rights to sublicense - to make, use, sell, offer for sale, import, and otherwise exploit (i) the Contribution and (ii) the Contribution in combination with the Licensed Work. +4. **Outbound Licensing.** The Licensor may distribute the Contribution under this License, the Change License, or any other license, provided the Contribution remains available under this License. +5. **No Obligation to Use.** The Licensor may accept, modify, or decline any Contribution at its sole discretion. +6. **Representations.** You represent that you have the legal authority to make the assignment and patent grant and that, to your knowledge, the Contribution does not infringe any third-party rights. +7. **Disclaimer.** Contributions are provided by you **"AS IS."** The disclaimer and limitation of liability in Section 10 apply equally to you and your Contributions. + +## 12 Governing Law & Miscellaneous + +This License is governed by the laws of the State of Delaware, USA, excluding its conflict-of-laws principles. The United Nations Convention on Contracts for the International Sale of Goods does not apply. If any provision is held unenforceable, it will be reformed to the minimum extent necessary; the remaining provisions will remain in full force. Failure to enforce any provision is not a waiver. This License constitutes the entire agreement between the parties concerning the Licensed Work and may be modified only by the Licensor in writing. \ No newline at end of file From 6929288f4df5aa5068674268140c97c88de240b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 18:43:14 +0200 Subject: [PATCH 013/149] go templates: tidy before build, drop httpApi until mount is supported --- .../templates/go/common-on-demand/golem.yaml | 4 ++++ cli/golem-cli/templates/go/default/golem.yaml | 14 ++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/cli/golem-cli/templates/go/common-on-demand/golem.yaml b/cli/golem-cli/templates/go/common-on-demand/golem.yaml index bb3a7056a0..c6916a38bd 100644 --- a/cli/golem-cli/templates/go/common-on-demand/golem.yaml +++ b/cli/golem-cli/templates/go/common-on-demand/golem.yaml @@ -6,6 +6,8 @@ componentTemplates: debug: default: true build: + - command: go mod tidy + dir: "{{ componentDir }}" - command: go tool componentize-go build -o "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" dir: "{{ componentDir }}" mkdirs: @@ -13,6 +15,8 @@ componentTemplates: componentWasm: "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" release: build: + - command: go mod tidy + dir: "{{ componentDir }}" - command: go tool componentize-go build -o "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" dir: "{{ componentDir }}" mkdirs: diff --git a/cli/golem-cli/templates/go/default/golem.yaml b/cli/golem-cli/templates/go/default/golem.yaml index 75e279b372..8c37e95118 100644 --- a/cli/golem-cli/templates/go/default/golem.yaml +++ b/cli/golem-cli/templates/go/default/golem.yaml @@ -1,8 +1,10 @@ # golem-app-manifest-header -httpApi: - deployments: - local: - - subdomain: app-name # resolves to app-name.localhost:9006 by default - agents: - CounterAgent: {} +# NOTE: no `httpApi` deployment here yet. +# +# Exposing an agent over HTTP requires the agent type to carry http-mount +# details, which the Go SDK does not emit yet (HTTP mount + endpoint metadata is +# still to come). Declaring a deployment without it fails at deploy time with +# HTTP_API_AGENT_TYPE_MISSING_HTTP_MOUNT. Invoke the agent directly meanwhile: +# +# golem agent invoke 'CounterAgent("c1")' increment From ceb6f7bff32add684becbfa24a505ba179d6c3d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 18:58:43 +0200 Subject: [PATCH 014/149] go templates: put build output in the app-root golem-temp --- .../templates/go/common-on-demand/golem.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/golem-cli/templates/go/common-on-demand/golem.yaml b/cli/golem-cli/templates/go/common-on-demand/golem.yaml index c6916a38bd..03fe238878 100644 --- a/cli/golem-cli/templates/go/common-on-demand/golem.yaml +++ b/cli/golem-cli/templates/go/common-on-demand/golem.yaml @@ -8,17 +8,17 @@ componentTemplates: build: - command: go mod tidy dir: "{{ componentDir }}" - - command: go tool componentize-go build -o "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" + - command: go tool componentize-go build -o "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" dir: "{{ componentDir }}" mkdirs: - - "{{ componentDir }}/golem-temp" - componentWasm: "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" + - "{{ golemTempDir }}/agents" + componentWasm: "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" release: build: - command: go mod tidy dir: "{{ componentDir }}" - - command: go tool componentize-go build -o "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" + - command: go tool componentize-go build -o "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" dir: "{{ componentDir }}" mkdirs: - - "{{ componentDir }}/golem-temp" - componentWasm: "{{ componentDir }}/golem-temp/{{ componentName | to_snake_case }}.wasm" + - "{{ golemTempDir }}/agents" + componentWasm: "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" From aa9f9fe19cbdc61be9db3c84ebf7ca6e5ba187a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 19:07:25 +0200 Subject: [PATCH 015/149] go templates: drop the comment-only agent golem.yaml --- cli/golem-cli/templates/go/common/AGENTS.md | 4 ++++ cli/golem-cli/templates/go/default/golem.yaml | 10 ---------- 2 files changed, 4 insertions(+), 10 deletions(-) delete mode 100644 cli/golem-cli/templates/go/default/golem.yaml diff --git a/cli/golem-cli/templates/go/common/AGENTS.md b/cli/golem-cli/templates/go/common/AGENTS.md index 36bf8f1335..1f18a34748 100644 --- a/cli/golem-cli/templates/go/common/AGENTS.md +++ b/cli/golem-cli/templates/go/common/AGENTS.md @@ -119,6 +119,10 @@ Wire names come from the SDK's declarations, not from Go identifiers: - `func main() {}` must exist and can be empty — the SDK wires the component exports from its `init()`. - Multiple agents can coexist in one component; a worker is initialized as exactly one of them. - Do NOT edit files under `internal/wit/` in the SDK — they are generated. +- **No `httpApi` deployments yet.** Exposing an agent over HTTP needs the agent type to carry + http-mount details, which the Go SDK does not emit yet. Declaring a deployment without it fails + with `HTTP_API_AGENT_TYPE_MISSING_HTTP_MOUNT`. Invoke agents directly meanwhile: + `golem agent invoke 'CounterAgent("c1")' increment`. ## Coding Convention diff --git a/cli/golem-cli/templates/go/default/golem.yaml b/cli/golem-cli/templates/go/default/golem.yaml deleted file mode 100644 index 8c37e95118..0000000000 --- a/cli/golem-cli/templates/go/default/golem.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# golem-app-manifest-header - -# NOTE: no `httpApi` deployment here yet. -# -# Exposing an agent over HTTP requires the agent type to carry http-mount -# details, which the Go SDK does not emit yet (HTTP mount + endpoint metadata is -# still to come). Declaring a deployment without it fails at deploy time with -# HTTP_API_AGENT_TYPE_MISSING_HTTP_MOUNT. Invoke the agent directly meanwhile: -# -# golem agent invoke 'CounterAgent("c1")' increment From 2e516e6acbd50fa98201c749d11bac4b6c866279 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Thu, 23 Jul 2026 19:09:41 +0200 Subject: [PATCH 016/149] go promotion: leave golem-temp at the app root --- cli/golem-cli/src/command_handler/app/template.rs | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/cli/golem-cli/src/command_handler/app/template.rs b/cli/golem-cli/src/command_handler/app/template.rs index 26e2166216..fad005dd71 100644 --- a/cli/golem-cli/src/command_handler/app/template.rs +++ b/cli/golem-cli/src/command_handler/app/template.rs @@ -849,13 +849,8 @@ impl TemplateHandler { } } - let build_dir = application_path.join("golem-temp"); - if build_dir.exists() { - upgrade_plan.add(MultiComponentLayoutUpgradePlanStep::Move { - source: build_dir, - target: target_root.join("golem-temp"), - }); - } + // golem-temp deliberately NOT moved: Go build output goes to the + // app-root golem-temp (like TS and Scala), so it stays put. } GuestLanguage::MoonBit => { let target_root = application_path.join(new_component_dir); From 8c776a2ad2a53fa3418456dff39d20c9c4fa2065 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Fri, 24 Jul 2026 13:20:17 +0200 Subject: [PATCH 017/149] go cli: dep-install mechanism, real presets, go.mod fix step, tool checks --- cli/golem-cli/src/app/build/check/go.rs | 67 +++++ cli/golem-cli/src/app/build/check/mod.rs | 6 + .../src/app/build/check/requirements.rs | 31 ++- cli/golem-cli/src/app/build/command.rs | 86 ++++++- .../src/app/build/task_result_marker.rs | 24 ++ cli/golem-cli/src/app/edit/go_mod.rs | 236 ++++++++++++++++++ cli/golem-cli/src/app/edit/mod.rs | 1 + cli/golem-cli/src/sdk_overrides.rs | 4 + .../templates/go/common-on-demand/golem.yaml | 28 ++- cli/golem-cli/templates/go/common/AGENTS.md | 4 - .../go/component/component-dir/go.mod._ | 7 +- 11 files changed, 471 insertions(+), 23 deletions(-) create mode 100644 cli/golem-cli/src/app/build/check/go.rs create mode 100644 cli/golem-cli/src/app/edit/go_mod.rs diff --git a/cli/golem-cli/src/app/build/check/go.rs b/cli/golem-cli/src/app/build/check/go.rs new file mode 100644 index 0000000000..7d4cd9e726 --- /dev/null +++ b/cli/golem-cli/src/app/build/check/go.rs @@ -0,0 +1,67 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +use crate::app::build::check::DependencyFixStep; +use crate::app::context::BuildContext; +use crate::app::edit; +use crate::fs; +use crate::model::GuestLanguage; +use crate::sdk_overrides::{GO_SDK_MODULE, SdkOverrides}; + +/// Reconcile each Go component's `go.mod` SDK dependency with the active SDK +/// overrides — mirrors the Rust `Cargo.toml` and TS `package.json` fix steps, so +/// a committed Go app picks up `GOLEM_GO_PATH`/`GOLEM_GO_VERSION` on build rather +/// than only at `golem new`. +/// +/// Simpler than Rust: Go has no workspace concept, so each component is a +/// standalone module edited independently. `go.mod` sits exactly at the +/// component dir in both flat (`dir: ""` → app root) and multi-component layouts. +pub(super) fn plan_go_mod_fix_steps( + ctx: &BuildContext<'_>, + overrides: &SdkOverrides, +) -> anyhow::Result> { + let version = overrides.go_sdk_dep(); + let replace_path = overrides.go_sdk_path.as_deref(); + + let mut steps = Vec::new(); + for component_name in ctx.application_context().selected_component_names() { + let component = ctx.application().component(component_name); + if component.guess_language() != Some(GuestLanguage::Go) { + continue; + } + + let go_mod_path = component.component_dir().join("go.mod"); + if !go_mod_path.exists() { + continue; + } + + let original = fs::read_to_string(&go_mod_path)?; + let new = edit::go_mod::reconcile_sdk_dependency( + &original, + GO_SDK_MODULE, + &version, + replace_path, + ); + + if new != original { + steps.push(DependencyFixStep { + path: go_mod_path, + current: original, + new, + }); + } + } + + Ok(steps) +} diff --git a/cli/golem-cli/src/app/build/check/mod.rs b/cli/golem-cli/src/app/build/check/mod.rs index d48569328d..c01dfbb6f3 100644 --- a/cli/golem-cli/src/app/build/check/mod.rs +++ b/cli/golem-cli/src/app/build/check/mod.rs @@ -13,6 +13,7 @@ // limitations under the License. mod agents; +mod go; mod requirements; mod rust; mod skills; @@ -176,6 +177,11 @@ pub(crate) fn plan_dependency_fixes( plan.steps.extend(rust_steps); } + if selected_languages.contains(&GuestLanguage::Go) { + let go_steps = go::plan_go_mod_fix_steps(ctx, overrides)?; + plan.steps.extend(go_steps); + } + if let Some(step) = agents::plan_agents_md_fix_step(ctx, &selected_languages)? { plan.steps.push(step); } diff --git a/cli/golem-cli/src/app/build/check/requirements.rs b/cli/golem-cli/src/app/build/check/requirements.rs index 2d7ab57fd4..120faff056 100644 --- a/cli/golem-cli/src/app/build/check/requirements.rs +++ b/cli/golem-cli/src/app/build/check/requirements.rs @@ -166,16 +166,29 @@ const MOONBIT_TOOL_REQUIREMENTS: &[ToolRequirement] = &[ // project's `tool` directive (so it is pinned per-app, never installed // globally), and it downloads the patched Go it needs into its own cache // side-by-side with the user's installation. -const GO_TOOL_REQUIREMENTS: &[ToolRequirement] = &[ToolRequirement { - key: "go", - name: "Go", - check: ToolRequirementCheck::CommandVersion { - command: "go", - args: &["version"], +const GO_TOOL_REQUIREMENTS: &[ToolRequirement] = &[ + ToolRequirement { + key: "go", + name: "Go", + check: ToolRequirementCheck::CommandVersion { + command: "go", + args: &["version"], + }, + version_range: Some(VersionRange::at_least(versions::build_tool::GO_MIN)), + install_hint: "Install Go 1.25.5 or newer: https://go.dev/dl/", }, - version_range: Some(VersionRange::at_least(versions::build_tool::GO_MIN)), - install_hint: "Install Go 1.25.5 or newer: https://go.dev/dl/", -}]; + // Used by the release preset's `wasm-tools strip` step. + ToolRequirement { + key: "wasm-tools", + name: "wasm-tools", + check: ToolRequirementCheck::CommandVersion { + command: "wasm-tools", + args: &["--version"], + }, + version_range: Some(VersionRange::at_least(versions::build_tool::WASM_TOOLS_MIN)), + install_hint: "Install wasm-tools: https://github.com/bytecodealliance/wasm-tools", + }, +]; pub fn tool_requirements_for_language(language: GuestLanguage) -> &'static [ToolRequirement] { match language { diff --git a/cli/golem-cli/src/app/build/command.rs b/cli/golem-cli/src/app/build/command.rs index cd89feb566..3db50e13ca 100644 --- a/cli/golem-cli/src/app/build/command.rs +++ b/cli/golem-cli/src/app/build/command.rs @@ -14,8 +14,9 @@ use crate::app::build::task_result_marker::{ GenerateQuickJSCrateCommandMarkerHash, GenerateQuickJSDTSCommandMarkerHash, - InjectToPrebuiltQuickJsCommandMarkerHash, MoonInstallDepsMarkerHash, NpmInstallDepsMarkerHash, - PreinitializeJsCommandMarkerHash, ResolvedExternalCommandMarkerHash, TaskResultMarker, + GoModDepsMarkerHash, InjectToPrebuiltQuickJsCommandMarkerHash, MoonInstallDepsMarkerHash, + NpmInstallDepsMarkerHash, PreinitializeJsCommandMarkerHash, ResolvedExternalCommandMarkerHash, + TaskResultMarker, }; use crate::app::build::up_to_date_check::new_task_up_to_date_check; use crate::app::context::BuildContext; @@ -471,6 +472,22 @@ pub async fn ensure_common_deps_for_tool( }) .await } + "go" => { + // Each Go component is its own module, rooted exactly at build_dir + // (the componentDir), so there is no ancestor walk like moon needs. + let go_mod_path = build_dir.join("go.mod"); + if !go_mod_path.exists() { + return Ok(()); + } + + let module_root = build_dir.to_path_buf(); + let ensure_key = format!("go:{}", module_root.display()); + ctx.tools_with_ensured_common_deps() + .ensure_common_deps_for_tool_once(&ensure_key, || async { + ensure_go_dependencies(ctx, &module_root).await + }) + .await + } _ => Ok(()), } } @@ -604,6 +621,71 @@ async fn run_moon_install(app_root_dir: &Path) -> anyhow::Result<()> { .await } +async fn ensure_go_dependencies( + ctx: &BuildContext<'_>, + module_root: &Path, +) -> anyhow::Result<()> { + let go_mod_path = module_root.join("go.mod"); + let go_sum_path = module_root.join("go.sum"); + + let go_mod_hash = blake3::hash(&std::fs::read(&go_mod_path)?) + .to_hex() + .to_string(); + let go_sum_hash = if go_sum_path.exists() { + Some( + blake3::hash(&std::fs::read(&go_sum_path)?) + .to_hex() + .to_string(), + ) + } else { + None + }; + + let marker = TaskResultMarker::new( + &ctx.application().task_result_marker_dir(), + GoModDepsMarkerHash { + go_module_root: module_root, + go_mod_hash: &go_mod_hash, + go_sum_hash: go_sum_hash.as_deref(), + }, + )?; + + // Up to date only if go.sum exists too: a fresh module has a go.mod but no + // go.sum, and componentize-go refuses to build without it. + if marker.is_up_to_date() && go_sum_path.exists() { + return Ok(()); + } + + if go_sum_path.exists() { + log_warn_action( + "Detected", + format!( + "dependency changes, executing {}", + "go mod tidy".log_color_highlight() + ), + ); + } else { + log_warn_action( + "Detected", + format!( + "missing {}, executing {}", + "go.sum".log_color_highlight(), + "go mod tidy".log_color_highlight() + ), + ); + } + + marker.result(run_go_mod_tidy(module_root).await) +} + +async fn run_go_mod_tidy(module_root: &Path) -> anyhow::Result<()> { + Command::new(which("go")?) + .args(["mod", "tidy"]) + .current_dir(module_root) + .stream_and_run("go") + .await +} + fn configure_external_command_env(command: &mut Command, executable: &str, ctx: &BuildContext<'_>) { let executable_name = Path::new(executable) .file_name() diff --git a/cli/golem-cli/src/app/build/task_result_marker.rs b/cli/golem-cli/src/app/build/task_result_marker.rs index 32a7a10241..fd6dadfcc0 100644 --- a/cli/golem-cli/src/app/build/task_result_marker.rs +++ b/cli/golem-cli/src/app/build/task_result_marker.rs @@ -124,6 +124,30 @@ impl TaskResultMarkerHashSource for MoonInstallDepsMarkerHash<'_> { } } +#[derive(Serialize)] +pub struct GoModDepsMarkerHash<'a> { + pub go_module_root: &'a Path, + pub go_mod_hash: &'a str, + pub go_sum_hash: Option<&'a str>, +} + +impl TaskResultMarkerHashSource for GoModDepsMarkerHash<'_> { + fn kind() -> &'static str { + "GoModDepsMarkerHash" + } + + fn id(&self) -> anyhow::Result> { + Ok(Some(format!( + "go-mod-deps:{}", + self.go_module_root.display() + ))) + } + + fn source(&self) -> anyhow::Result { + Ok(HashFromString(serde_json::to_string(self)?)) + } +} + impl TaskResultMarkerHashSource for ResolvedExternalCommandMarkerHash<'_> { fn kind() -> &'static str { "ResolvedExternalCommandMarkerHash" diff --git a/cli/golem-cli/src/app/edit/go_mod.rs b/cli/golem-cli/src/app/edit/go_mod.rs new file mode 100644 index 0000000000..cfcb4efca2 --- /dev/null +++ b/cli/golem-cli/src/app/edit/go_mod.rs @@ -0,0 +1,236 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +//! Minimal, formatting-tolerant `go.mod` editing for reconciling the Golem SDK +//! dependency with the active SDK overrides on every build (mirrors the Rust +//! `Cargo.toml` and TS `package.json` fix steps). +//! +//! Only two things are touched, both anchored on the SDK module path: +//! - the `require` version for the SDK module (single-line or block form); +//! - a top-level `replace => ` directive — present when a local +//! SDK path override is active, absent otherwise. +//! +//! `go mod tidy` reformats `go.mod` (block requires, tabs), so matching is by +//! module path and structure, never exact text. + +/// Reconcile the SDK dependency in `content`: +/// - set the SDK module's `require` version to `version`; +/// - if `replace_path` is `Some`, ensure `replace => `; +/// - if `None`, remove any such replace directive. +/// +/// Returns the updated `go.mod` text. A trailing newline is preserved/ensured. +pub fn reconcile_sdk_dependency( + content: &str, + module: &str, + version: &str, + replace_path: Option<&str>, +) -> String { + let mut lines: Vec = content.lines().map(|l| l.to_string()).collect(); + + set_require_version(&mut lines, module, version); + set_replace_directive(&mut lines, module, replace_path); + + let mut out = lines.join("\n"); + if !out.ends_with('\n') { + out.push('\n'); + } + out +} + +/// A `require` entry for `module` — either `require ` (single) or +/// ` ` inside a `require (…)` block — has its version set. A require +/// line has no `=>` (which distinguishes it from a `replace` line that also +/// names the module). +fn set_require_version(lines: &mut [String], module: &str, version: &str) { + let mut in_require_block = false; + for line in lines.iter_mut() { + let trimmed = line.trim(); + + if !in_require_block && trimmed.starts_with("require (") { + in_require_block = true; + continue; + } + if in_require_block && trimmed == ")" { + in_require_block = false; + continue; + } + + if trimmed.contains("=>") { + continue; // replace line, not require + } + + // Single-line: `require ` + if let Some(rest) = trimmed.strip_prefix("require ") { + if first_token(rest) == Some(module) { + let indent = leading_ws(line); + let suffix = trailing_comment(rest); + *line = format!("{indent}require {module} {version}{suffix}"); + } + continue; + } + + // Block entry: ` ` + if in_require_block && first_token(trimmed) == Some(module) { + let indent = leading_ws(line); + let suffix = trailing_comment(trimmed); + *line = format!("{indent}{module} {version}{suffix}"); + } + } +} + +/// Ensure or remove a top-level `replace => ` directive. +/// Replace *blocks* are also handled: an entry ` => ` inside a +/// `replace (…)` block is updated or removed. +fn set_replace_directive(lines: &mut Vec, module: &str, replace_path: Option<&str>) { + let mut updated = false; + let mut in_replace_block = false; + let mut removals = Vec::new(); + + for (idx, line) in lines.iter_mut().enumerate() { + let trimmed = line.trim(); + + if !in_replace_block && trimmed.starts_with("replace (") { + in_replace_block = true; + continue; + } + if in_replace_block && trimmed == ")" { + in_replace_block = false; + continue; + } + + let is_single = trimmed + .strip_prefix("replace ") + .map(|rest| replace_lhs_is(rest, module)) + .unwrap_or(false); + let is_block_entry = in_replace_block && replace_lhs_is(trimmed, module); + + if is_single || is_block_entry { + match replace_path { + Some(path) if is_single => { + *line = format!("replace {module} => {path}"); + updated = true; + } + Some(path) => { + let indent = leading_ws(line); + *line = format!("{indent}{module} => {path}"); + updated = true; + } + None => removals.push(idx), + } + } + } + + for idx in removals.into_iter().rev() { + lines.remove(idx); + } + + // Append a fresh directive if wanted but none existed. + if let Some(path) = replace_path { + if !updated { + if !lines.last().map(|l| l.trim().is_empty()).unwrap_or(false) { + lines.push(String::new()); + } + lines.push(format!("replace {module} => {path}")); + } + } +} + +/// True if the text before `=>` names exactly `module` (ignoring an optional +/// version token, e.g. `replace mod v1 => …`). +fn replace_lhs_is(rest: &str, module: &str) -> bool { + match rest.split("=>").next() { + Some(lhs) => lhs.split_whitespace().next() == Some(module), + None => false, + } +} + +fn first_token(s: &str) -> Option<&str> { + s.split_whitespace().next() +} + +fn leading_ws(line: &str) -> &str { + &line[..line.len() - line.trim_start().len()] +} + +/// The trailing `// …` comment of a require entry (e.g. ` // indirect`), +/// including its leading space, or empty. +fn trailing_comment(entry: &str) -> String { + match entry.find("//") { + Some(pos) => format!(" {}", entry[pos..].trim_end()), + None => String::new(), + } +} + +#[cfg(test)] +mod tests { + use super::*; + use test_r::test; + + const MOD: &str = "github.com/golemcloud/golem/sdks/go/golem"; + + #[test] + fn sets_version_in_a_block_and_adds_replace() { + let src = format!( + "module app\n\ngo 1.25.5\n\nrequire (\n\t{MOD} v0.0.0\n\tgithub.com/bytecodealliance/componentize-go v0.4.0\n)\n\ntool github.com/bytecodealliance/componentize-go\n" + ); + let out = reconcile_sdk_dependency(&src, MOD, "v0.0.0", Some("/abs/sdks/go/golem")); + assert!(out.contains(&format!("\t{MOD} v0.0.0\n"))); + assert!(out.contains(&format!("replace {MOD} => /abs/sdks/go/golem"))); + // componentize-go untouched + assert!(out.contains("github.com/bytecodealliance/componentize-go v0.4.0")); + } + + #[test] + fn updates_version_single_line() { + let src = format!("module app\n\nrequire {MOD} v0.0.0\n"); + let out = reconcile_sdk_dependency(&src, MOD, "v0.1.0", None); + assert!(out.contains(&format!("require {MOD} v0.1.0\n"))); + } + + #[test] + fn removes_replace_when_switching_to_version() { + let src = format!( + "module app\n\nrequire {MOD} v0.0.0\n\nreplace {MOD} => /abs/sdks/go/golem\n" + ); + let out = reconcile_sdk_dependency(&src, MOD, "v0.1.0", None); + assert!(!out.contains("replace")); + assert!(out.contains(&format!("require {MOD} v0.1.0"))); + } + + #[test] + fn updates_existing_replace_path() { + let src = format!("module app\n\nrequire {MOD} v0.0.0\n\nreplace {MOD} => /old/path\n"); + let out = reconcile_sdk_dependency(&src, MOD, "v0.0.0", Some("/new/path")); + assert!(out.contains(&format!("replace {MOD} => /new/path"))); + assert!(!out.contains("/old/path")); + } + + #[test] + fn preserves_indirect_comment_on_block_entries() { + let src = format!( + "module app\n\nrequire (\n\t{MOD} v0.0.0\n\tgolang.org/x/sys v0.37.0 // indirect\n)\n" + ); + let out = reconcile_sdk_dependency(&src, MOD, "v0.2.0", None); + assert!(out.contains("golang.org/x/sys v0.37.0 // indirect")); + assert!(out.contains(&format!("{MOD} v0.2.0"))); + } + + #[test] + fn idempotent_when_already_reconciled() { + let src = format!("module app\n\nrequire {MOD} v0.0.0\n\nreplace {MOD} => /p\n"); + let once = reconcile_sdk_dependency(&src, MOD, "v0.0.0", Some("/p")); + let twice = reconcile_sdk_dependency(&once, MOD, "v0.0.0", Some("/p")); + assert_eq!(once, twice); + } +} diff --git a/cli/golem-cli/src/app/edit/mod.rs b/cli/golem-cli/src/app/edit/mod.rs index fb95c7366d..7882598c79 100644 --- a/cli/golem-cli/src/app/edit/mod.rs +++ b/cli/golem-cli/src/app/edit/mod.rs @@ -16,6 +16,7 @@ pub mod agents_md; pub mod build_sbt; pub mod cargo_toml; pub mod gitignore; +pub mod go_mod; pub mod golem_yaml; pub mod json; pub mod main_rs; diff --git a/cli/golem-cli/src/sdk_overrides.rs b/cli/golem-cli/src/sdk_overrides.rs index 37342c3d78..3473792679 100644 --- a/cli/golem-cli/src/sdk_overrides.rs +++ b/cli/golem-cli/src/sdk_overrides.rs @@ -696,6 +696,8 @@ mod tests { scala_sdk_version: None, moonbit_sdk_path: None, moonbit_sdk_version: None, + go_sdk_path: None, + go_sdk_version: None, }; assert_eq!( @@ -715,6 +717,8 @@ mod tests { scala_sdk_version: None, moonbit_sdk_path: None, moonbit_sdk_version: None, + go_sdk_path: None, + go_sdk_version: None, } .to_env_vars(); diff --git a/cli/golem-cli/templates/go/common-on-demand/golem.yaml b/cli/golem-cli/templates/go/common-on-demand/golem.yaml index 03fe238878..a514d6ed6b 100644 --- a/cli/golem-cli/templates/go/common-on-demand/golem.yaml +++ b/cli/golem-cli/templates/go/common-on-demand/golem.yaml @@ -3,22 +3,40 @@ componentTemplates: go: presets: + # debug keeps the name/DWARF custom sections for better diagnostics. + # Dependency resolution (go mod tidy) is NOT a build step: the CLI runs it + # automatically before the build, like `npm install` (see + # ensure_common_deps_for_tool). debug: default: true build: - - command: go mod tidy - dir: "{{ componentDir }}" - command: go tool componentize-go build -o "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" dir: "{{ componentDir }}" mkdirs: - "{{ golemTempDir }}/agents" + sources: + - "{{ componentDir }}" + targets: + - "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" componentWasm: "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" + # release strips the `name` custom sections (Go function names, ~2% of the + # component) for a smaller artifact that ships no internal symbol names, + # while keeping component-name/producers metadata the platform uses. + # componentize-go exposes no optimization levels, so this is the real + # debug/release difference. release: build: - - command: go mod tidy - dir: "{{ componentDir }}" - - command: go tool componentize-go build -o "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" + - command: go tool componentize-go build -o "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.debug.wasm" dir: "{{ componentDir }}" mkdirs: - "{{ golemTempDir }}/agents" + sources: + - "{{ componentDir }}" + targets: + - "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.debug.wasm" + - command: wasm-tools strip -d '^name$' "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.debug.wasm" -o "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" + sources: + - "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.debug.wasm" + targets: + - "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" componentWasm: "{{ golemTempDir }}/agents/{{ component_name | to_snake_case }}.wasm" diff --git a/cli/golem-cli/templates/go/common/AGENTS.md b/cli/golem-cli/templates/go/common/AGENTS.md index 1f18a34748..36bf8f1335 100644 --- a/cli/golem-cli/templates/go/common/AGENTS.md +++ b/cli/golem-cli/templates/go/common/AGENTS.md @@ -119,10 +119,6 @@ Wire names come from the SDK's declarations, not from Go identifiers: - `func main() {}` must exist and can be empty — the SDK wires the component exports from its `init()`. - Multiple agents can coexist in one component; a worker is initialized as exactly one of them. - Do NOT edit files under `internal/wit/` in the SDK — they are generated. -- **No `httpApi` deployments yet.** Exposing an agent over HTTP needs the agent type to carry - http-mount details, which the Go SDK does not emit yet. Declaring a deployment without it fails - with `HTTP_API_AGENT_TYPE_MISSING_HTTP_MOUNT`. Invoke agents directly meanwhile: - `golem agent invoke 'CounterAgent("c1")' increment`. ## Coding Convention diff --git a/cli/golem-cli/templates/go/component/component-dir/go.mod._ b/cli/golem-cli/templates/go/component/component-dir/go.mod._ index 4c9e4ce5e0..1a1be1acad 100644 --- a/cli/golem-cli/templates/go/component/component-dir/go.mod._ +++ b/cli/golem-cli/templates/go/component/component-dir/go.mod._ @@ -8,9 +8,10 @@ module component-name go GOLEM_GO_DEP_GO_VERSION -require GOLEM_GO_DEP_SDK_MODULE GOLEM_GO_DEP_SDK_VERSION - -require github.com/bytecodealliance/componentize-go GOLEM_GO_DEP_COMPONENTIZE_GO_VERSION +require ( + GOLEM_GO_DEP_SDK_MODULE GOLEM_GO_DEP_SDK_VERSION + github.com/bytecodealliance/componentize-go GOLEM_GO_DEP_COMPONENTIZE_GO_VERSION +) // componentize-go is pinned per-app through this directive rather than installed // globally, so `go tool componentize-go` always runs the version this app was From 8af09e95ed040c04f253d577c1663a2d6b9d385e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Fri, 24 Jul 2026 13:31:41 +0200 Subject: [PATCH 018/149] go cli: cache go mod tidy against post-tidy state; avoid spurious go.mod diff --- cli/golem-cli/src/app/build/command.rs | 54 +++++++++++++++----------- cli/golem-cli/src/sdk_overrides.rs | 8 +++- 2 files changed, 38 insertions(+), 24 deletions(-) diff --git a/cli/golem-cli/src/app/build/command.rs b/cli/golem-cli/src/app/build/command.rs index 3db50e13ca..de4751528c 100644 --- a/cli/golem-cli/src/app/build/command.rs +++ b/cli/golem-cli/src/app/build/command.rs @@ -625,34 +625,39 @@ async fn ensure_go_dependencies( ctx: &BuildContext<'_>, module_root: &Path, ) -> anyhow::Result<()> { - let go_mod_path = module_root.join("go.mod"); let go_sum_path = module_root.join("go.sum"); - - let go_mod_hash = blake3::hash(&std::fs::read(&go_mod_path)?) - .to_hex() - .to_string(); - let go_sum_hash = if go_sum_path.exists() { - Some( - blake3::hash(&std::fs::read(&go_sum_path)?) - .to_hex() - .to_string(), + let marker_dir = ctx.application().task_result_marker_dir(); + + // `go mod tidy` rewrites go.mod (indirect requires, block form) and writes + // go.sum, so the marker is checked against the CURRENT state but recorded + // against the POST-tidy state — otherwise every build would see a changed + // go.mod and re-run tidy forever. + let go_mod_deps_marker = |root: &Path| -> anyhow::Result { + let go_mod_hash = blake3::hash(&std::fs::read(root.join("go.mod"))?) + .to_hex() + .to_string(); + let go_sum_hash = if root.join("go.sum").exists() { + Some( + blake3::hash(&std::fs::read(root.join("go.sum"))?) + .to_hex() + .to_string(), + ) + } else { + None + }; + TaskResultMarker::new( + &marker_dir, + GoModDepsMarkerHash { + go_module_root: root, + go_mod_hash: &go_mod_hash, + go_sum_hash: go_sum_hash.as_deref(), + }, ) - } else { - None }; - let marker = TaskResultMarker::new( - &ctx.application().task_result_marker_dir(), - GoModDepsMarkerHash { - go_module_root: module_root, - go_mod_hash: &go_mod_hash, - go_sum_hash: go_sum_hash.as_deref(), - }, - )?; - // Up to date only if go.sum exists too: a fresh module has a go.mod but no // go.sum, and componentize-go refuses to build without it. - if marker.is_up_to_date() && go_sum_path.exists() { + if go_mod_deps_marker(module_root)?.is_up_to_date() && go_sum_path.exists() { return Ok(()); } @@ -675,7 +680,10 @@ async fn ensure_go_dependencies( ); } - marker.result(run_go_mod_tidy(module_root).await) + run_go_mod_tidy(module_root).await?; + + // Record success against the post-tidy go.mod/go.sum so the next build skips. + go_mod_deps_marker(module_root)?.result(Ok(())) } async fn run_go_mod_tidy(module_root: &Path) -> anyhow::Result<()> { diff --git a/cli/golem-cli/src/sdk_overrides.rs b/cli/golem-cli/src/sdk_overrides.rs index 3473792679..af05be3e13 100644 --- a/cli/golem-cli/src/sdk_overrides.rs +++ b/cli/golem-cli/src/sdk_overrides.rs @@ -166,10 +166,16 @@ impl SdkOverrides { /// The `replace` directive pointing at a local SDK checkout, or an empty /// string when resolving the SDK from the module proxy. + /// + /// No trailing newline: the template placeholder sits on its own line, so + /// the line's own newline terminates the file with exactly one — matching + /// the canonical form `edit::go_mod::reconcile_sdk_dependency` produces, so a + /// freshly generated app's first build does not report a spurious go.mod + /// change (path mode). pub fn go_sdk_replace(&self) -> String { match &self.go_sdk_path { Some(path) => { - format!("\nreplace {GO_SDK_MODULE} => {path}\n") + format!("\nreplace {GO_SDK_MODULE} => {path}") } None => String::new(), } From ac8c4a5e6d674251db1ce2ec3218a3ee2660e8b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Fri, 24 Jul 2026 17:42:26 +0200 Subject: [PATCH 019/149] go cli: ignore trailing-whitespace-only go.mod diffs in the fix step --- cli/golem-cli/src/app/build/check/go.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cli/golem-cli/src/app/build/check/go.rs b/cli/golem-cli/src/app/build/check/go.rs index 7d4cd9e726..8d71366044 100644 --- a/cli/golem-cli/src/app/build/check/go.rs +++ b/cli/golem-cli/src/app/build/check/go.rs @@ -54,7 +54,12 @@ pub(super) fn plan_go_mod_fix_steps( replace_path, ); - if new != original { + // A trailing-whitespace-only difference is not a semantic dependency + // change — the reconciler always normalizes to a single trailing + // newline, but a freshly generated go.mod can carry a trailing blank + // line (e.g. an empty replace placeholder in version mode). Skipping it + // avoids a spurious go.mod-change confirmation on the first build. + if new.trim_end() != original.trim_end() { steps.push(DependencyFixStep { path: go_mod_path, current: original, From bcac6e20e22f380052bc62d2a6c05b4a498a7bc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Fri, 24 Jul 2026 19:43:11 +0200 Subject: [PATCH 020/149] go sdk: handlers signal failure by panic, not error return; add Must/ResultOf bridges --- sdks/go/examples/counter/counter.go | 16 ++++---- sdks/go/examples/counter/counter.wasm | Bin 3982482 -> 3981740 bytes sdks/go/examples/orders/orders.go | 51 +++++++++++--------------- sdks/go/examples/orders/orders.wasm | Bin 4478627 -> 4477397 bytes sdks/go/golem/golem_test.go | 22 +++++------ sdks/go/golem/registry.go | 48 ++++++++++-------------- sdks/go/golem/rpc_test.go | 4 +- sdks/go/golem/types.go | 45 ++++++++++++++++++++--- 8 files changed, 101 insertions(+), 85 deletions(-) diff --git a/sdks/go/examples/counter/counter.go b/sdks/go/examples/counter/counter.go index 5974ae85f4..2b60cdf924 100644 --- a/sdks/go/examples/counter/counter.go +++ b/sdks/go/examples/counter/counter.go @@ -20,20 +20,20 @@ var ( ) func init() { - golem.Implement(Counter, Value, func(ctx *golem.Context[CounterState], _ golem.Unit) (int64, error) { - return ctx.State.count, nil + golem.Implement(Counter, Value, func(ctx *golem.Context[CounterState], _ golem.Unit) int64 { + return ctx.State.count }) - golem.Implement(Counter, Increment, func(ctx *golem.Context[CounterState], _ golem.Unit) (int64, error) { + golem.Implement(Counter, Increment, func(ctx *golem.Context[CounterState], _ golem.Unit) int64 { ctx.State.count++ - return ctx.State.count, nil + return ctx.State.count }) - golem.Implement(Counter, Add, func(ctx *golem.Context[CounterState], in AddIn) (int64, error) { + golem.Implement(Counter, Add, func(ctx *golem.Context[CounterState], in AddIn) int64 { ctx.State.count += in.By - return ctx.State.count, nil + return ctx.State.count }) - golem.Implement(Counter, Reset, func(ctx *golem.Context[CounterState], _ golem.Unit) (golem.Unit, error) { + golem.Implement(Counter, Reset, func(ctx *golem.Context[CounterState], _ golem.Unit) golem.Unit { ctx.State.count = 0 - return golem.Unit{}, nil + return golem.Unit{} }) } diff --git a/sdks/go/examples/counter/counter.wasm b/sdks/go/examples/counter/counter.wasm index 1427752f07e624d57ae16138bd51014037b220b9..5a872273b2850e1686b215c60be2fe3eedc4e075 100644 GIT binary patch delta 535755 zcmaHUcR*Cf^LTdOyWT6HfMVC!dy4{gjmBPLFEMt-#2O3OyC}-o1siri)U}Hh6h*Lu z4Kxw#Vnt*5%`11D=JWmibz5d;XLo03XJ=>MEuH(C?416Z#N8@Rx5Y)=DPFomm5w1} zTMQaKV%X2^hE@ovIkfVKU;0&QR3)h8#NM5o1$ApSqv-Q>E7<|-g@v)L;lty5D4y}2~PyL%0KZ&}1I-4~D?ShC#V8Q5JdKJ^c(P=tioQK2 zwvw=K!06(Yiq4CSyE8g?t>h^Tq2WkS!RWjK0!R>JJWTa+w_SQO)z5PGT( zCns;5{n?caI$s)D5dmi1xKC)-m53o3FL3PUy|NWen3#E%V)_HM`$zP?H4b~)qJ)@-Eeg@AcOfvB_%b6QYXV&TWy!@zoWh-pEJJGYQpbw0r{zgc zS1;M`l}Hb{#*bxJBky@P(!1JZegTQ~4TuE+8IIE=H+HKgq`4bAz6B{Q*A!v-t;i@h z*sM0BlN;102_35uAVSe>b7l1fG#+h)$f{;YEZX~xm44b8sns*(Pp6`2V7;P7D$ zeJEnMm?-Q=-OaIfezY5P<0TiNUu^Wq8#pnN^JRZmqZ&ewZ(uK~)9!>`egi+(r1fx0 z=hUP%=+~9(cum@jl0~4ZL#OCIZ!^owpeRI-=4`OB4xJ$&m90yw)A%UpU6%HQu-e`ht4Fq{ z>)^LvFy-HYt|!moSOX^o`%x`+J-I&{1k$_B2*5% z5`J=FLpL$k{#TkpuPlSGOE_rtx>Gw(Z%078-n2KpBmVkADkkMZUpUu?HgeaL>q~Rp zHI@6(Aa~8;e)NXBW=4OHng{)9zPskb0FRokzezY%2GX8xLOTa~G_mJ*4{*yMk0z9Z z3u@SJgQ*smWdwu_@u2i{hzET3&;ob}9OltR)8QU9n}>VgtQz4_^I-)2;O>Tb6b*KB zJZh8&&Tkk$L45jsHMg$BFrL~3MjiD&Eo3bE7$RCViwlLb4 zkR^~Zo%(`dDh*(JrcrM~zuaRNrqjO&eX4M8U#n^8Gxm8VUF{%IY~^Y?mY{^?HN}nk z=O!96tG$-a=g4z*I*L|Q(Wmzz`l`kk%v*6?=ADIrPpE&IZl!h$O?(194$>(!^cDm} z750VvgY=0|_|GAa!mz{igizS{2p!~tWap32795Q_!W@aT0TB|NPT*n{;MSd@5nSjk zRYdft!t9sR)XtH!q9O}RqO(y~r9)ULl`kuGfu18|0ld73i~aFI$i9ry-6)m%<2EW3 z`oYvRWcaP55ZS&ox`Dvn_q-JbU#6SMVlZ7n#8+1!ejaM1ephHXp(mo?%~d*#0Q9|v zdTY&E=<``+XKSy~0NgkjB;G`nck3a0n8_Dx8FV7q2zeRU)Q$|=1e?WlN17<>&;FS> zbJ0RGesD0;RqqGBw@|OV%K=hK>kA>b3V@PsAy60?ZqptlN|Kb>w>@BQ-!6cydWSZl z^Dc`+0n6{uKo`dAJ02L#@1g{(hQ4=^?deygp6DGk@e7bM(?CmQs=HqS7t9>KZg}h`vj05LlDz_n%UhSd)8A=_k1d>281-1s>VIFUR}4M8F1T$n0L~}Yn7E_lyUyR<6_x!~@xu?84x3V8s%0R!o zVYnAICv>wsy`@7qA3`r|hub3+zR+tlSDPFZ1i%mWj^={sEm`5){@{XKA~X6At`?aI z+yCG$(RpaF3UUd5a+Apn$hyq=LDeycxL_|tU)K9W#2Bt2U9lIcOhEE4$8dA#D@g`e z6`QT7&EkRle(V^TldRdm-pfK!t%nP`;2UqmCFzz*>rzJy! z&6&19Eah8juYexG=g&>Iw_m$PH3)bHdEf&Za2LlD2aXRrH<2CQI4Fg;QHvswJi@ z_d@_zloX}7PJ+`?VZ=Ue-v6p#y8T>vLeFPG&^wf!PK-DPswW{DT!-OH%3Cp7@Wac$q4&a8jot{xL$O3 z1o-dJ`$FtFoTl_`Q0+W-fZmksI?$wWz3Hi45IzW{c2)|POk-p^!!8sMWw$SI)hXE^ zsj!NdxOVijXnkBK^C8Zv@PjdFTzhV-yyw9`Y1r{i5_IEq?hFossJ}~J=7LG2tOzf2 zUCBCzb9jfiDBrs3rtAwXuW^T5n+rSG&pWC9~mtMU*u~ z23MO#B{NicAr!al_*+~rvPEQrRk+O^wR0~oT3|_-t`Jk@alRUQWer$%@V+eQBiCC` z<5JlMCBL&I?w`Mu=Q9YzrdcekPDOqP;X*^zpzp8pgQ96FJ(w%=Ty4ZHAK2(H0Tb)(S3iI80bak4HzbWMJCLB(yc!WRbA;y1vm;fQFi?TPp$ z8e(hn$KdM-tQuFxqe^$_k;}ODh7(iKxUO24-$3Io!u7hIEu5MLlj~vA2QI=-^*t-H zAHd)B`D0`bZ2XCzQ@~Qhj>s`MCcih}H;{19HuR`N*^h6?A15myB+#Rn#!DzQf{=lz z^NN01fTBwA${8SSmc^C zBi=m_>CP|6QDP5Ijt(V2@18jDSt(GYmnSnPli_SHTsS-0BhI4Uo;XPtph6#EvQpq# z9}gT9nXDQ(`*D4-cljyMv7cw37r?hF^I#y!o9Eb+15jUm_Pbh>wPsLUp&n{3@{;oio1V3Kabl zMXJ&eKAOf|fXhSpS#DgKAr6QyEE|fo2QEOZVV<=g#kJ@QABG`mzg{>rn}+jK+}NlK zf=1xTBwqkBl3!C$z8t0oV+S)v^6T_z7rvLY`LKQze?Wip`wDtolnAEJ{ZCD|z7cM_0q@X9 zv||N7P*49(hR-p4EqX5zPHf?8u&~X%f_RiNEUoKVAb|Y{FK;@OT=0!d7_ybWNH@HM zI@|cl^!WuCx(y|1TAb|7(r!m;xXGG#@HMy-yDgB{91V~GJCL<>*)&ZP-Q0{O7F;){iU7!CQ9f0E7|!=V)@A&eSUzM6ZlCSIV_O%gYEnITI8!}$+NHf z`G=H-DZ%oIFAVe$UkRHW zzNA@5Tzby)95#J5kIz!jm&vgIJ%5m_V59Q+^AtG?`Gov;{g-b{wn`??p?~>~*sS3B zhVq}Vd^$sz)6{LlclgSWqB|ufS@u^x4!v%&c^}Iu#=GEH6JF7u&^?{X*71JbJ8iweQz`ybopVuim(PP_KfL@W0=l*l7uu%bo9+By% znXus{l9gE5tjML$WW1Ud>`}4|b-{vAaq`eu71Je*tK@{>9)}G!g*S~`CiyFG3Yk|M zfGE)~X|yZKb0nPA^HShkgt5Rvil+qUq=K(P!RzOqz=K>O!F?<16>CsbF$X6w43YyB zWw?Bozf@mLaa)1TgFGAdUs(qGe@_yI--PsKDSf((B8*0Ul032f%PN|ZPvS)ZB$agm z6@fD46jN!6%;lMK3U6`?;>|eM|CYm%yeju}){lxX@>Fzxlq|0(rl1M3{Qp)(@u!NO zltuJ?Z6y3bYQ1wE#SVH=oCzpWSFw{`m(q{wDo)aOk_Q&f)l<}l;u|@CC{kb13oehr z)av?*^At`qRU1;idBesCxddwN{7wAsr*MN=hBc_|+Mpkp(|IvRJ5y=kT>YQXboG>3=Qs-1B9 zHZPXk#)CR36qH_-bMw0>b`vg6mNM3*n<7UEqt9#oS&u#n#?e`aC7)200gAhntY_xm z6(d#j$|?vOq3BLG%l-T~0(m_wi+#6|INI|dXf)@?@<%GhDd-OIeAAOodnBEUpN>(~ zqPwK2WkF*V>4eOZmTu+oI7l0%L0XJydM*kAs^LlMxlj=fLBfh@Jpmh73`IXF{Mge8 zilGXce35mVs#r?6WY==hgdy@nSuh3(8J7mLB40)K%PxQ= z^Ay{)WShiFx8;fy`sIRnsRqH3iiRXvTGs0$QAqE~($oMHZ?%%{YqCMn#N-m#t?}5R zEY+$#9#Xw!4@&h@>2R)1C;%FqfI!=1w$ytSeR%rvA{%l*u|WrWObUM}cN&#J{8~u= z6}=4egv=2M8XliU)FinNbI&LaD9BN1cj}#@C`7p|*8ssq#TtoNyHpQi@j}K$%yJ0_ zdN-I7P^rdUQY@g;-ien6@N1d}${``+LMfDv?XQr)*uiwgb+sup)e^u5nF4;$x77vb zUu5et73ms!`V+(J#imLw-z9t39xG1hQIU#TVefks*_(1d9=})A;PK#!Gd@5`56J!A zK$Ss)nioWZaLNL=OdrhP3|lm&BJ2dGY(U95iKw5l0AmuSUCJG92^F%pu&zq!_8NTJ ztu6+;R7#hxpfFU**C+))f&!kZls)JrdDsW4mEQF61%{re>6AW@H;@3G@+G~z4MKiZ z`$HAIvLU@EX^};GY%c=R^vYhiL5My0*?|1yiq&j~L5Z&BbXoKpn+llQXj10WVlS?pwAM3CGGFhCrKgB~6es?`_IQE`0XIt{lyAH&t$$~eWUE8Ejsa%O3DoUM!UX8gRm@(Xccfwoow2^cJ7@}#j$uBB{F zKT7F}wUtNFgDhGBnmWp05-Y9W!F7~DFs%Wuoa8#nW)RpAQx)nW4f*PZEvTy;Y@j=% zM5i>fHCNh{BneR2`LV`rlx_4hL!OMdU$Kj~rNwXRu8gKPWyPJ^9V>21b6KH>GEDS7 zQa^T~hq9ZJGHJ+JqyEZr92%5@Ylh7qsO*Gy?lOTdzbnJZG`4t<(m@efv{+6KK_1V@ zGaN8f8Ad}F!;)C7FH0P%+~fwEHbU9V4VE)PIol1kV5AcL`!cmZLOiHl4)FjRH(EJG zja&G;iOMph)XgNcyUP^iVuBNo>1uJ6F;$e5L_bho zO{)(}nxT9~>GW`Eo4Pz(`3Fy9=8NuW=)XW&2aN=AH#@XInM{-4vKb4Np-OsQ9-U&# zuyczpN-8=`$lRCLW)^11OKHj)E>|`q`y`>*v|KrbzLkLjBk^WTw!D%emBdJ&%VPL& zlX97o>=L&dSg`}=V3#b_wRS3N(_KjrvQxR1Za69W+gbTt%B4Y>Iw1|Y|F;XE!kWejT!P$>T)`!fz(HduY4aRY$2SuudG4OfaH(2KTtm8 zXp+3py>pbK2#zhx%T<=aJqOl2QZ|D3xyp^g285YRj;@j=aM?3uVGLSHW$~|+B?#Rs z6~pV-;%JLHt^FJ1X~uTQyNI`G@o#YGV6S-hz}mi5p5ah=i-S?^gL0`i-TzK<-9NCX zyy+uJ^Mj97)soJ+FK*BfW>poC%Mvo{E}{*s_Jcs1DwM|lEnTtQwW*rY-LfPE+Y#)M zJOj~oRWM!h9MWr{ML`@`lPA~oaj0hD#jvo`G2W@Vr*bz+{5=}&BV@2qA-D#P`>VnT z6K4y06;XMU_oC^^mK9MwQIc6Kw3G_%;_ZOHelV{LVt$a9`XkKXy+C?(r5`jeixry~ zn_pHnm*NRbbnR9xuj)lkNa@|>Rr}F{6QW1pX%$qx1^p(ZzgAFX)BBR*WM3+({w6eH zEwtUK^W9%X)zR1O#vk1p$8)=+yV=&(DvWw@=YCPy2|XtDhh?@^`4{Az?Nvj0yi^x; z;QG$0iVAw-1iRE-6(`)ku&`b#JI6((T44R}rb28_UsdbEWbOXRs>0ZH2pxfnv(9u? zqJgF*v46u=1C_Wp1pt;#1yz&*ZQ`PvRlVpTc_ppctZGJO9m6?-5|IjjRya`=t43`vSTrm*S!Ly6=_M@pzNnh(M^c1K zNiFRN}K7$Cyw z*ji2XHg~6FF7X zOmaUKNRXv)}RP)FTs-}*nYh)HnS62t){eievW@DPZlx>Ba>gxU6R=Hnr zxCVk{NRv~zrusaI632zBg&13;70>$DQm-R!#){NI47u-9>!@3}`~I+w2QN+PdSo_X zMm7@}S5K|MX%;$MuD-e&CF@|+Yh37mH9(kk(h|*Vpgu!)rwTf%CtV@yLEk`i7?T73B5Hbc6FN%NYspf!ey{o&#iLMIXRk7BA5(WG zu1xiV>T#50L{3)uv2%yjzj)Dwx4?V_HzjX2^a?lHXiW*P<^Z1;ScfRo}PL zcj9(eUC?KOhiht%x+#4x3(|ueM2(SVEI3ykhHG5V7A!kgZRF{(RLFa(?&$&;_Dns6 z?v~Ft>gVbngeJ*KY}yN?vsf}dvtOvg=xS--Vxce9oAJaggEe}MRlDV?`>)l&0_7t6x@g)J(s~L*-Rh6GV^6ayYiGCXB9^CWATZX)bZ73&cY?ZKzp7$a!gZ zj}O$85~3>8nrf;sT_a6Bf{|Q81|~Mv9K--CA!LSO$jo#?au`+&a|4WO?go%zYTCEZ zoZ)D^EC4lHYjU}pu9Z};jpiCf(@0!N729cY=|A$iuijo$hR~04Zej-wSCCuXQR9pL zO({A7u65RoC-YdFE}Dg?&~L$=ZkjP%VvHWLA8CugpTBDS#awzjWnqZ>RWn_N@rMrG zHC+k-FLd_=RQEu@>vLdX4^LtxdV0e2>FI{?2d>j^lhuLSt4uP3n?{XAh3`*{%S-`|ti?f#yC-UB4SwF5kfRsYQsX4G#U z#B2jSi7goD379-kGe@`enJXs53<2#mHW=}{CX+6BEd?$P9Hd#p)5R}DYmOBiu35!# zS)cT1C0c!1#wbliHTo#k6Eu&B;5G|cYOpcYUmCPg z%dUt@{O75fb9C8$DL$iGsHPXxRO1moHdK?3E}^e~@(y-1Ov7vF)>Jq(Pg5E%*e&fe zexRPO@g}obz}~Mv8y#2 z16>)-<{05Z`CL%YJ+~;HPHmEO;dNZ9}C#2nM&{mDSDUYIa$cU zcWZ7^`a!msXT@s{;fYMNhI;KmPX1X1(R(yK>2Y~~_f0@n4~QC>{gt4pOhNV66*=S9t275yw82ZFJMzprYh8t_OK z;*DB8?7qfNL+(l&pi{Ni&>C7OJWeR-}a zO@+I(A}Ab<@-#E)L0Rq|=4p|foY37VY_d}8kDILQdpfAq2Dy!3Zyjdt$_V3h+Fg{sk%= zZq+u!h%Ui8WD~5~vI;s~3F*y^e(Z#ob}U7AZ0$nY1M0*iO9>L3n8fl6X`|%m!0o=; zJ*e~Blyv&TUw+!zG*k8*7WLP9)8)6ocpG={&O#V;<_4uX?j}TidPlU79qIc4;9r;A%3CB=!N(pc*VhIKg0y*o)a@s zVkQeuEb$Y}J`rh2N>KK;SA&>hT7R0G%#w;}TTtQ5Yb~i=Lifwo+KH0d24qoWDQzz) z>~T~n?IFptd*VPWEk=LXcMQ1(jFp?@^ zMAg$ygh&mwvhww{8}LF=I)A{^pS1IVzm7Ku%NyXV-;tO4n+Dnzglv}dRQEt_W16y- zMF(n^6ME#N4BM{c81G5 zgAVPrk6fnOZymIi2|c@2JnyrFj@pCB)fyPlSv#NZlSYJjbM0PPi-Z7BDfHqq4u+dyr&n!c2U>cj}Gw+fAO)DQlUKSmpf zX;Jld9;}txdD!*}p$d8|1b<{e+wN81Hs)Z*BRx!NKaaw;A@{Mn89TAq?GqRwL<7HS{b>4{e?dxN$srSS`(-ezri zdi)6t-mERo?LJ_Jum&bS*tuEjB*&z2%i65{S4}Ui7TpW*VK+7}d&|4VYHQ(@yAWsz zyJAsp@5yWXL9Di+8zV5T0Aqce8-u-x(@x^?*d{LeMfSpKk#R7JU zrxvg?K2^I2Z;_cQUE9v-h8~+!0DUdT4GraT#U(4Q|310e_qa((8f(mBZ6lg0yUDIU z)~>`|Qri#=q8XFW@ooT|uks-xaj_<{kF;kSz7( z-Xon;63srCrVnIg8YyJ%N?LEzk-hasGL1(=61vJO$-8A8X zUgu5oWuB=4Gi$;n|8{MIZajtu%RHr;3-Bvg3h<{{u*K;Roq!AIfRN6Rjpsm2eEHq&|0m8nv6@hhw$ z>!p^;G{qZoE)fDZIHE-mF*}1>2vC^4%QHp(~82d`9(-IBn z55b8SS=?YeBJvLNfGN#tdCO zHQgrnw(3G%Tb!?uUvYbhT8M*oSrU}D3z0DlFcH0=KQ7V*yYc5Q(iK7Vc#iFi(0x&n zlahiAtk&V{f#hVE9i{u5CZ@9C(Ynf%CML7>8+B+^EZZ!`2*8jnIAJRU z)1e5YY|%BO7?>HoO@}v^F}jAbRS2_VbhYRKnfKc7~tE}fLJ(=8#a=q_C(@0O#h@da{JZBGHzoISe9dN)+@;{{ODju$}PIIhc5 zxuLEl6+l%_c0RC$CogV7Kba(+RUa-H()7?;zY;k7U zqxZT$O*Hg6^j7I73BPDk`+)z?B{l4;O5aR4S2xq>Khwtwz#ErBtdCaziO|Fp)=RJN zr6Z5oQ7?T@9t{k^zGAg~_1n5$pbwI5Qh%Vu^bMi<8!YZ!OpiAk zEW4OK1D|2ar;eMY^g&=XR<;%E!74#(wG|A>lNI~9v_{w^hc7kq|^^M88$SQh2I4mS*VlsoK%1hyW75xzM zMl#>0Rz(W4;Y3w^FZ4-^`|VHFaBw1|qu+*V`du_>C&TBi9VxnV(k-~NovMjAae^DT zD3q+F-%c;QWVn3J@K9X1RNPx%-v}LVqH1^igtQJzU7Yw6mfw+9(Jf5VJlQ6x-vBF? z3q1J2T1?aDvUBK*kV%wmPu9C3wu+79hH>U-i2E!uAvunb*AV*1BU`j75* z8g)jQKE2aoWy?D2@d-$NDvRx+$8a&c{u=YE{s5s{q@9no>Y?9mq>Gq z>jx8eRGRNneTwiXO^{WlSf<}W5J@z}Q~L^T<=76(CIK0mH=FCP}VPQOMkoDlKZLLOPp%scf(6(nAo$2Rf$S86m@1o>vY z4(ZntSH|avzLODyi@nM+IIl0J#770uZ}IqiBMmu`(}r|RFPF+2d88)@>EqHGh!xW4 zXb^D!!88qJlJBMPWsgid&&+Jhps5yhS+7+QbbuDarIeh3Ws4y@LtlfegXlmks-B4i z!goklkV7zo>s+je64KbD0CZhQf0h=9{uUz4k`aQ1%qLmY#$yJp?j^VMHRvr_cK;Rt zZpfKJxAop&`+~CA7E|<+Ts%w2q{x{gLMBPhyuu6~3x)N~%G}Y9|NGWaj3ra*-e!V?x#;Iv$CNykB(>2P%To!a9u+W z%#hxV*cuv!(Z}H|tf65Q=ej~=bs8C}a5Qp-6bw11sll7fWzkIyWmI_QE2_Gj)`q?u z##snr$Og7E?BvlbZCf2>t8!;UTlYhub)5}Cg6Ac>vtcdjCjo%1>0>{?pKitdw@IR$~l}1wY`DF@`>9CY_C+)X*3ATC{il;9V#VzyVPPpnRAiLJC;B6NYrrYY;Ha&=W(u#ICHFhV3Rwd(gkr z3`6OjeSmk=elT;oArN1=h}+JC>4s^z=7WgA52nvR(o8fM4$d&FLKV_+rr`t4mIrv~ zEJHhY>`~?{oHl&HDEjg0%*Kw$L%$N!?jC*+D&+C+HU}$Q<9|@dxJK4zE<(xUKLOKj zs0<#1k&7y1>wi0Ddz7!%i0>i}z#}KQ2TJ6o^|W z3BNAFbgZ-$9>O$TAgNYXXt4o<%$~~!xrA^Wj!%-|_bA-3P)%nn5l>>UY$Yz8h%Ztc z?s?3RG-1>tS7B-gWUof&V9iyAS{l0j3$!g>$QR~sG&G=hAG4H=hGxQnF|C%c3}Ou7 zWF0#ZgWR~v0=602;yM)tcJVgk|Aox|bIjmTS=7y~w;N`oGPnGSE}vK14WqPzM+J2P zgzm%6oB}D-I%^+dB#GQW!~KSKxUq=XyZ2+ctgj3Vr4F5END2Be!+9Z6O;{@}4v^a5K|>hYH6j8#XxQ&+dHx}fmY*EL7LH46z2)J8mJc2-XxaNnLCeFB z7>>AFZg$kr4ifg_hOz&sN4t(=?snPUV+J!Zh2GT(k0ygvlLBb)vb%8QxS=$Sx(lC< z8;a1-yWp2-Xr`Be0u;e>(7l~#=z&6mhjl;pIMHy1N3&aydv@`R;jvP9Dt_>SVWE>A zT+Nz4Fof|maRH>{7$)H_YmsXxrxX%no*M!Pm$<+HA%?<*;8@R+R(9rv;ks0IFRFw; z#5oG7;7ij&T6QtdP+BdJdH2B(AtD9D;dfp_L!1tF;3KX`+^tJ|HZ)P-Ddg@RbP>#^ z#%@NmBm@zHFJ|L3)QG|)uyqz=9R*!_Lvk^^bsF2bFBJxO8H4F2d3Qc7WFE*SQweV) zK9{^K3HsPV#%6T41jcR^GOi%xfh4L+e2pned?>J}xUn3h1*kF2Fn!XB<0Gz@5jBmK z@r{zW;U1}JEU%ykWID?FMjeN0%i7S`o2JcxKN=eA(Yt@MxQ52L1eTmbk8778BL;EG z*4=*0pa~_OFdV_gAXxe<9v{XA8`0pFL9PTF!vtT7_^2=Gc4} z%$xbfp-P&c#QHA9`9NKpZ8rMBiDg(HwF_nYJ*MzTD>74IxzWc(ZoqQmCl_s)vd-An zRq=G4(O2ner_|5{;+vB!-YyeN}wd{*;@5d#6U zB*l_@2WR@Vtgo8gH3p-A2^$fMxoiBH(37%=TC%Y3>*3xGtZ9~IT%)2Z@imd~AqbLd z49EBkLFQO&uJNA2MS16QqE)TZU`EwG}-)D=HqC4M9YHfc;tTs5qN*3=p` z07UCeZ(W73*MQ*v$b`xnP2=c8`Ht$i(e#GWS1Z^)i>WH18Rr;&Fvdw~%nC*vro9|_ zC#}#c-X?#+ToUz$sgUU`&YtV`?R8;OTlf2D*4Nh*K;#F~EXvPxTH|JPT4|H8MGB5G zcE7agz0Q5@_P&~Fq6>^Iu5O~lwVA}$FyV#2tEmz-P3;Pril}Mo;BJbqZNg{cuAOaU z9TTc7S!^x|8Tq=DRjO;6Meznmv>>n4H`V3^AD^(2$_AN)m)(K|!{!8;T2Y!VAM5fO znZ_$19M><*Zei*|6W>8r3)8RyPKLBJm2z{kyOpV<8i!K)_D<1`rt2yivmElfo0_BT z&w_iHl!RWFOLWtauI|+}D&y*%tV*pJ@cml1a0EreSUo2%!H1sP4ZIsI6`1cmgjCGakLU8U48)5vir~%yhdS#WD2mc zqfBVKOM?wZ#+jaREAU>h%F^ORSju=DK&%pX{Z5liT?=M8Ws>Q$du-w1WYY$;Ud3tI zGR1V7nC2u~0%(v9A3E^5;HYFaA=EV8RjS8QwOFc~X4>hX$xH~^8bw}-{=sG|Op7rr zGh6za*qfE6UHNl0JLV11KJ z0eHhMnQtuWoXOw~8|Ui%SxUC)9#0+#)*DNHXlh%69F?q|nmThBw_>IoB6v+_&QVF0 zcBai7j25=IG1j%4gCW>~GquWYUdn~x_qBw#hpd&uti{kR*4fKE(aMEB*1-vXbs>0G z*8G$3ft>Q?%scVW`j};wH}AFJrX<=~I~$m%;cacDhUQls`0haF8a6^WJcNtZyr!vn z8r>rgz_zC559oJ^flbZLjnVS%n}>Z@wlFWKi)T2|f{UAOzJ-nt(MH@h!;Cjyp`Qic zXJKf&7*EA-XPKkuSy@;TW}BN~G`A?W-gC@BaCN)EAI8lwC!hirg|_)za}Wx!s1al4 zn%Cm~A%sIfzj@}?GMPSDFZQF-e1u&JA@j}aFhat-!2E^K&`%z1*IQ)H_vB_Py&*H= z3@>2huW%P5nc)SD>{wF3h<2%YEnT=!iiSV46ghFxsT_f$BD1qJLSjeovE@aWg~vPQ z`UT}Pp-U6{3%!_d}Sl~wUWNiHt9N%nS$c2WfAuL+u1^;GR%rJI~c?FU% z#hCNNnxM7n!pwiGc{p)r0kdW}xXnCJAcoT#rQ|}tsGwaE?+aOR=04x#?Cg(tb2SV4 zH^t-k>60jE`z4tfaLWA52oJ7mtkD0mc_I|5ueGzh%VrZnsUlZVyx-UiR@UjN*+OW_ z3>b6`hvRs8EING6oM;prB$NL(k4NbdPm{KPa9m{f>S#>6ca8La%x&qvvYKr8(EQr% zUTm9V?us_5xSr1DnBTi9*sWYMC3Myk@qHZo_mR0MzI|B1{GOZNVN@L0Uz)4X-A7G%wac0K=%Mb-vyV$L) z^biXM$R|cH!!Sz*-c!lXANY}$S2p=wxDQ0lEgS$t2M)dF7g-C zSeu!auNrhqh`|~|7h@-{OHU72^kNG>-dQ1@Z{X?@tjUsJHE5SwywPY814{#!TE?pJ zBq}@%U{_aJPUE_{$X2bf1PjLtQ3rioZ%La4ssqLy*xfv@qNq4Pm&K663CC$AEXLnkDA{)d_C}5Z6Do>}$ z&N$m1%UGop^RoJYWdu!22Hio+DSB`YOFL+ZQ^BPHKKKEb6P7tBpA}DA+OeT0EoF&R zy!n(+%&-_oEGmjMIb-RFi8QwQti@kNve==E_(4k=b)6-qT3!gzU2$oaC=CsrCVa;Q z!(%!b%rG(2@;ev$Sq0JO)!y(a({fa<$A?8*i(A>lTb3&ddR}&5+{m^B;j2?|Y1O=M znS$pz(RFzFzU2`WorG}lAIr~Rzlfg0A0Jv2dSEG-41Q&a<)kF{&T?M%C*J#LX{JVh zMQP3&hY@;`a}M6}*421O6<7am1*XqSR_O0aYY0c~NE+vz#@gQPml&wEE`^|C=ooYA zthGssG`que)*$p#i+fNCrXfwZ@F=Ip(&bX=T)j06ulPh`u#CZap5SGyaKFOLCMzCq zT!&eU^&+9`WJk>;8{+SmTDT>ok4ovfc1%Z0``JoN(^aw|mM>I9N&cBG4r?$uEg>)m zmS2~4VyDx(RA^gp9h`Mq|H5x|-eZjlS#RTWF(_Kxnj`(xgv0^nl8~k`>ez@9*4kQ{ zo65FUv?d$r%TzY{Cu^LFtYF2PSZh>7Pg}P?tO5806nuogucwGUY9dHuUu1`=Mwg_Cap*_H#=3PQN^V6(%Y zy*gwasN(Jb|vwI%uXyRvahSm_(qO5c?xE@8jjv|blB zg7sF1Km3|$6~0Y-1Ji72rZq#T$ai37-fe4{YM4nBGU+B;PeNa(LuHGtGQF`J`dMsM z>Cu&tR@GsL)ytI{NU+#u$PnJJ9RGgT?B4*)YhkB&y*}5TFMPU!Ja|_$*^H_Mch^?OU&3lhYFn>D-)r#7-2#3wgVzzp= zoE73niT*RCtZ{K$e}UZA(nxN`<^Pi$ILg?3zMZG2nebB?TiO2H#;ytBM?EIfG*UvG5T#O3eeJ@Z1;JTI`lu;O46teY;CaZiV`X9o?X}<7Pqho z64h`erjuIOys-~iEpSwhe()HTKAwYI9YF@R#BTndD<-Yw_oEiKfaSNet;Ji_Xa+yq zs;I~lcCLeMxRKgipU__qUxBes}z4YbyM{8fbg%5Q1WJCfWRKFP00+!h*`8 zmM)k_UnqvodQG;?K)^MVZRK>>huRUupZzn()<%bg)tA{u81Q#vH1-dIwwAELr46v!4i z;Lqb-wl7%vXg7)~W*f!X&SF*@k6pyyt$S>@h2NQbZRica7WUcRVK!~QZ98X5O)&*1 z#5eIZb-}w+VD2H?7KEvM*!B@&emr8c2q-@twcWxWpJTSS_+vV5%f_F)66Z0>|TVOB=>*q=@sodscCO$dJ+@d+_VamJ7C9 zJOYKZKpHnez8rbGNYTXg{^=bh~aCln-p zw3WbL_VA+(y;-@e@F!b{Sh47}CHG?}jWz?0!(o+b+!YU2iO!B^8bGvBzMMcOfjAAr`Uih3ukK@xEBLOahDa zwF}bO#Se>?N=1+S?0c|ijlca*cTXx7k$Un=5&LYcyHP~yNxh=>zL;HG)P5U(CI%pp z1riZ`F|ql*#jt3ORMfP%{QyFJEsjO=q@pDyM5sC?u_#*^QudJuomHbz;Pwd-zI@-+7>>((24g2rUczV@;l{`MJQZz23{ z|J~ji5wF3A!S=dbXu1aaCM&#H>mfLLLa}L>eWO@>Vi?{d%^9ILv-`vBb+q&#qaPFyYvIf>GNx<31q{S@J{=IViTGZ$hf&e+klo0Y`gp0$tU zu>QC6_QGgiCb4N3?E`i6P>d9{q0F$)`gT9dn!#3Q*q7iOC$WmR?f8HT6F=Xz>&3*c zS@x+SnOhI+-B}3KlVb19M6X5*xT!o=fu}`45Z3suix5-6Jw6& z$Nxjwi1*0(cZD&#^X(KTIQFCc5Y0NphW=~sK+TC;jq<)OoW!F}LF(u4TaTN`lwa%< zI6Q5H63653G$mRZ6L`mW3}azD?-+%)dohJ$2u%zXZB({h;h4>Hi8D=*_lL?4DowDM zSzoPV)_+O9(>p>Cdyv5c`=!AVD9E$!AG<&NVs;4fyfDM=&t{t)UP47qBHABEtzt!V zK32T7I+p&IcBI2m7NPS$BbmDn5xPh>joz@?Ctbp+sZjwCI|krVn?Z$2)B&gpG96rmrI4@JL5h;qxUgMmo0BOxZxk z{IN&4mpvNgxJ|RtAt}UB58LHN3w;fR@_#s5W0xoX;pp_A2JimiKo1do`okf7H@n-P zj&0_slUfhq&3XmaF^)n1EuA;UF`h0C1$2vegYQ_!eC(NM)|q~kv)AlHAoK=KO5e-A$+ zSGtJd=M7gnx*^5Rt2`)Xu5zG3oCCQTC^HS$IDCY+YTed(2yfOp#~TGg)X%i~!|P3s z@6Rl=q3~vLX)daX3%UPhM-ikjeY2yUbJtxDGrwppPB{1`%1Y(sW=A}J2ZC+b?pWX& z0&jS}+aVl>O|cF?n6o&SzfF|2ufSdeok;?3htxQ`y5*|_?vpn;Z48Q%;E4R(J>vV z7&ha`MV>(UmNQ^E<+$=a@T*gfa^IJgJMHL&I00*rK+I{!o$qviI4nKu82RlM^%6hP znB-XH!aA4az++7g47+XhXYuD8RftJk0K)(H$UfS<^A4-xTOv_&z?$Z$gwqt9hSRk9 z=KnQKNHfiWFBEg2!Y&;7_m{=F^}2$qKM{g9Ic;vioN-0yKZaIc#k$$w*0s6jxXOLY zLE0Rsk|A=?HvO^AK9M?O&`T?#+RWlJXTxM3kSM1U*OB)8VU!in&$}Rza2W< zwNAXn9!0_9x5)hVryj%L{Y?YV<()sS=K>1=kIj)8A#VTuhY;i z@HxS|G)vPvBLrC%wa7G+Q?NwD^dXZ|c>Q_B*SQ;i&iOju|JN)`^K(}JZ>iniDVS1UA7L9k{KfXlbivccGE9HlUff(b zA^{i8#0AI~ab6bGO~^aMd|T8Rk48XDfO91IZyTkGi)~!=LAoP~i;zW2IMFwPt|8%M zGpwYu^nbB7mK3ob3g?|CC7q|0k{hcwm0VY~AfSRX1W5>X0E?~QoW%*ViylvJ_@#<- zGL4Cb)GAJwImH%Lb#}vhBN3t*tNfF5FMewEtneLOZ}`%{>9Q!;mWIw&_`);}QqOvO zi~e9J9faMI8%hWgs=wTbY*auxv5~VUv3zS@p;Zn6;a(2#HBl|JZsH8Z18r&(X9i6? z3)`AHZUew$<0B8Aib7vRfBW&^8@NCq- zg){yCV4*OFEkVN=lX*i9+D_qYvJ~mN6=rp_8+au$so7Kv`(oMO;C>yWk31{D0}Yb6uQ0Rc_OYp%r{o zkMuteMd`pdU&6;mydidT2{XGn-1!kd8vs{EIWgofRRgY&zh7w73P=xe{z9|PvSOp1 zpO8T)GTwOz>12*~j`8%ihy0$AmD6IL*{$Hvunh@-xC18(F@-Lwq7d&4qS_X-|SxB0kW%Wo!b@I z_SB8edf)9_@N}a{M6v0=RiihFRrCK_#qu{fx2d?qd0OaWD(MA>cREXpx#;rvwWh~$ zPCIk#a*p9}$orgi`ha&IVurnOPA@kQL!h@>tj{{^48#vQ1RQa$;KW*-n$qy#xYG+O zv9v0ykm#(!W2X0M0TQCmI;*hs)6PW%Ge}*)#chSZ&IBx*lHsfbU)wkpu=b*JKNfUM^#ICD6@eCA!dVZ6s%aio z2hv@JONB4XwZSa{ROTm(TuQIVT_(@yN}d|FS%?(Wv7 zUD(~i*kE_Znuy(kjf#qjQg&j0&&+c7%@}_q|Kj@27ieeGVE$|3#$Y40uP}|2c^I&C7iWlIU+O zzXqj1vD&wwBD6Rl9S&Hs?D!s3o+@b(#Qd8te+PA;|IAibqdg1j z3bJ@=mqKZ+r*P>erEIomRbN^wDb{z#H@mxt3Au?WuXaiZnE9)f-P%i?)D={(tWdp-E0}4=ku^ zo>xbDShe{z(QnCotM-xxR#UXLX&s&}Hv=FM+jlrJ>+@)z0EkS{8x}{Xvc3Jm;@T-r7^xEs%>jH~u-4a;eIP{F z*%0_h)Q<$8)ny`sPUZF^F{QL4@yE`ywZ6nWEr%~@oKF)#rkB<>fvfILY3+4C=*RjR z+8J3c#n7EK;AJsXE?HAMH8UIERhipCJ2agXBr= zwXn;3M{hmR9eSSC)orFHlEC;%Kd; zgp=gJvDy*zf|xT7S_HXb6SNRVk{uJZ^b;ew;S}u&*cuN0^HLk^K?*nmv&nU5Xg^R! z`B_?6zI<+r^4DPz^R$5(5vmLGwS8eD6!0nKB2CZg;Q?gN+ps>e836y5yx?-Q;DgZfF=+mnEFl{Rmg;o_*4qw?I6Nwh_J@aa)S7 zV0FPOwWBmQ6nn|}m0(OV`EM1}-HlQ{C-YrR_2loXwGmWf#aiuMNCrn}M|qx($WFTc zH5y5#NbMNFOpMf?p@RUESs7R`0~--(Yrq1?8FZ5@lYDQJ_OdVh8o5V%j*eo_gIZX- zn=H>f1R-i#e^~pArfZI9_tUiLG3|Ehto?aH8%E2EqqJT$g~{P*W=Ka})IRbAQ<`7Z z{)J-mYuatzQ2c!hIthQE!3Hw?wsr#41>S+WU#t#ddt}jFD1Oa=6uieETkb(!x>6@s zzptH7Pl+4xFac`fwveSyw87LbNBwZ}vnSdu)R5T;TH^lekmuUH^jBLVG%1n)a>Cdp6oxKWJls^ymZ3fKc1}lXf(X3&FAN z33mv&{%1O0B$HNOw6F=?Rr27Awl~0QeAUhX5&6=0t%^&c z(82Dao46|@dw1Od@M7FtmOB@z(k*)yIib65PbOGeqFy}mu0Fcnp76nqT0=?>&>e#3 zeI$7e)Qv5yIr5!MUakwK%j*s-*Zt070c=%pHj_rZWWimMjtPGFdtD6FoKiy?X?z&G0FHHc@9?-3T zLEd*jS1I8AdG-PePNwMp1Gn;W^6P-Ep_AS7AhNv=>5jnaycKfvaa}iftXm=HiPFLU z^Bp0i-)Ws82N;#{K1BcicoD37uTjU>DDOS3YwF>j5QE!Vz~A|73ec)|7B5Xg3@LY3 z*WV5bA(^VzC!2R-~Y&ve0o;*hJJT{{erH7=Hz|ib5XY$`p8}+uU^z0 z@Py+chhEin^wB(LbJ1SShn;W<>-K7XvD74YzN?&%tMBO&>1j9lk**ThAxAyZ_0V`G zIlcRpp6H%yLeJ3KE8TbOFu(6u>;<{rQ=J7K&Zdw)&*3DvPsqmSx+R)8Ldw6;vXQ?fBpw+#MmIFjs3)|K*(eox;p znFE~cjr8%BbEd#Krb&n(hthP<;ZD2!wQjdZj<|3Wtaz})s5!FIKh&?4MX+^X zoix|~)xlp`!sO|p&p{_!e{Vh9vXbR1KKh0<4a%xN=izw(M$MxJ+#%Eb^hF_hljEdb zl56?vGXsQMPC7ih9%A*;H_5A<`T~&30lD;TV4RDl^U&!>mSoOq)Z7tgeo9JUs8XPrl!*ROqo3&W`r3@(V-Ayv24u*4<(iKewv3F z^X#Zf`s#F@$C3K_%GBmB4fJnlUtcuQAE7F%o9a!}(4!%Gx{_i~bEt+T6D{;+IM?6H zvs&qWz%{~-2VE)^dl|vWlAHsm%B#|rhrY)nF>RF?-Acu$PeKOG#0!n#k=gzOx zvwQdG)%sy{w9?k-N5QvaY_vkx>T^-dvIzYKlxVqLpBb$hyFvdHAni8l$5QCsO?p^Q zl1x&z=+%cKdCFG3AN_IRHvK(%YWLc$hj*P&dDw;5(o5b zF;LfoP=^0{rteAer-OR-5>@#yC1)JZQLW z&J-K1rw@GO%o+VyP24I{VgabOJF722O_+C1F`?N77{^uX>6bDl`PBveAo^p=OZt6& zo^h+--{xv%HOP*;dU%?cEML6`!=s5La>9LmPLHgMBbavtCiw!SM0W37B;bMmE8G3SwnIq=yMX?3;kqLD-CixUg*Qg=OoBA zPtSq9H;!FJ!=s=EFkh~=uU%{oBM!F@@lKdr!9;^ApH$~r+Yul1!gFnlH6=~JnP$@EJjt&4InDZrv0b(ogJ{yQ) z2LcWBp;*3}+W<>LlI1R1gCCu71{w_SDYuhJG30?{*hYV!YB4l{-^nezVZ0_iU4}2E z;T;cFJN4SQ(0bZJ8jO*54>bf9V1 za)!>-fYTKXusdI}T(`2J3vF;qH3MD{)vFuy^v8BJ3=61tEv1gZ#TOP0|H;ZnXj<1b z&>55j)aPWj)i=PUkSt&P#{jOyWchhRLl0W6*VxdPru&*0dTQX!U)#*k9wv7(yn_K} zJ>QOok`z?Ali?+##NGvdT%GY6bfk;nE3Mqqjbqg5t}sUTP#B$h!H*j=u9eTd3?=D= zlz*TB7DlJZa|atf(0)%C4ug1bKPj3&uSwSaXJ`u(0BkG+mB%t36S9sm)TJX9GTs31 zoN4gRW>`U)CnrN!cV)=8nqpwLxK7i!{(qZh@TSM&&vZi$+LeHrh8r|}I?Hf^TEBXZ z0cHhdE-N$Fz}`hF%`*(4>N^*L5PZzU{xG`EB7?0mge`ktGr-?S!(FmjVjhVkTsO4w zNFfz&7`DQ7_WXunDqMrTV&F`DO}fS!0%5_y$XLU{jHe<}@1|ik{BrZAp_%rz({+&m zk00#+b>W#|-d{4HOkN{tam%p6`6!j;wxNtCeFV++3buOcbk6|G43ynHjb!P4LmN%x zD*4TQdYBi~Hbu(U84m|(b# zg=dBy&Vu~snPDOgP_tb@S0%xzn32B?d8aKTYcf};m24Ohlhc^C!b;cpB{U*-#gfJ)hwig_6Qw43o*yABIXK z>5HL?D@QK%)zHx8!5@_7r!%F0zcZ!q?@TG@55r{7=tvXE*!9Gl?EPVA@1|(@NzaiK zvf{U)Fwy)rge&=pp3$d#$skYo0Hx9&Ls3>L=E#F8j5QY zqDj@ihKHJj17wJYv3o$m0l)u=ScJ_ty1aNqPYFA3-1h$@kQW~A3}Vz6CsE2kPoteg zX^cf_A>I(sHZBgmq4(i*Z(gY#(4`U2fU5j zJfrVrB||-o5~-R9`^GHDY-|(&RsYjvlA76_E!%yJ-N2lTE^PJ1E)Y!?V{<0V#(hi{ zV=+ziJ+du}G5voJTl5rpZ&qU;IM=<2!Qa@Drm!PIM@Z#Zf8%?2Y(FHQ2{1Nt2`BEI zOQawp4dKPkfYnevgN*c)pSJ|^Yas6u@|Dj88B^$jl1V|Z4Ex$l29_Z&XPRY%zvqFQ z$RZg6FTjl1c@ zZCPVvvwPfHV}B>7TZGDyS4J2|!rxg%k@uU8I?d}Xq{wvx>`Dg`svXMguZ9?RRO-2aPWgtx-qMQ#eR(M}>E|x0*d1os%w@|JOt-uuN zq@}*%X@ME10n+GN8)nz*ZN_}?k2V+Nz#T@oQHRRgb{bRZBBEt`jm_W*=VqM2By08= z;d44TW3%sPM~h8Rt@pEW$W9Ny!u`gd;H#A99x`Uh>zS}P8+n#!%rBpMXf%0bk33e6|NhB!VI16U~h}NiE$U)1m-?9E`modQ-X0lB&QOXO1WpotA->mn{SPm9`J(r%Rj3% z^OiCiKO5{XSu;9?MhXg$+Ru%5VV+x%SIR@GzA!d|{M;AD(a=z)L}M2i0fw5NXbgcy zS>ETRu?OUz<(CQ(^3vGUSs(Dqc#~d7tqV#H;+`xZGHEPM~4@Q3yl4^_r z`|WAQA&@LhGd_kBW9Vz+LWl{(*xPN#g$)Q^1l7e~ooBPPDLsCb%@iMw!%# zho+7IDes}ykX0TOLsGCxZlp0C@lbvFxiXo`s)aUuVGUQ1pJy_`({2j+;$@nnN!Te* z_BPF+8$kN_nCig^)l^BA`EEur*MSrz&*KZex! zv!sDPqkmCKRkE?l>Dd@P#~4W>A=yobDBU+ep)bn8AaP1!&B^FjbF#`@xmeOZ7q*^1 zP-*>mphB-1#2|B&-)PtdZ;^Gf2cL;3@qX(MfYl3t;E8yT{Rl7t%>y@rWZ&Q_9} zCMP|bGHaO?<`oMA<+QS-os}`YY^>B+Ny2PSripa5D|UaeEA;Vs81kHw_~m7EIWMdH zt0eXEAw5@q69k%e%8&Ca^d1Ena;K7fF39K+g;-^hk`yn@=q2jHp#LgtT1@E+izxJ< zVhq_yNj4W_^k&6b%N)r> zCe<~~gr73kGp&KDu5+R4bUo8dI^#5`Z(2vwH}y@wol=<_n5t=1j4O)U(wuPxbTyH~KKn+``lZk}oYxl>t(+rKvR-KBuK=HXs9A0WXPkXax|( z0{LPqQ)ie`4#)-Cm}V3*|J z4yGM+wLpAlm|>ELql>Cd7IZO9hNBbE6`9MssvRcdyP3KH<7qc!H0W-c25rT3hpt2t zuO6nsw8=obM3(e0(e>n+dYU>pt(epkSHP!p4~#jrNr77+w0pG z+KW8uqP(^*qF?j{z35{uhywjgu)zN#Nz6zi`zz%R1K>dd>T?goHaZQYeLCZ!u#`i@ zQv}`(m9?NG#~{>bH^^jgj?vOVBJ`y})K1rjVgJFV8`Pf1gHbEr5D~xq5Tys&q1g8h zkSEnoo7k|e8;TOCLur>Tx^&4h4B$;qD)1h(a6KxwpJz>Ie;X~Wsb*tJZ=sMq&G|l; z(c4nPxwb~rLX$%hgP){@zf}~j=0D)7?}8cJdQho0JdYM`R8`6A7X4_ji>(a?V%jfyqL zpvt&0BJ|!di2hCyp~U56FE$ntqsCH=XqO|kbFAr<^BSEs&O{%SbB~94I-~Ck$D6u9 z)qAe0-vpQflE~2sh$=Oap_Wa=s%(=?<1`7!$=pe%K~DXkP@GSGgfdF|$w;|7*>pAo zDj%9+g0D~B!F&PtkzCVZhJhyknPF<`)H*!FbO-YEd7W&Ti3e!LEbaiAXJhw!&&J`5 zax95}r)mSK=ubGgDSzHpr{21bipWP&{Twns1pHd({7Ml9IzLk>y7NN-}7nuxhfL9!#_+om- z+;w?p?y(qKf4|t2L>pv-{CO!1a>m?zcNq>xwlI*1KIbwVwZc#)CXAE0O;G0Ga+G}t~|+9~!pJ7=w_pHnhd z1WGpI^3%C|R0JKfI2S8FMc}YkjzpCak+e^zT!vVRV0?t^HY@eob}eur@yNIT3~I8{aqugPek*AdKDVFJn4~hUO#{{y)jw5T-alyqO z$pKQ1!>O6D^M8GW#C!rJdY=$jwweRH6afq;1(tO_iLzTy3S=L1fP7H`K>H|xY-AM5 zrbG!kobwa{+Mg12coBzqa7xf{wrG@S9W4ONixyaRlVcf93t0c2M%m>e!1dDt*_>yP z)&7j2!_zpx^)sRlYtEuX!?Oa*LOH-?5#Y~Rfn~MMq3pbK0@>3XAj^3HpxSwX?6mVJ zd;Pqi!(TZ-wF{yS|91f;PF@f+{E-7xx+nk)xhSyg&_$H}BVv`hgn;pv1hV@s31q)= ztZJ799qw}(W%pecb@&yBD1JrIaE~h}u}cJaennte{;S9ua#bL^i37Y90UXx^vVE?h z?7nM)4nO1oj_aZhx4DiI>#hqdyT<`6Hw1tdHw2cgxPh|IMJ#O$0=mQqWW!rl8^aH=Pm|vgD>IuiJg=!cBo?S#LR6W(W-mWM^}LTOvT_ z+XC4}w^26iwxGjN93b-@QHLwvL5b;i1eP7+0G@XRfbw?*mQA>evKK_GpB$j}J%Q|) zdji?0dnlXvzM#Xw_YpAWzNo{yImEa7f`*I4p~Q$d0bqNaz_NE7tNa52Yv2QvJuCvG zJrKwSKSb7;hk_2T=KyIBMIE+2;vQ{#KBCXW*Ik}|w?D#GK0Pv(ppT9D;<0XUy!tRF zZ;dyZ)K`TUk4-d+#+*vSo?zbNDdrbFRmtQsSKlVVG|tRy*7PxLa)AI(9pN0&vYfvh>xaag)jzHN|FRIs7_|dJq9($EY0#uR^vr$1IUmk z5KygTk^Ti|PRk>o+JM59g1N=P)?6jK5!qe=CW5{)*!EXg3PO2MFo zk{hKY8f|J^npH-XmRPi@Wf^HG{CKg9#G*|l%1SKSw5^InqfH;HNHp3sx+*K3uF8Ze zRHG$%N;Rp72c&zdOPirjS4r!d0FES&Yf3cgbg`C1gG}tDw@__~hLlFv#;QlPB^r3D zPzS44*I}qsRwY9qVIjtxV(Llg>7p;|sN3~Jtf7&u+-F7Tl(2mh7v}dKs zN^-e9(!)APEZkJ7qe4H^i6OIeW=TkAM*ppp>U3e1^SdCuZC8ca1Nwc1e4op+I=qa=F=GJ5+#ta5{rqzz*9eLmp)KQdTaOj~a_M4{gr%8-U(Ea^6k(fx?0I<_(+C)q9pl7G5XC>tWrOkC0$2Tx(pG<_B7lyaH2%RO;;wuIUPv~ zOoA&kh3uFl(Qwn(NsO} z(&R^=luT+8_$`IZp`}z3O(Ys=DzY3(Z%Mc15{)$NTQ1Q^)7#||jWpF=A<;-v>!~<6m1$qZm?0Jk)~@Kk=bGsW3uU~{AP(pnpSN_hW8eUMw;es zfv!Z7(_17OX)3W*S^%Z!tzc<}0hP9aaws{uO=3Z&knNHn$kbqmqz0Lm?vTKr=Ne?X zv_ldEnf!OsTGt>`2(5JsGLfB<8f1#!iS6ax1?{;7ncD3_bi^*ua|<#h?vhxLDRQ@x zcG#n&y1fz$GTq#ZZ5Z~^KDh>&{@sU&1a}f=kg4M#l-PWTcF8r!^oYWpK_=^AD5ycEp0wl) zGHr)~+bhsJig317T84r%$TWr)oI$22D7XcgJdXgv*>HVYa0Z#?(}FX|bPEb@K_=}{ z>{gefk{V=+KPss~rsKyX3^Fx8j)c|6@vz+G^4U&ceLXH8dO|exhfbj49}ZpaqzFCW zB%%*dgjQ^ zdtH&#Ak(lbk{V>{eiaW;&1>8NdUy>7$Z;JHL~FfZXkL34LXjl zL8fCj;Pi3^nf~&H+A-WOv-!e}7&<|@2AOijvN@CmnId8(3^KL4C1H^1@NLOG$P|1B zO&)Vcat|`C=KyJU=o#Z0WU}66t$)}KOA>b7m0r>N8w)b+y$^$&@%FSh4u|7P9LTr@ znf}IMC+0qoSgZ=d6cSnVNILD584`~&+v2H=Ymn(lJd^+LFZT=rJUvlO$xVA8_#O zA2Hva%P-^d*FQ=u(xmyMnn<2}lHxNS9pw9;ISWgDQ!MP4juzfeM++}~M+>+7;4G~6 z6D^$e6RkSU<$rMbQoj_d`usxPzF(4ir0Eq0DE?aj=EzuDBrwvi`Fgn0@qyTSo-WfB1DXA)R8KNHH{ z6S1;-A)tkqKz6p5K=ua5(s~OzT-_UGXM2k}9K|6rXBISEIWtO37XglC7FhO|W7YQ& z$WHJ<*$X1TPalD7bzdjTLgx6IUAEGSo-njL9OfY&Qq^CIS@6 zDzI#5R+K%KRUrG01C;j@00#OAWcT}_>`y;hKT>?pfk1bCWVAe$!uSpx$E9S-LJPXk094$OfP9digQTfzYzi2wmP z1(vnUiLz^R3S@6{08=gjpjj?~YLf{q1K&i33JK!^s?=gh>GC zWfEAn!-TS*MXZ7n0)|Nf*)5Vl_BF>UV-|F{lNn{Vm_;3qH=FU9*k&;cf=sWs^r7kEkJ-@E|H@C_czYgU$h8}pkL zXI$q3X6B6BSisDjam5RosWa|yL1-nz7gn{9SzWDeFKpgPmwm?+GgD_=P;ph8OfGJw z&N$CtWX=s%nPhMYGj+z@D!~}w*^7i`&Xj~+M3VH9X13y+`t+uiG7p2QZ>7wtGj3RE zP!1)ZOPiT9Zgv^-CifNJRm*kD`Th6RH z<6_HUd;0Rwo|`kSNqIysEf0Eb&bYYpX6B4rRzXRdR#Z~IN@nJaJ6{Rg$X1#5$<-NG zt1=?yQG}Z_?lgzUQpKz~<7!nAp+{GtcDg#_PF689XWaa%&ekmCepPcG_tvsjQ+jZ* z8us0RaxEx0opF^|1a!Jv@Ge>SO)U`erq_T<0IN8eDcXFk^6e zOG7gTm*X3m)!=gP#%49R9Kq%9H#XDY^2R1+HMo4@Uo#CZ4{d5@!R0^Alyq)$GYc*o zTbkA2a*ThMU%}Q|JXZFyv4rIl6(-du(KtJC)?~Mn;ENj0FEdX=c%? zkj)DH!4`(JZDmQ{t&ASHjg>km$;NHi`k?J*7UK)tq0m?DWXKmvQg|1m-`mA1&AVCB zYd6w^_bBvxdlY)deGIZmN#5*Z^yT|mWrC6vIDqtz2b7_kaZsWAA7;pwO0woKqt};N z>IfAXFPz^d~2TW z{6S89XI@IzsEqyqlaWW7{PLq2b}-0bMSV7(cd{bCn48n4n2kBo;b3Hd=BBF;81mrn zW{GaaG5t&yJv?x#y#z5 zIJ-qd?+VKTEbOje&0%5F`j(s)dINZ;B;|5h=(PSk7pp83$dX}!7WJ-BIk$z~6=HKM z^wwGiiBOUxEu$~dvC4-^V%H=6wcf(+3L6ayy|9TPhbzf(6QlQ%Smkad`6?kj+N`wR z!lKY0SsBt{V@ZD-qX*epsgsgywj+Ir!@}+gL3tGVn!F78Qb~&DWAwOutkRmFC4KTE zy<`D}9#=r2cP_*rTa@HoAx2+W*isK3q%!8^X*&4g{|D(>&u$`qMJ#k)E>r{+KNnH@ zGpnegn7uetY^@{_#hGG*U|#W|78K(Y#S_6y@nJAiq+gPfO(iTB>1}sVNk#EXDW+JZ zG)tzJW{SaOSZTD9M3+H>=9E#T3o-a>BykJ?+*Tfof@7Q6)%=xkxPfX-bk&i74n zr3>;;bhW6rflA#h^fn-$?rzyb?*K!4TG$=nNiRzc4P5`$zLu8IE}My$^tJfI|HKfu zr%2@FK+AkEqTwJkqQ+p(h~+~SBVvZ35fz79nz+3vkm2e?LlTBt+@0~h{~;jcKTAF} z1~!xXA@)Bw-WjubgAtZ!XFmT(nAx4-)l(x;$!C;BeFLk(<;QaQ1EZidKgrH+3(2F9 zTw=6^MV@+%#=1SDQ80P5Wep6@j4|w%bz%(Ovht2)_owA!@&2S4$Erq*V^ufLT3~yq zah7|~19leN9&f1+`Jx)Dl~kT!Np;rOnuzr~Ct8j;dpvoPWkSZpO{7rKjUXfxtzIQW z#D?OnBKKtOR?&_YoWmJ08Fi8;ICU^Wc5 z+k5}n*{J9@2bp!|h|pu_Ao?stxUJ1d=MXjKQVrL&86)RfPQvK`TRljm**pu~DE;v~ zcdOL#YPArnZY;F0wHXZ;!6cD!dfr*2Oj2}@ z0C};cGpJ~nAZ6ha%W0Tink}`oqEB1&jF!)ZDO1DGaGV-?5et3ZWlv)*m*cT1xq>@3 zS61NI#tRosdGjxUs6&HXZl zFGQ`T&xNkbGCbE<2EqsoU1K>&pJ~}=zcnK)HJk+!8EJ7}kzrVe)^=Yfm=))7fV=DH zdE&YvBg=Z)urhToTW@(m8)W0VY@+y4x-IvG3CzNY(Ace6yV(GSlqpn9j~D5<|_i(M;su}RRN&wRe|i!+t+(g+qHwCh%IDpSB0ien)f$Wr9D0}smpue9v zK$Y8q{*qz0QR4V*LBsDkK!rO3z@R$<%MRQ@*f`+@@M~NLGK*D{2WqIR}H7HIXyFmq5$eTEe`{$On2Ljn%4^Vc` z13`!5IDqY;sKc!uqC~_)fn|3%fb>WJ2zey1j66cw1Q9EDJOVn!3uKqZ3uNOsmhG{i z!wnvz?9#`g4qxIBIi3g_uKNTf7K#Apo(L@SeTuA*rvllT93WN%@JbNKHb_9(r3r!# zpWpyq&qN)r_zWecJ`-4Wgaddy7XZpW7g#p#Im(_BvA%PFnlA*hqh1JPPrN``uS7wI zizOmpRHCTEJ2}LcL_x!aUZTYCmjb}nmjcV)aICVg1g!qAQ1+k*kn&0(TPz7#qml$2 zj^qF-Numy$lTo5~vcR&{9N?u0U`P>I);R@bx26bWA9H|wsRBUzRDo<{D$1s$3ObxK z4FT=bL>*p~#y!~HMYwE!ZOKW!NG0B)7iq&=#f!A>BY4r0NrzA9KnnTHIgqw}RUTy% zzTx9y!*qcIX=^&#_aR--0mF9$bpOsdkd|{lJo}E$f%ZSxljyUoR*6*jX_=+IL&p9@ zCH*ga5)I+g53(nW@z22zv-P@`JeW~=NX^xW)-zC#gi z9wXlXM1%xT4OfrR%m6F(7%_)q*Bn;*HP71|R@GzFE2ouuj4tNHs%p8c)MKejv(#3%){NQu;1PlGAU^FB#uMR)mKgO$0p{Y=nu zhOMJaR@H6POTsg#mYF+1kIdNpJQf_zj$A&R%g0#Y404{YnXE`|Y(?@6D;-Byx6yGc zp6cN?%#%8NVGdu2u~`LPqd>b=b>6JCTbI*|m${Cb=dq&eXkT8dyX&ZMKD7A1d{%dd z`Wg=KDjz*zTwO=T{Mh=Y{8n@wZ7OJ0T}Lwt;b@#H1Tt=}qtAs0AtD zmKUQku1=)u#ZaboaVt8J-UlPKUMUZ&^4woKB==W#JTXb0R&UwQf!%b2*OKy_}Uf zk@A;UyGHhvw=yTvf(lrttEkj{siHA9lpaMOx>;S{<@~!QDV6WaIL$*vVb1QYSTj?JC6h05dnO93S=AgMA>CM z1sy)Y0W$Rxb+~*llnCu5u(OV$$7sv(k_)a?$}+0UgJK4%vO?{ z_ZfYB9IHI1Bz_N&e(!;mEr49`P@(6JXUL99vMHX?n?7ch%atVIG19j`QChG1RH2_w zU`YRGENS_S(!-y#LVYD!^c>mkURde+$HR#VdFD$7j8PKpE7tazSFAEi5=%mokZnq4 zZ23&GLjNa~K^7~?gH%SJmc}ZtDM{dKq(6DBm_F={LjV4jA#1#2$?SKGUiv*NjaQO$ z?~%UXgOx3cZ}U;1KmEjz`9HH{@MlIhd|{<-O0xY6qqFY`Mtrrh?+JXqDfETu40&Hk zEZ-UZ%6C?o^9M`X{lM1q{8ajW<)=b#_M1UgD9N+mj6UxVtGuHmroSp37DHRh&=v3| zFB@IhIL6CH7dGDaveAW&?YwPtVdExmo3gO+SY{hr*l6{&DGM7%WU;Y@jdnkqvaoTN zzl|F&GZ&NDU~{^F4jXMxJb?Jr zWTVTwb4xb*`CUf|N-1QiWTT(oy`iOK;xNN+DWty{N~vU>*+xIV^S40hEvaRJrrwez z7WlKp6cS^x(a-PlTcOjbWSL8a0pug{&v{d=XW*p z*x2WH*Ynuu=XWjg+WOKy!h11!l-H&%+&_`ewwiu^*S3(2ets8O$f<3DO$TkEaD-+T zR+un4u4pew?8~p@tcyT!N86L0K z#ch)TJ1E$;l>X_8X9?Ri_fPPimawVL+5#nQ;H_}o536HIo8S|?^{m$Q6TBo^>-Gs= zky19*-8-}tws)))wCDB--a8Imx-{syeS$Zpw2gg&SEh`Te#l67m9?=?@OqVVwqYTA z%h~d{e}b2&BFv;{d9cFGvD&S?Q^QPll((tASu8uE1^WC%JeX~eu6ioGQgc*!X2Uo^%J}wwB-B*uUZwG`zLtQ zpi*t?GA%ei!OK<^3eHdPnnS_unS41#I2(RU3(imQ?A4&)`~e{FWy+S>#+E)*ztfcVzSTnjl z13loXn*C#A4)h!U*i;94>jvuVNh&n7b%DPGv1-_-Tr>P&f&XkWsIJXK&NZ}^aE^S= zMz+%#6Nvo2kqwuM*ZbGTeCiXM+MLlNlHAmG6Tq<0Pa^l5*-k;8?Fe)*#D)7B=*$|JMS^Cppm97Ib7?ed>i&TJJtQ$BcN4#dJefd z)#tWnt+S={xjWdIyD@t0%~~In^`wLYc+AZ0J;v=mXCg887t(`l4i4F29n?-|kDt z%+;yx(+@|rSwB>n(~tJa)v11}ADk&pr+TLTa0<9N)&HTjZcg3 z5!*l;bE^Lth;_3DDRn&ut5?2UZHNt>>a&O1FnaZLxN@ZhjbP72?1P&rBiNP3LW)C1 zvdOW;C>wg!Uyj1w7aNVe@6F{Sx%>k)Zy~wH*h?RT5;WUA)WjeC@Ocz}Ii#fo<>2PYgdE~OsK#4Xp z1eVR`0QW?ItTP3cHJypFD`pC0Z*TzZECHa=EP?FeSt$E(mY~C)vk}l}wy49CImDIO zf`Tu6RD6xBy zz_J${pvYnYpzC6RWt$hH>^l)F&k_U-Tq2NNzeFIL#Ib^x3Od|&Dax*2D(dik4q;s; zXt?DvlvpbQ++HTIOc#c%u3-Y%a1QWP1PBZl$hHkf+4bRq4qxQ}fkf2de+Wt}Ap*-T za)5y40zjSR0?XzsN7>sVmd^?VG+QB%ov}h7dzE7at`u~*%1V@-u~O9G;~XN>DnY{) zR-wcc5kOugu(@=79~cm6;T)T|N847L=rghF z->|IOgsmiQvaubqw41T6%VyivjJHQpe+zi8GF(v?F)!EMYHRKMz>gf;ZtLU(mDyoa z_pH+IwC(h!TQOYRZ<_$VyE+GK%{)?M*lg=H-CkhYAsh3q2OI|18~E*r41T*b@>EIk z9|7lND!FxpRT_@6q}x%O>Rm5#%*MRy(Z>{ey%P+wP)Y8eVDu>`S>+Wa$r*+8_$V9m zt}i>K(2b`Vvb&P(IL+v-&ale0O7iLq()XTKTCaUhpV}^XJBzd1Odh8Qcse8(jE>E%bLJ3OW zV-pm5>*ov-p(IJq8GXqMR{2m#?1?H}ew}Dz{&jmQ^RG`zW&ZWYsm#CLC5`#lccf+b z*P~x6{`GusGyLo0-YNd|0v|H`>jyrff4$--#lK$vv*KUZe*s%EHV#Pm!u;!fzM_BK z`c3h#Z~LbB*Bhmyf4%2-&cA;Ar{Z7#`pc$n9MJ8zP2D)4&mVLUHTY|DZX6I+*$(># zgk80(+XkHWu%j7Zbzwom=o&557e>>YZhI#+X1lZ~H!2TI@Uw~cxTa0Bn?0q%h=l_$-PD25u z1MO_5mq4&Olmz6qs~)Pcx$VQC>Wxwb-xf=xO^|&fXwp~dEqbk;ZWv?GF`1@1CIkN@ zB9UV{`%oYj(W6$lo@x0S)GB$n!OnL2X7A-wO?KQG#wgiUzj_bJ?*7`kLb8K5b@A#SKaLviyhs!JuFDwWf6%#=MaUhB19J}if@9v>KjhA z+TFK?aoE%rZx=qk|VHng)aqR8*K1E8DpZU=|btZ|*EI*<>-1ot5o$1DGq7nb?Rb zOzfnRcvVGPVyY@#>0V7yOs&q4C2O!`Yz;=wTa%RrD#@Xmj86ZSn}pV~U!(^8Q(K|O z)?r9pU6ypI%jj9_u~Ks-SyfNz3f&Z>SA9F1$-mcE=%Ec5@{*DSG-UMS4OyjUBbGF5 z#OQ2itf0pB4Yc*+jTL&$e;H(slHB^2(I+%zmFJbjznR*1`F=Ayo5}rK+i9eb+Rjw(zTuKYNRx87dwlT zmg;I}kbe!*;L&AIc-+1W_; zn`37V%o=mBZq6JOIXlNrcYf(Qm)(2FT;&!*uI~AgzF0KF7hQt( zj$9%_>{x>LfcKDB?*V0&LcuwZW0#`N*`;jcZOiQHhcSjQZqWCKA@*k&j#24w%n#)9 zo5Q(5e-w`7JVY7vwgl_e6BK#Gy4FuSC)5E0G+< z<-c+H;8lp}y9!3qEy}!h6)GliXzOYby5(v_ucZjL;Nxu$VOm2qTtDAww#Kdo9}BOw z)8ONgwRSc57#v}z!N_(JyG+%GNo!iwGWY0ovv z_++@>)IWwY1&^alx8qdCHNZ%Yqm1o@ z9RrNVP9pUamoE|pGHwCJu2CqH7G=i(B<-iZ1(ro1$+#Knt}GovoWmQ!YQ7%b$6u+%LX8L|*krg4eYXj}Q6RyE#E1o5rz9KNEDg<1>`q{7ls0M;s#0b3wyxpQFTj z5#auFfn}x_$m;n*AiI(Sybu9&i2~VTu(iC=vcrVA)j;5co;} z_~(_tvIVbD_P&VamxO?pNdnn9Ndnmzj-^W$bht(`%Fam^b@&vA@JSIgTqOl1W{3dC zQ`{{JPesx{sRGrB9N?k|@GI3_mDET>**R%~{vO}}ztTkgE%6#9#=aI0fXL&I=q2HynZKW*!CVJ`n?wb zBHjxuOXOHZKL}XeKA`Ll5g_4%KsN73WDWW#=rG{`2_Hor&ix4`I(-sYwv+?JivT%3 z3oL8(8D%3r3uNzb0O^YW5b{MJOTM6N!WTh@eZL|g)Xhgm&4tFoo)GQ9w zCx0!A!`+MYg#%R0>Oe2j@T|x@k=3EDQ!eZ0P+bMN{2k~;+To9c&;Ab8i&Qil=6iAZ zh-}cB(~EQ`8<;Qh8W!N7fsm~M4i*TZf69|1hl7SbrsZ&` z(U7-FRo9$Ybv36$-2vuQE(hHK27E@i15EMUw2q9WA>0}}jsbu_UZ z#!u&WI6t=`>kBxj2g|b{3Xd!3P#sNe3pp^3xwnWib0igIGY9*0r+G1l`XXGTI37lG zFn1Ua2jejQ4aUP&z69ona{28g;AC^2+D}U$xj;!IbS+6o+tu3?UXr^i9`OZhDejk^ zd|`VjhrrwPu9Sm%o0!vQOlb#h6jQ9M12>A9SI*(?a`G;ZCjVPrFmsOP0H@2-^UBrb z^tC*;9$LYHE~n5+4%OwElvaOf`-?dEbSR3FXN;Q$pYwb{7PE*?`7SbaoKWL}S z1pytU?F34-v#o@j}U5dkuF zb-25n{^^RcOS%eVFLHo@ZUR7^ZUWgk-B9*+H^B_>iv!f@4(F$v%V}(PlsMa6&~Q2j zsL?|J7}-N$+3_AIo2jRORiP&WricJ?Pl4<&j#a0Zpu>ZDp{(3X)Zy10qD*grW&L`i z!~qc?xwpWwqJ5AxvX4M^2M72p0u<~kkR8+)W#ztt4kvJcg8f7t?$i$@w)7KN7S93l z_7?!!^%qzc(H~`#MJ#Cm0(uP)$gUb7kWJuN1qTW`95N7PR}B<(IF>``2MHQ(G6*Gz z2yktXz_J{Jk=1UnKz1Pqh!X+)hX`athM?@KA%YH{;{g6cMIEj=6eZ>k6<8L{0epuE z09A(xESowEWv_`?9>WpPV7Neb(r|(7x#13VyBNR!9PZo2l>QF^O<;k&$s zjS?M33oKj20pdgezcB*KnvOx)JloDUB&_8MSy_G0@)UmQFirYL5I(A0KX}s4p*Pz zP&bSr)22A8!`F`Tg((iU4F!8#H%@m{&3JT|M^1N?^MDVf%X$8v)nivppYdC2M$VH@ z%y4Y<_Dq-zD;b)5<|d=(!&71?$zD2lZW2G=A!$O>iEVp;o>W=l$VKuma4g9ZdOin8 z)Jz6SiK-sCN!$WPd9&D2lA)J4ijz4D0k~WNz6ap54IWxjWf3@WV9hEIe6t9Edlg{1 zQ*rHLSH)D#rSr1?QpaTt2;2{I{LM0pa)PZMH6uwvxMRO&(RuRfv}2mATMn~xGYTdW=hJ)4&E41iXmLrIASxlCm5I>$EhWqsa2GH|_PiuzXaXT77~{|+tutrO zc^{1E5ws&Chr}2SzQpg8qpJHh8tqOAdb;Ek>uJGg=xHqWwB%{%Y20}k&Yk-I zuMzKbj_ai7`Ha)X_X_k1wge$Jcjpa*Qzz`||DRJwbIq|8#(Kv!N0|FoB2BLgY@T%; zPKVGh>;jbA+;Es+zm`vAWQ^m!TH7bqu~y?5w=_E`QA?xMJXlKXw;kgll_PIECT7xv zep4>r)p2n7Hi~nU(S&|gYZj?jH~m>|_rOul11wzs(2AMZO?K3yMP-nl1bUHc$&Q6tE+M;TisPszma)MpzLT^} zWyB4sNDNPd;Ymiy+BBe~XEZqYwWAB=-F(e>mN&>Fe|BtixfN!FHAIFolw55U4y+_(6xt7_oHz}Zif)qja z2q3bT$WX){yT~ds9;SpLQ=lLaWQM(=Y!rc@C@8CJWd5J$-tS8;>G}QqU%%rOu6f_H z*L&Sv7%#i=AugN~vjLAJq@9lx%wirRGtte={ur6%+6OmdNl5B`W0F zKYWFICn6kwjpRhgeM403@4Zc(>7$(nzi5qHuoTXi9T5*}b;hZ>$3H_&A9q^`U*p$0 z`xf}t*VSh4Sj_m9F2>b|IJHtA5^vDe_nGi@H6O_OxMU<03ou%F9gc&OzZwJV-v$`J z^2IyUiwWvmzFq>e2BM=tem z(_g{#SK+}B2ze472J?Fv`(kGK^)^n3l>nv75@0k3tmcEx9vKvF-`?BUkchwQW899X z?S1KFAKK42#m60Mt9aao3}SJMaTI4?Gsqb1gYgPGhZqm(&dtNeqfK%4#a|ddkfQj` zP~$oJ102Kg^4%Hs+!4ke(v=5a8u6h6+dcbNBaQ2HQlN(fMJCuAePi@tUn%bGy+mVo z1iKF>M;mWw^I*dm<9t_E*n5sOmQhHk$Secwn;;q0j_FlK;@B*gr&g73JyPq=RF+yl zOfz1<9`q;s*E5ZybvoMvcsJX49_?^`4l03WSv413Ai|J&#$)s%wR-c73zTCBZk~S@ z8gqD|h__E%WWwKIi0%2qSNWp$%t?>Z1pMaI?jI*TX3nc$A8z~|m;}E2jTwGyp&#(al2akC zu1_(0xBW(uUPbrEA>#==}l!=WlyhN zWzT(K^zlW@PI+zYqI+a8hY5}IrvQq`vOqkIWd1#(m8Ak%EAb@USdXnRm8Q#%r(SBPnY&bbLl$lav%#Mc#w*k){FKf9#7QO=dFefhd#0u%g0P8zsZq8%3K=X<_Ql zc=|bIyD`?3;71xZFqr<;{lg}2kbfz#n7wtfsjn6yqD|p&A;pvx6dXWK(^fkd*3RkD`v&iYAB4`z{+%3KHh$_y6I!oZoa*GO*92ofwi?vAG@LR749gw zVGplu8ct<=No%n=J%@UiM!r*=r(*m9In0@jGCKJ|@V>4}o;^EYXCY-@BFgt>Mi~SS-wm;jn z9^p>ghkR^`!a4NmKp0#yE*7xs4S)?TO$)KkHf?1ZNi>hPGKC<>F`SaSK;C^~Y9tc_ zBo+o=v^MQ0=o)QI{%95CNy{Z@Ne{?ow zO2R~1P5A_KxT|RkEwV&FMt8HXeRemLQC>Z<@91uNfvXtD>|1(y$Te(FP^kTBZ(N!2 zaTMrbZ(=~KeRW^cC9Td;0Au=-0kK&!V8#GbD=eu;?GpxKE$|Vam4F*J;{-T9$aGF8 zKDOHin;y~AeKUucrc%Zy4>N%TC1IZ(W)hI-D*LP9CO|(tlKfy__m!!JPB(ft489i_ z55A*JPjpU){pBcAw617Pq*Ws4aYz?URq3_OT}4w@OosiU=^IRj`lC&?^;AZs!CB!L zn1l^dLX4hhGQjQ8rfQfFhB2lH!mT#OMWY!c{TNY7x9=}FImYC0bIrq!i(;8`#kp8A z930Egk##c|G(Nx|GR8?Yb8iz%>hYY#1D$ zXu9RTbR^gFQcbW-GUbtUXD7L&3xkAjO-*o?)$?1^KDThWp2Arsdm_|?gOg1$F|J<4 zMxC%YHr}Ppb8m#11&94$%oNi(AMp`(k!^fZ!4ex0Y@a;U^cxoWwI!LeXG}N!ioRVu z*i;3UKN3i z=Z62m=KKa^({5>MILydLHV>AjQpX7?8&%k}-)K6BgY=z{yqP)Uo6V*|IKAGK1XH(| z`XjqnTmA>TUR#mfsC?{nO?J~5_j)d0qugp&VSC?hnkTty(hdx!JG>KjjtugJ{Qa2w zHi+0&v_l@V%d}d12g>d?%`WBY+c}$p-70JX_HZ`K_8}X2te|95;XqL~3lE?|Wp<-N z?GB>-_`n1HIjF)RnOSj_Dk#GO^z2Oy7f2`eeWO=9dZJRUO8xzoZ@>@g=p=Q zrZ}7pN=`|JuL?{xDNVK(pl2`;lHlMO$upJC7G+~Qi)^}_KsKGuAshJ~();IB*qG0o zvUEhb_eIQ^`;c+flmXK&Nwi;ILa$G}rdZOqcrNMpzHC|xnG2Co+Aqk+^>*Q(e^KG| z@E22KiBqlLWKN6F$EU7(GimI}q}DZ=$;)e|v96aEPr0tb?dgxLN*Qun%tHceww`^nvd3 zKA83fztn$&U!41(`djQd@m*`jw3%@Httl%2<;K)7=w^=oGDdrbE`&j+cc$+>FPwK> zFwE{}9!(dcU0B~Tavini51__7Q?UJ%){HMbXB~Ys6qb#Ohx$I|1}HdnmUEKLsrG|D z<`!CPh$?1ohNm9I%%HPPfVaiW7k!T4R#k}BFADDanQ2d}mcRLd&iTq-HozQ9IGjkb zeOz&Kh!zU>goW5w1e&q8II{r0Y-G;RPK7m%%obQy!aNW=9BFy7LP>LN-TJLC;33Wm zk2f|a!LpL({&+Pc$Xs1FGZtp7iRs{L&;)%9`9Wr5g|M)&@bK^mendt_MMuZP#Kh7O z7Z)ENpOBD{n3R-cNKQ#LnoMTM85x!cLMd~wHVvwmGSAZexeHE}GVjw0FeBL9O=s3a z=GL$X2n;cYYR$0m&%|&T+0^_ov`Gsn33(yrJgo_mL(OqoBWR}wgh6&F0vcgmGjln} z3pGb;Q(^F799B4w28Y4vP;)V~#D!3Esx}4w4Klkhv78!@Xgq0I2(o*OoF_oF|jZx)9g>Pk>GH1I3}4X97!dB<7{{&bO|?y&K!8# z5B4@UN5k}Rb8){@8oaSK9=;DZCu-whSGakZHU_#zm<_rU8t9l783*4-m_uPwT4V{> z8DXw7Cq?VmZmxD^x=;1&b=mLvTC$E1g-E@gwnuYuWM6;uL8)xWU-3%-rOt`sQd(sN z^i9zkG3)9t6Q>-|Vq2Cbc!n-jldLTn0i7$G6T&Ma!En7^Yw%e~3@YN+Fo?PzQxUF4 znggP%;`b1JeND0tesuWp&7!7Y*zmF000~j%a$$Bi=~pEr(xsqOOLHreI61&eitTPt zE=ACsL{ntR9q#rC#o%gbzZeLOHYdQ{D0E*CRH%w^z6YEU<`~FJE#(J4MVqa#^NZre zAwI^uM0*hW#+uV%SByCTZjlA8ttaY=x1ww*c5J|Mw7 zU8|jIzg` zA_OM#r|`yTo~pCGuun0W<2|zZFS9v}XLDehc}kINE?(N5&9h5;XLIo~ayBQz>@wz9 z-PAZr=}wf=tth3VA)_oN!-XJoX+KO^vsr+SKSd@&URli9bXZc>m9z2CvYdGZ{LtMP z47Ol%187>_9IO*~0uL#Vjul)9d>y{5fCS7ecd=im-2J%%dNSvf(GNB?GpE776_ESe z*^z!Q{Jc+)M+Vo;FsH)XPmQI(KMd`WLP^|Mw`~q=`^a27WUd_e6N*XEnG6p8~^ zGBJ$}(6zNW-d{>3cN$O2L|-JbG(M7vk|x5==4P{B0cBr;l)paldOZ}3iH!w)b=>AH zn{6(qeFk4vG^fD)p2iX|r9dA5dD-Sh@T?+g#?$;1PxFSAL2@mP5tGf%K~!hWBo|?*+zw>af&W`U9yiB230oe!zr~D#eix<7)-Bh zZV+7^|MaQ@)Fjn`W??_OS^TdOu+t6dQ37_k+vO7Qu8KJ!Y>%>C@*l4Udtr1{xgPXr zWw!bqA_J9x<*TC2J~*K=WFzBGAvP4@NfjPmW1{`kassVT2D^deC$esDH#-8aicge;en>|~(iB(GXf`9qIdP_C(> z7PM;WQ41b;m4W%q6lK8j9~B_!qyMe|O|e&(GCscfe`fr^=I)GN-Q1n=r~g;Rx6k&@ z_%?E~pXAAIY9S{(_UWncSqpQlGUM?sr~kgM2?{v2-(;mKWiB4dd?&A=b!;DaK6zlt?TtBGD z^+R}>a^2^M4Ck5c+GB96H4YErTjTJcY7O)IDhYjxP-~bo{a6uzU9FMb@;2ru-*YIS zl;MCG-V*Qoe`bP&oC(mb~YO^Debemm~nUA z1{=GYpScDC;#6Y@L)piEA%!u)15sA-}J`OBp;^N?PK=3;kICm{j)yirZ_KrWZ&G+{7s;5 z-j6Ld+p7*YFUgBBboJHHapa|+be@_aoirj8`U}ZP-j{8S*kz5cPLt)>0$FAuOlVSU z{lzPC2_d7180UE0TWzGy9*J^t&rjd)p(aLSZW;~TEumtXXSJA0Vq;PX9+p7U)GMhX zWC6FKcm=waRB>)pV{W?N$X|PzZK@ut)KE>R@Y_z@m+^CwkpU;q>pZT48nDQnEyB(q6~m3^!ERV0#nj#)G+e1t zDu%1ynK5ug=~vdu{i^{iQ!r) zl~9InIHBT1=rH5@?;-W{TKN@Mp%?`T15U2G?}y`RB3>9QGoBKxVzC6dHk$(Xmb z^;0gBrXvwL&bZd>Gc!w#>%<(!)oCQFG2rAA+n0T&2HbHV1ID3RsEXAda}Q|#maNt_ z6s@))R3+N>j9_$ZesCsKCE7ZU~UCD$otw@zUyc8eLw zAPw+Mn2NXR@yj;JZl@X7KJOiUPmSxOo{W~I6N$)xldn%cbVd#MmK?`WHeAJSJvd{h zL<=&*(QY~6Dhll3_7}m1bc&SR(w}ktx{yp~m;#g5I{ejS(vM=m&gBR!o@Hh$7op;< zAGoTHzoB`AinpHfz!m=?O6M5cBU^;?YHXcc1=|lKBLhxe(QM-jL6ItU`$Mi*cS)uTOo0tI-#k>4$$vOws_9DFUSxKA zqsBF&w=8{PlnU3YJZ>GtRlLNw4nO0psK&Jn=PLSBnlj+zH5H#6R0A&lC1Y%Z6Uey8 zKw~1W50-AEE}V%%vn55VIR1r|(Q$TztY{U-SL7iib|*r=Fb!%h?XpTusJ%Rj44;y^ zzcRa>M7Bjbg-+b-R=6LnVz)J1e8Wm2bcJzk{4PFUjq7V}WK9r>$bgeW-fTXi2K*k+ z9|tUqQL$S^*`E?ESQ3MFdk~{yH|-#9x0MhQt75k$vVuKGsH;qa^OZM+sR-3sNp54&Sk?ADxzknJ-fbX_78I<~>5^F6sjYMhW!#3u*JFe$9iFHXfY zLKAjbyhj?r;5anRo;Vd5OSWKu7H}e+A{DG|B~GUo(Ye7avo+|js=KCgrkcK_(C^GL z{o_@*KIn8ze=x4%)3BSD z)!5Z<$AF#dNJ$2q(&wY>-_(F}gE{4!@Fr1ZcG*6fUzZdGZ4z3nd6J6DlZrDy2MkJ5 zad{r+qxpgihPU(6tX%)_x7un#&E>!r0v7*~fZ>fA*M72ikZ4fhYU6|)5}`Yct7G&~ z_3hGT@XlWhSeRFjmPT4uz8j6}x>S3nmeRGX}IMW9x$#Ks!!dc#&r|t zsu@lqGT@X>pYQli4S1(4;&51$qGGplTwhTl21`=VZVysa?Djh^Mh*y0Rk52-U1kdF z&m`1Croq<6*PUuYJ?6Bmb!kNVh}msXstVUUo`@FMt;Y2`UTwwCh|pukb@Qsvj;V1y z-;9YU_NP2$z{&A#x{p%>{()1rK|iBPVe9w_qh%N%6}G`fG}|7diUM%?OyLMrkdV!?K@3^*N*DL`p?Os>eO4 z0j*g@Vh8t#4Qk=#B4e)te%V=u#&KXVqhY3*g#hJpip?x!D8K)T-(4kGUUj^{1r`fQ z^_NWG+JcJeg)+;*&{^%_xIf?O_i4mWs zVz=yu4AKI1(o_|L#L_AUops()Q~p4)y%S+o5fik7MAf0)I()d z#-z?JvihaUsz~`Qk0|jmxn#T~W$4zS6W@CBhA+x`rrUb_UPR^RoR?t)sXURX99&LC z<>2?2R8Bo*ID<^FkGav#lPw!eCh$p-^JnN+PNl$A9mQyAB&6;#B3!{u|p z`U)!I$MR(Z%~vGUREdyz^Mn;^)r?k+16v4KgsvGvc*-C1`l_xzrtv)zM;3I-P|?7T z@7_2oP`^E$X|N$frMUa?`K=S*h@eI(n{%>^q`1wKCLD z815r3pbfssR56^DU$*WhLNl1*ZtgkQT#f5a&egDoM1;(WLU?HRoXf*KVIiTSN?Lv{ z%TbaHHIo@Cr=p6XR>%S7ge4VKOumX!vOFg#W-&uOFrBk_iow#h;C&u|qewpn4CN}R z80rKk>wu3cd6wueD|wckpS-@`^ZG7S7BY(Lp;;R-L7W*dxUz~?f61wkNLtO6vk9$evg%_d9U6y23%N#&Tlmq{33kK~T4bP%2bLY&wKNI9EcK8iL?*?M}Y<n1RDBpXreFA4{sMs;HEn{KZMd~k?gb0aEk9)^yEthCP<(fh@ zmp%izSQ_}crjQmXOIwB;N7{06!04Jd(mGXBDCNSN#*4ZE?jxQ{oBgtRR#42WV0N(7 zQXt;o`WnDmOM%#rZv;B_(cl1=2Qf)Zi&SZD4RM;VW3O9CXGByO)M&a%#d3-pH z1AxA^g2y*9k5341H50B=ZG~`c56Ot5l!z^E^5$}cxP~E~RwCwzGU5Xz;uBt5rTYiO zwNgL|o$svrNi879r863qQPin2;LxOo89P0JVQL+rn#)m6zOSpr{1>+fWM-*Mu9tB;TA?pqF2ZMw+<&B! zS++0%cV`KubVpvo=`5j|D}j5xWPGeA334lg%&4y@WQlw+-5Clk>MIJ_$*(wO2g0;V znC8{*PwK#{k6jTM^G9%PXhRY2tD$U%D@rcsc$hhj@LI{`Chux&eiXOc7-q8uijaEC zW5)*l8z>^<`+Ib{Zjs#n()#oshB)wjg(*(O;d4DF5b6uadtYIS_VHY7X+_#0VH#G~ zGaTmjb|~!qDTj4{wvmE)PZJ}-R*d&bBus6d7k{XB$AhV+dVG%YqLYGZxq)_m4 zPE3R!l|1tKLbF4{+s_nyi-@ivz{F@S#V|-}tWfY~S+1b8hiq z0{;-xaH&WGY;?<)cH{1jyfN+cH3kc zksW8!PD4!B;HP#EjtT2OWSlR5C{!Z}LYgX+nZT8?Eg}g{N`yjI_>MozopMrA2F4+ZK^8p4l02cAN|M|7YN7~rn=#pXH5012Vz3!s8PnW>jm;EF z2X*PbHf)X4F3aP<+3iP3^~ILRO=&!X(RaR2d=Dl{7AuN1XsiG z17V(JnClSJrT=bD+kj6?DfGXD&Ccr@jdc^5@*LAYsk!I!aAtFb@ilyBQw$-D^GuOGxwYJ>ZL~ zl{Gb?MK2*8_Vf};6q8!)eOn3ZwTXWe(`$Wk^A^v8t8c3Hs+6y9v0Q$CGH%{hYb{g_ zOmp3@48vOsDUmme=`*j*oj$)*K!8rM(Yryu_KhG|OKG(MgWPm((X~Gj&yqL(uosV{ zHvC!-TZQFb*V@pvzYwo|sblTEXin$XI=2lPyv^&{;Wk3m9JkzT_(@y8)-{@}ZMTZ) zi}PMcgVrp-?}?QoOgoW?k6UPe$y2lqY(u0MUPyVj5$VfeQ~G#vW=OO-?93rn2<2jh z9xouQ^DlneTS}+%6YfzaNv^+zOp$BQt2PyBAxl**ow#*k>A*@j3j zypZzlB2w)~x&?^j@4+bt9ZK8JPGW^n9y$&u|gmZr3h)(*%keeQ_!mJ*`5N@&b47ZvQlDUI^;b-tj5+S z%`vjI-swQw*;Yi_hCoeVV0R%p^!*DfilNnN%2vbfeO3od+d@p+S_hnaJre{@$k*=n z-F?H;vEbVg@g5T1)rF%xLlA1q*Y+MbFx-pg7j*3r;`ND7_eGkD2!kK_wZR|WKUvX> z-_4Gm<;~a$={!a{SH}Et!!z5UBVBuf*DAd^KFLeAS^Qe#WA$ck@Zx`>lTah_X)%4E zT&2rpX|gt9gINpCMQQl@o6bU5f)Zd;RZZ3-2|x-caX4)3E<`rA`i@(JJy9iG3Vo&^ zx4jmU!-i69ZcTTF&_Q{Lt?4bNoY;*LDe@9_cNSucJujwjQx~#&3Q6#~vrsbuzq=$n ziX>uz-6CHpP_r{pMr=TbB!7Vp+0$JJfX-b7educi)Y@*y;5CfwDwOqT z|Cls<4L@Uh!W#wrH`u-j8@O?-KTAeTdwnxDg^BM}LXT>URNT;(VGMe8Q!Q|1-zsQ# z%SPJRAUmk9WYx4s)7x@rrxLoM>PjNmV{sK(q+ zg{sN!D#h?`R$%xvBc#Iz26Y#rLQ^W<{st%Z72V(v-9rWaSxtscGiEn>W()DhI-L7B zKX+m+?}47chR1#kTI19)^m;Trt5Txpz_>p&*8c#Dc8gVC5<>_CIGr<1F3F~?b@i}fy7)Cx{Ik9bH zpe3Q~mVO*e6Rz06z~}Rlhg(Be)ae#LF(mw1I2gfiRqLcaDc-Y}1g8j1E5z z!mP^fBLw<8uss$1(Y22d`3XJMMu#I7gJkq{KYbLJ{Dsu4(QG|8e?6Kq1nJ?`t=4kW(*JOo)h;w`{P2{b!1jr%tIstM;a;b`QZK#9Tqnd?N%aE&Y7N5(il6Z z5;JTnXNS8*bck+D+YCRwwyh>BAJ3U18qKeXaTDS^#^B}A0PVhfXmHa;l0DmHYTGPWG6+pQs-F;8)-g*V zaOz(SNfuaqj~i|*trpCd(5f`JJx^ue1 zYZ(c5R3yRNNRD~TY3uhLv2c|LQ+C?x(VSg*F5V|D@oe)Y>sKB5yzW|NeaC!-=f2}x zU9#tBtBDTj&O_W(C5KlzxBBUB?zsgD+*^EK%NtkPu5v=PfkI-sxDdrW!YyBB1QXMW zce2wV^4P+tcEC6I?om@A&wwg?-JCW6>9Dk53L&Iz5sSiK2T~L+Qpl5s0Z#|F0S+P< zGTTM`p6L>A^)1JB`CbuE9WbXiVS^lnyu!06WT?=05Jll)1;=>4VI*6CRuAcr&>UbJ zBqWw~DiQn|OV=^486d5Tx)5wOrr8_h)7N2B@CoOuda`CNKD1gXF2RD(5Qp-3&Rn{% z_gegw(~x`|1<@gwq=h&#k`7+E9bFh>#B;*n!9rq=xKz=Xf7gvc<1BU_wg(y+XX#Gl z0&FPrXHMhA%;khb2WqcuvHzYH;bft16u4Jk_e_Oo)S7oI_rhKNqJ0y6g!Bkl6JZ!a4VbWfzbhN>6C|HXa z2ex!-t%k8`48euq2e(w|un>yvM+hG(q_!UPni*mEE9siXaGcQ<5r_^PyX37y>bDR6 zQ&x@opA#9L1~)zFa1e1POdYB+%v!~b_nN?@%c5C&W)fr{OtsN$@WR2|xIR#3sj8 z@2+P`4Mm1v#ZW6mEOS(RYE{$f7Ecusw;1VgbV8N|n-ODro1Q(?FbcTOH6Lg-dI_g9 zqS&^utcqOs+kBRhjxCDxxbIcJsJo>@%4XbQma^)j5t#J0tt{!gj1VGoG&eXHZ8kaa ziWZ}{5YL&N>RbvU>GHhlaRx3-Nrbr}HN1dfVRzUO--_DdIrIJHpU$Oz!^sTkvSV$I zFOB$VO-t@L5HWunnx*_GpXzF6>49robSTHbS$RJrM(@f2C)6{`i%K?C8CeR>CZyxn@qX84<4#@yh5kKkw~nlz6uC z`EO5#DE`G5YI-1w1HStTvu(s1R@%m?n1Qe`*loN0^g0W!DdyuJnd2wcpD1xT&4|kB z)==J*!`(ePEXah8T-0t4YG*<1@SHh&@x=_unkVThsw5NG_!%{zc|K?65jg>5d;>a+ z6jF6Z-hem~@50#Y;NHP=#YGv}`-oniE9$^8Qb^G)*$X%EtQ`UVUkfQYqxT^WlFGw# z=Hl$>Ul5MQg~JTB=|6N3F;fV?1X`N#2Zv^M3iS028RTVyVSIFy`YqQ+MvjWg=+v@=7FMGVxMLgPMp( z&?e4zs1p8BaqooI=cEGUB~f24k-X#}CyuizVmc91(h1L*7Y<%qAz9U{1Rm|etV+AM z($R~#g)}uyzz}2t5d+wF+6AV=;pXW?Jgp5q2cvU@@SZY;j#mbH z$Ur)JGt5BL>jaq=Sr*_Q6(5dml1-*9@G@=xDh#iPX%W$OlJ!BQL>k+kWPOl9#6CzK zJkmKU?-bUq`MM#AMBlqQ3u#5^XE_l=N~J>lBXj!FrBBEj-l_Bz7ftl)wi;@D==BLw z_jnvdE9*S1=vBAyAqlsK#&(EVM01!lDgf@!#={Se*22TDDc`c(3gLk;$N1t~OI14#d!MDP1Y`|&5tH~Lh z%3XQQ2RGiOqpw>hgo_qAI*l!1`xqf8UA%zkdAx62BAcWh*U^oRZ{Hb%)B47o(ae^N zk_9*F=@2<2rlRd4)Ep}$_&Y8lWn3@pJXT27;d>57V`IAQ66wrW5t61eB4QS|Q9rk| zaCj`5RJ@Gfa?c$zfrH~FJRJ@B;}ksdtw=%HX){K8P3?3VamZFFW^dpv?ae_ zQeu$g<2iF)wZ)Irs^4T>2&BV1jH&wl%1Te(uYNiD%;>qhzb68g;|xL0@s1hnyEg%< z=R|<&Ii54~FZ~ul_}=wAtSQ5%8wu#J^k-)gYs3}A$8*7z96x=)mOat$@u>*5C(Hbs ze9iF1hTPU1AEVv&8^h1XbLO0@Nhac-?Nwrati|xX%RkC3UPb(hSVFGWK>}@meD8az zAsJ^Ff-Jxn+yLG+3K5SYffu?)pgmu)kxtW?me4coizf&X+H&5by`^XdYh|rwbOep? zv^eKu$6P(`7r~8*f}sdX#o8K;p~`=ul+P6mQQl*`3=>9IH7(qjg)%r{B*H{^OY*P< zam>#ZYAPO^X9Jk?G>WSU8*>FC7$*r4MF6f5ZdV2{1OcMFiC@4WjG>lx&RmKAmPvx4 z2#w=N!#a&~FDA-u+yFZy3+u`k}jS}rd^JNb&d4y{Fp^%y&APReKK^sNwGW9hZV z^t=VG&p4InYyXt6H2;Ne84BwOeMr}QzRl^lt>Av^KhQ-VUSWp9J3?QhJ-d%_xBaa^ zU*PIHxv;oyP6s_pK?go_kv&<6uG?~O=TErq|0vMq<$hUsjf{SYk+F=#ym$N~)s7mq z+W%CV8$d~;YjXzsUo^0?JtPqhJYL+Hp*!vnK9XpxEsuEz>HqY-krUF0-wihB|bxb&@%80g^rFYXHOo`T}u zTv`1j*Oq~?UQQSzallw%tmJN#mdWUlDklDDn^bM*rOevFRlctf_ZctiG7al=rm_bO z@qwSdxHKL`s#t_(;CKIvpUKe>FonfyzOJ|V-z7DS0?cJem^}d8zh9(z4ED5#{&S{T*fZXZ$@L5 z#d5*dGvvB&At7u}SiJWBC6aFhIi4tJRLk+So8cgjd8OU(=Wr>A>Q||-=ms~&Q$PI= zzH;3fKZp^Lz3vi#ud0$D($Spt7hg>i4r+By`~k8&A+E?)wNEw!7GY?fAm|+U;C!AC zmfX&=wq$XY_i+x&V&ED$OW-zq8XmzRXokuS^-dfL8IE9T_`%>sxP^TVGs#(~(YzNe zeWa)35jphU?Gh_IdBLa|Lg^rarByQgWI12skEaS@Db?1lY3m8g(zA94CYQ55{4+y{ z4K_T~Xx{Myor@2}6Q{p6E~@5<4K=>woTecs{AAhQ5~sK#oAxyta}EYI4&pl|U&A3s zFMD!e^7Z3OXwJ4!Y$o2H>tyiBouBN;P=o)6k7^9ieWs9(udwxp=`)4cx^jOg2gCff zOezDuP>&Ap?q9ZfE7Y!4ceJgk``8E5?JoTs98dq;2h(xZ|$yM?4ot?p}L;PaAKBFI-B^E2$nus1!Mj7WhT|r zcEp>ZicGW|=wBx;*eVA}S-Io<^~KjzXDo2MWg7<@=U|ZhdiRfTPj1W!TlgN6vmcC{ zjZP59OYq5Ee`~o~4So;}SMadHFSCX8s?PB$nr)6Le^(7R;sb`Of$DPvp~Bt?{?b^w z0MA(gkDvqIYEon+f!?`c+lX~-7)+aka|7E%k}ppA9)pW>gz7pmm&tvlR*0&eU$kbt zZO{;e^zzPJA`TR?p8hl}Q25*3^bA@!Bb28kRt5U`? zd&yuC^AHRla;Hd0z5Y{1vKrOud||=zL6{0RBJdZ;*`#Ae_yXujvI>tp5%rE41!waQvG9le!?lNLN@Rcp2@iXw$C z{<{_<$D_K|JT1Or`SyHVOtj@m(m>JzmDH}nmt8DiSs=s(Q_8t3qc{WlVr!9Vx9~%z zFTF!%fe;B>7YM;soikK|VtT9Qerguz&)5I)RfWi)60u#2F@m2g$9F1pUbp>Vk|!Pb zV4+aDucNG1vlXisezI&cRS@?d@^9mb$RceszolJFWTo*Ts-&D5$))iJB#s|?#{K$2 z6;r&+Wv0+1v2JVzk|S;C*&F<1IcG8BH(#V;{PZCl83rv9;z}ru59<~S=4x^wzcHBs z;%^s8e^~HgUOJS+Vfrr8zKCrObhTl(n_$Cm8o?I>FTaEeHUaP62!W0^d|Qa3eFCl4Y&hQAK+S3>!2Fy!@9|PTEIQVUe@Lr_% z{pcCk$5~rKwWWeZ2|IeJP$j~R%VvTLv1&Wv_)?*a0(8zY;r%M!RPSQtw|3BK=te9Z z{*$Gb-Pad`YBxN5FD(qFEfb=P;J3k|>ij?Odn5iH!jFK$WkN}XIN-lrsI2_{-g2Q% zkty-*Pmq3REu6Ls5jw*|$X_m`E0O+KuA=@BtZGgu_k)M}(Cr7IiV}5+*LSDa_oNlV z2h}Wc1O-_!TIx{Lu*e~U(O-Cy4v~)wJH%=j7?VxWr|!fG$Qq;;3Xx8y(@*L^srQ^Rf0KGo-(*cuhM;v&}kKWJZu00 zRhNO}vox>B`_W&Y)Tnd*OdKZ^nO6{JYY#ZFN+_*hJ!iG2Ve73H()^aJ_t$sn3^Ps( z&6en_vbgL;%_513@-ZSdD8_SbD{tj31kIAA-7w~Zr^j}s@&Sq1o4T5udV zR|<)+W3>=y5%c}^BW33dS*vgrD^hVs3^TTZFKV%Qv;ZrB-%pXLErT zGmS=$R?pjp7?<>E9f#rQFErXWIAu74mlLU$#znEuDm@axdKHh~@k38A z2mYu+;wFX%9TupIm)jGG1Vo_^k-!qENyNYLgO4)%>wC(@Mm|?6>&PT;c$=*NMYGM( zXfA!r=sO{KognDbN+2tLbd0!-%pF$xQcjIdYWVaTcBca0`Wskm*zF$sQ3wt^fEGeY zv&5en5vWmVs2UM^J-Y!ELMVwy>wrXLJM3BKIi|e14#%2Dw}bzB-1-uCNbUv8dLf|5 z&Bg!np@i);^X(4kyCYm6-`-^QQ(Z3jHkaZ|68W)$vJ&f3EB$nw-Y<7P}%yyOw z;6)7Yh4Pc936@b52gJ#pd4 zMxk+4@qoYnvjB#Vt5ED174l5y3CxOywJf`CgZDS#^RW0FGSN=foeK9+1Ao5-1Gm6W zn}ixVd>=l6r#w7&|DhUqVRg>_0i^y!v!BDz=_etsrMJ&$ib#iJFDqR%F=PRdb@VWH z8Q5y@bC0wK;CCD5yJ9SSL=pt9{iHIGvwp^?Yv3I+$F=Xc%|ZhH95dA1EW|bPt_QhT zFbwp(+);mhh!clwbg=*FoOK!7gRuBX2Or7MEACkuZT6fb?A0W*V#@jK-2ZDbVB48Ji^;$K-N0(8a zxHxY^2Y2Oyhw30}ix7jdWo{*7oRZ{E{riKdU#mH?d`HeR%tywvNqDCvywF3PrXBOd zgPU80#udZ@t`MHv{`6iGyP87n_3g56;kC3%Xc}uHF7v#d zB=c1X3kr66dhhq0WV~zaV!d6S7hCM2i`Uu3^?0$!GVW)!7&8%0?-JsC$?dTBh7hY0 zoe;Pi`+IkVf(pBZNS(Ei*`m{K3`&|~XNfmdf@4I` zoJi9rCLOQg_m%iJe(+7?{`zTwawj66eU4X%RHM90-j9XYJ%UZA?FFOv3(X;WU&WG; zlwV8l(@E2dhPLg4JxA;eup{hAsZ_%L+<^~+>$H6dw<8SNFXX^?uY|}lY0lF5YLP;} z(PaJ3J?zyy)57RSSQax53c=Zz(YS{F8qF;{(-7Ep*Iz$S9umsu*R|UHp+=g1)ybwH zEhBpa(3No7KZVAJiqEwod8C<&iD$<3VYtc|m zI{KL?!%Vm0qJnI2*k&YY!CL@Ux}A%=yl_hs9GbzE+J$H&nRbB7 zhkB@cp<+1vcu0sXZ+qykZz4~SY<#)Mb(_2VoB@9xDg!#56q4wdY;dz^<6<0bmN_g0 zmbX1p(5T;+CjrNG;KCXmB7Z!pI%FL|8Wih~8IAc8jmHWaPy2b&5M>(tK`8|d{Hb@8 zqxwGwuiwV?lPc)DCkjH=Zj6wu5bbBuA@Zk=GDsM#2TvK5xFr!*PUWeBN`yQR$|u~U@)TS?Yxw=-0o|eVNg+`RwO34+ zIzi4%PU)3`(jSePMdV4mERUv=PP(9omDfz9=b=rjaYC z1|yW;9gBkdqiHuNL1DxghTphAG{gk&z8U>o#2qyTD+iW zc#t^onHve0-vNfkKsQGg!;KMq^)up!!K;&Gk1+}&17wSG1zbtY?*r4wju|Uas6MpJ znbus7u?jtI50Y4GWIY^>nJgN9!SWMWX3DVT$BAHClFUp!yjtoYWY1xq+vs$#Vh>jsp@(6VQR#3b9~0R4w@%F@2MrIOaYQ07LZS=u5AVTuBQcFt`I z1goEm7mg)y`w68gy{GY_?buDnxCLXQX4*>E;N4xWWjQx;aL{hP=)`3e&ylRtkhO!~ zPH3r*tOI>C$%~o&tp1GkxpP9apP>!)sqhf75^U20^rhPJdmdlYz~vXbZ*d#8R&sKj ztn-Lt>4(iCbU7~=qvYoq={N2S^AI|Z+!i2l(C&bZ=Y^;mj!y}G209F_nTO}ZK0`Y6 zr-fDT8_ekU@2o@xfhsu}l@>d2{ezA)Ccfr_73>dbIavG-$p#}?JSTRFsy2$^!21~y z`rSMmkwu_N*5a~o-&_!){KOzhnFSYAVv&9o&oCeHW|BAzFVR~Z<6bTfi;U};c}y&yFZN2AsWvv=gKE$r-eT##12$h2 zvMP&ncq-sIF+MwdyJsr+OE~nCYliPp2n4ER)k{L?(oB$bNr?30`Pk_aI#j+#hJI_z zU_%5T-Q5Tq2*D96Ma}U`LVSw%`oQFo5<`vU4wDj@6u&H3Fe^T|Os1KqFb(}Am~{y< z!Ny9?5-zD0To&SV_|oJVcQGs0y-B}ii-E6cP12)>G?lHwC9Bg&K^)LLOmwP7Ht6wz^t`(eG+Gm!TpERLL473DSZV z?&y#M_sUde8D}>VY!N4m=ftY!dB@bq(obwzmm^sOs^ny3lm2hA-?IYu^{=R}cO8*# z^QflPq|IZ3SW8KQ!p>hYt9kwS^;aRj$bN8UB`$eS2)@ErPHJBfVw;FI>{jHkmCt`K z?wYL@zTY=tL>#?YV9+ZXXrP1HdlVL55h_*4TY|;>v18g$f2<9dc+w$vD}!*&%C=gg z8OCp&bOw{~h_n=u&d&ACQroEst&4RU$N#Q1fDm~2hhVOQ`6wMU!ol}1^8~{4XZKg1 z`wOKnvSii|HxlVEtnqxp(p9t64T!c2#InOt~f@`Sz<$`i(?23xQ_kzvTH)c3VEwgfSgiiBgj9uy|krU zNE|g40)#8H6{TOsg6h{*v~A5FU(rDS>q4Vy;u`J^Ja>5eZ`H13+Cnd8gyZ~H!7M^z z*6=7!X6djVAcfa*N_g(jx7bgiYK4)05yh~@y-MWdl+u4=ltgK)@*}5&=MJy$e?V`D za(PX5H~ox>VXK>xHByqPYzf{$(_UwmxQ(XZ?aq zm#-2l^9Dl~&sc$ezYA^4iyOI4c?S6wMX&?=$@5FzY9&UH>mxGibBnL zF(E`4{0AxY6H>+(7v$l&L%q;Hw~)2GUq(VWbT6$O`OX+psC*q9$Q?D|&Y@O4=+x%{>Z*{bV4#6ojWtNF4x ztNG4YR$2>hVrgYJGegjyLVQ>6UaXHrVyUt2WmWN5AXP=5A~!lbkJM=Bb04>Gl*_vE z-scOvh94Z4O-44Z;FL?s88SZ}R&e|sfJ&k{(9K6}$VDSC4tnt^}evX5JI$oNYr zEfIN*Z0Ym=hsY!(QbaJYNOECZ?EZ^9zMaPso;xJo`Fpx&ez3tzFwPMy>vfu#V+_}t zz>MAMmJnT=<;xBvLnRZ>9iDcNxvy3-Y1P!(L#r9ZBj3r%>_#$`rIMMq6VWd$syv1Y zp5=SSO?LTTXi~#Ijb_$zE=3}f!f>0Ghj+0d{Z~7jszZ9|_9Tl|Gvfk7c5-A~kPU$O zw}oK2KhD36V=V8EoNh|8BDOpsuqN?n!EiZ~6{khSXG;(qoL8ru54XPNIoOm8{7wxq=&dPAvEH$iZ_5 z`zL|$)K+}>wcR1^Jx(s^4h^JmI*ln)=Z+9x)txe|!hAf2As9l~63@@IDw z9r8KlTAyFhQAO^iXq=8J&2itzUwT&PYYc_(;{-H_VtO-Xu5=HGzHXW<8Fz(4V+ZP^Lth7ES1-( z8#orA&()dFt=R7Q+C;{w@O_Fht!7Isz39@nNEyEn3H9#_v7t($tl+|c`@-@>+lc^u ztzbTLUoo0l%r=RgvmxVwkQ7b}pjo#OFr&FE)gkF6j?%t-AcPiMaxy?)6J|URqO=8s z5Cx70LO{4QkhzW5GWz8)a^ggAJVY!9qy@ms2SQ+y?G$n^;7>_Z;9OnY1;~6LB>GDe zh1;i~aiLHp$#xnsqPe^<+*95H2?H6p`6IZCzf;NoZXxk6Q1E}?%|A`azW{1JB>ra< z{1<)c#b3f;{KJ_32=3xvQqQn3 zH-99ACfUv*yp^jgVx^)(Hd29v@4*tmT`V22@sW`3XFHE1g2DL+eUuG@AES>-Jr)A| z8Q1fW_*kftXuE(wBRHSGy;UQuB<@rMbaAjub~`n_@6QwK;{sp|uEJj=j+|H{9yYSj z*=3kz8T*S6{DdrfNx^>QC@(c73=hvDxJw9|QV7SMlS{Y|mlZ-drhAgiE-ML9f(e0; z7~L>G?!ra*RUtw*o(L{G zl#@gVV?K$a_ITCB-YT(AOg|Xkg4XKE1HU1%yt;DQ%bwZg zmC7R|Der8ZE-5d?T|lrU;?YJ<>MD}5Lh^HxL&Efs1FyQ|z+2(#1*Rp!x6g&ZXxp^_ zeV{DDbG#358#bh7SAd5I;x7%HZeN2l&xI<{w(APe)%XCl2t z(Bv>E$dsHBPFq7+w-M462Kd@jtg~r;wws7P7n;392V_?yXb%VARhI)Sz~XTIODY|I zBAz@XpCNC{aditMLWw0}!gf+Y0P0Ll7GqQnM>76gD>rUi)^B7|0r-@5iT}hAk9Ds9!USddv7S@?kFIC z8jO(GfPtidyaRTGjJDlXK(-u)kl2u#T~#UiT}XdRp!XD@8RHNX8&V5AK<~i<1dX!Y zSAf19gP_=elD2p!Bz?$~#D*9-kZB!}4ta=5>(vhe^Z^&{bw0%XgI@#XiAC5@B!~^D z5D^S#1hK(wwPBKjQ-i+xxFjb~7@*h7sr{rr2JSX&NzJaVRJ0KOc}JD~Ax4r6yJx&- z87`EXGZFvx@C$sHKE{dzS32<3{2^MTSHS7j)20Q4J80qMHiBpT#`9CNMAABKR`nkQ zuJsdzCb{DnH93v5VTm>^DMFfj-$p=}B97tO*@M#((#i+Vm#z0yQi_eyR}Au`Q$Tb) z22lv@$~AEn<#!_V(WT+|!3*3v?_Rc+WZ7`(we(g7ODc()N7+Gemsn0otVqDJ69653NVXS9O|CudhI&%VuFYg)wFeLtf!aKdQdV_2WkW7YWHP=8W#~#Khu5E(CXpWr5^kXv>}dqEsLGreTl% z5{X%$vu_$!wK|dz5ljfY;1U9Ne!=h(-;)vfXQ#njidTpj&0o8bit{l#WY-r+lsu$B zaF-M|k^)2dHIl%AUyEXCkvI&yL6YGxthk>Pd9Ptwu{0coy+NQf&IkH=@gXF66o!B< z4w^L-s*!MiC3-X`X+FIJfW`oCk(lfQr+2*8lhiMP;faBdkf=W7+tMOue}m)mWqxVc zf4oC{`Mn>9z2j8E_lO7tcZp<`L`qCK*1h$QTpF>sdpJ;#izNdaQnM|}k|9E0|1_+P zqZOb-h9f98q!utxUZAkWRiH$X^*{lu(uQzmV-ysG(MSOsQnRxpW_niQuq6Xu*0~-1 zaOxpOh%_gy9h%2<|c! z{)$duS`zdtPMpUh9l2Px@S2bnNOY3IrGP;|SHNn*M&4Lh^P=ysXw4s23L?C}`ZEaX~Y_==7O4n?Vpzs>O+doFV6!(n^s=2_93m-!Hq2x3a}!xs ztwqHBYD1AnxOA}IIWCbE)1l9kjajq2?`PZ`jOT2o4gfqq6UgWFD5nvI)tQ6xPyf zaUq9qS66-*PYxr_mF#bHbV3jZ`cPDK>{E}7y}(?M@cMjTX)rETor&G(>yygFW@a+%29 zEtr~-$=Y}V{IyJ2p8la?Siyep1U|k6I_D3WETP0PM8hi@_)^x(DF}InC}0L>1D=ki z-~@G;r&aLUl-$3PXGf)A+r=zPZRt&x5Y{%tPi99Luq*KbcQH+!zW$*

    wXq!k1-1p6YNSh9EYSppM9`SLO-t4$BOu)#Va!lH`$*n95WooaN znsph#>JMoVthNhlyJ>OJ6YNk#jw(JSwU;_@NveOFxX_M7GH-K<}}!7pxkY3jHMxu5M~aS-{}{ zrzkdxKj@rgQTR=uU;K`M&?*cCx_97Bfqr}r(5tH03iQDR7_HX&T8WG{ ztW_dqN}Fv_2>s#$Z0L6@3a|m+Kwmv^QTO3vUFu?_>o~`=fwHVQ=K) zTd~|U)p`B_mV?+&7up2Ofg2(`Z*9d=2RrSe5-}-7rh@?AgNf)3W3w2m%J9q{_sUcB z^{vQIp%~waB{h?_>mgC0EzpmRW&C!992>ris*y6KnhSD@aX4JeErMJ*p4rvM&Z~?^ zF7IZ@3FIn~sL&Ycl%^KB(^4Hc4wcYWkXtWxjM^6sau(oDwcwdu_u%n+@P)UGVKLRR z;#LR`dkd?PsL&sD$knQrFVrk11AR4Yf!r#|fDH%*sumo2V%@`Z{3c_9q@=vV z?}3sDN}+9_WC==LW94{!j*yyDuu7y%*&fs09CdRh7ac;?|2g+S%`5_A+krSZ$|*uE z#NR39LOrb-DN{a(L5v1$@(0?mHjxk5Ho!uU|3&nL9q0=;M%qVFj7IS3-v02Z2pO0D`1%I<77qY8K%RLiBF zAP5CNDgbb*?7}2-Cr@sRl*e zWvA>ecxE4a$_mBnF5941{4b%qAW@+)I)3}D*{>U7^J@+q(vdzUYnq#o!T{ z3jP0xk3MOW;9aBr%i;HczPl_9wGs-b75hCtt3AtVX}pihS0AZabSH!b^dSHXErFiY z?ZNic#OQ-Ym552XLDk1OqOzfLjStYo{0{Qy41V(?Q`U+mW+FPW>$!@W*vnuIz{23o zP9bV_kYR5KWc2l$qH3f}IUCckLDl5*8I2gbfW1mK;49JnOkn>Mz%IAMNB+C)*5*=3 zD74#E0qVMq?&vi7sI!hnoeDf!~$Av}R%>x!~z%fxP zs=~7*`Ph~8UCWHnd{H>nNNE$T{fI|93uHV^hr$6gFO3U@;cl@$$qz67c2 z0tR@;Ip%FytZCl9+$(3eyO%O~dJ|&QmO^a15Vup7tK(Iy-V6R)OZOQ;D1dL1ugGKB zIo5|R^UM!X`2UKsYmAMsn_l1EPBP_L9bnv9A35yt%Q~>+OvMvz_6<&t=Jwwj$(`K( zZ7BizAWl(uA9#9SLdCBnW8^+8zzGJ>WvKarXN z&+G-eXVb@pYmM9cx`WB3XqQOTWt_m@@?4fa+@R%@P$f|BQm6r;K!YaW>B#8>^*omJ z>|&|95gj>~@fG3&pA(;e7Mf8S$?Z4GzT=$f2!9G%jnx1ot=j^K^;7=YxvWLRZdPV4 z-HvB;_h`M32sQ%a1^4H6V(C4d##8wjF!p>?M7wqJ=Rz=Lc$R$8eaaOz1;eLxg0SuJ zd~Y|_j&JS65{3v3jN~bOUKHpELV+~!7gEl6mh>BaN0XZ9&T-O>xCU}AkM6ZKZWrij z+BQVU`b(gXG=7(?0jI87foDmhrdMo@hdzw9Z@bX@?{Lt!x1_=26d-&66gtRV46Xv$ z2Sk7PGavmyO?K!qK^x*#n^Y}<(V6Fz2*cwb(9K%v6i+j7+J^!dHEh?o9&n(L(~o5x zq|!z7z@<`s(Y1qt3!+ql6CA!vZjnQug*jzWHFBi>>)@7-J~4PlGhu* zk>}PmN{Lw)Lo2)<6}-kfcV_ulI}YT~S3rE8(p=c>OaUdZ0H@8E6?m4gn=9_8-IU?y zoal(DPB%CNZ-}yP65{rx7aLqbo5#anLoKe8HlaoquMLQ!bnz@1d~Kfu;#WCG6~9&B zH@GIsZ{SWxB16qxg1l7$OqJgN_gWX@MaH*67G-#rJi317^mwuekAf^PnNoFX3*4Qa zmud=J6=h83+onL{vR$cMA&jBn5*E z#?TL-(EBB)`Xb-_A)y2ALGP)+vt(-9HeV5ig7-x_Rjtk7whX!`n1Vw4yJWvKCsPYQ z4hsL0m0(GQ2q_&p&J(+`)|pkZlanvn*cPqHz&)ZS@94@BuF-x1rph0I>CCH=*Ox?f zq8g184SZg>`LX)|%r-nfQ72}r_S9t727WUf6^AYGU;ltCyzw##92lBReoEw2%o>O= ztE9y7ED3Ku=bm^H|Ak1bkCHH^I7KMAZkgm6{iG;#5~cW7%ENp;(kLy!X+M4io+V3< zZKqFb*V>OyCnJJSM)!96c||vNUjOh<=;_zGwfG@G(0Gfg@GLod*Ch`Uzy6AvBI!CA z*fvD@wFq1Lc2C$MnYn?4{xjHBc0*uEROozuci2|uDd_1javhl*=D{7&Dh%E$s_>8Q zEMbJX5hi#wk~eu-sk>JMHmg45dm6(*fuO7T<#YDvrTJnwun;{^O;SfsK+klst=;F4 zY3G+cn7)-&6gmUGf0A{pNv9(kw8d9k5XZk(d@YpTmZ&I92dDp*qD8-8l~L+Y@}?Dq z0Z6Iqf)KOlF*e}o$&z#R40qD+6eTdKQ35q=zCsQ5UPwO5bP_lcru;4$x1@-G zA14Vegh{Uq8@h=!a1ja`{uKrjmX|N2W&R#4U91;Z|H?b{!1}+*`}SaMGLEWlMZ_Po*Hvb<8mx%)LwEh{u2GG49}7;roGpKCNl{!haYGG!g$A{eU0WtAy_Jn z-CiuKe>HOYma4`}+S5EMaF*j)5Ug*P1~}=LDm+WhOd7H) zo_;wQK$+`C_q+$DiSp07h-F zg)_ji`y*onrAF+V4+}QS@hoXDB_$A#O%iEfew0nzb>M7#aM%nz;>JnUWC7v`7SEDX zS9|guWf;@+_F%XS4v*sWKNP{4-E_JOrDGJ@(|L~o<{Qc|Q{8e}5dETF6pIzblGU{G zQ5PC#@_|krK(A8P3|*{i1zZPU9u_=A7jRY-VFAJU40rVm)bkwK)|7Ju{mbP2i!dFm z{*B*Wgc*wVNE{T28KIf+b6fmFHFntzA>xDR?8$qP-1Dz^_y&k>G;$AKl{|B>IP zAjiSu+;cS+_HXaQ63&km(Yo8IX8~`MI?j_E`StKm_3cII&o-~v#s)&$8vNHjaaQ)* zWg|`9I+|bVVN{26AHx+Fv-F1AA=G*GlMQ`-K5aE!0QXaLl@s!rsdDf!A=B-BS$bn<=&PO!nL4VMAMMMs3e2ZOzbeObx~I*1 zh3A6NS_{bDS59Q^UaO=4uT1{3q&|1 z{U2De7Yj^%9D z`c&TctY!QsOx99?Y1-!Ah4C;=hxJMUhnh)FPKQw&QG~>!iuP65plHlx@3K5prTwbF zy!M=RpT@(y1@meOR_5RGSY6C|d6o+_O}+Y=cxXPAXv`LWi$=Ar6@1z?tZDAg;T`l% zE9{Z5R$!P{dnAhgiNUB6klYFL`05eZEM^bIHgLy?nDJUepRRV(Ymf2HPqH+htSvIR z=Up9VSI9qa6a_R|{&%8-u2G^}$roK6XM;>VS*epJHZWW~}o{KQa}%gcu`pVwZ) zeM4DRy0O-k`Ks?Q*#IE7;Mv&BJJ(X?HbvKn(xFC-HyZlV(}nya_R7K^8_+#!w8sCpKyF1X#7Ew6xN4*v48Uyi>}ydj>rEGH_DQrH0CFcRh_WUwPME=`T+8w? z8ZD(<_B!M`A{P`!9)>gk$W4AOnoG2|rD0clvtQuJ!*JcR9d_DpYtOImekY1ytOq)^ z)I1x-2mz2=?n2kdX}&uFM)T$VNods|)rg&VL(;Yii@ z!&yOOvP<6xG2r!64lq;ZzVbTOti7}79Nyf}7nrd?Fcg@nCcENY7&aM7Mb35|-A;fcJ)iQ|DbuU~8Ka zFWoU8#KxtfPq#MobunE?1E5AhER zXrne7p*&9L&*dL9T@AehB72_Xo&IW{+I)^I5zUP$P<6b+SKrQ>bsoQ<_4o05!yDrT zGP`YbGE`ryuO;)%AF&pl=uo#B7f*EqZ?5;Iy=uN+*u}X(y@$CIl~f?mMwHaAyKa+? zC=1b%@@CwJO2ST}N&pLu#ZG}csx1tvz?)^UoE;OPcTwQ!O9Xn1j?+f6)I_s|;2u)7 z-{p%(Vn>lCtICHx4E}`>)O(;1c-f)QA(led#|1v4Il6QuQtCYvgy#g&Yt%-g099L` zAU2jL{bWO(*uekk`>3%cqQ+v;FP7{E$Qcm&0O$|SagLzyT|t)6Pfebwp&>FI4a*7Y zx$)jBUXxC|U65U|bXZ@Hc|`CfAOx_`5~OLv!QN3URh)LLM2!CPll=DMEVbDUk_jWa z@xbJzqgZxJYqtyQvPrO%fwdCALgN*uKniO&p#b&(>j+cusP=dyi&rfU6?+fQzR|VE z%QFEK7K85!s*$A;3KMQ*sa+ikm59;R^$|++ibCuj9j7O4x{-R)UX(*QXzA(C_xwg`uK-c77cqUt6Eko$+c{Qv-ENPv80HQTvw|u zYAb+WR@heQsZ($g=O>s}V>eJao+ZyVYq_1gieb6%uhw4Z^8~?RQL@^K2-##lbsB4M zEA6@nRl*c~ML7dY$(;&F%5v$%v~Llrm+Wf5Ba8J+GPi2L{a?tI|7k;CV@r-HVaUd; z0%-@6`$!MK}QLL)`7vm_?xjpfo`0FM?1|gWJPPg=iI=bj|@jd<@!t`R{z{7;5_hDc>}PB{UWN@gOjM zvt8sg_$OmfeA9N?J8wKT&a}Q%dY$Y%-gzwi4F1#n`my3%#{+mK*YHOa*@pzGtw2?4 zQcqXSIf2__SqsASCoo`_f6H50esU0w4mCcZYQGkU?zlA$qR=%0Pk@)*%6br@UAMBH zUi%yFyNzX?V|nge!Ss$Tbh6 zCLz~yJWG0IKYfZ?aCyw?t_5xaxNch6h6cB9WBE5Y7rKSML#KI0R;l?ohNN;pA`8g` zp^$*81Ke4w$1~*lrSsJ*p?YdLz=#$FKOaAi4fH~*Y#7Hnb~BI47Kdla{?dhi#A|VM zKqz2EZCDN4uhHUKsAXc&;*LQ=4?QKQ82pCuEUk|c6a;Yy(GHh*mOOK`O{&wSpBKrM zKB4b11cOmRmP4r1EsjJgzlTKjtrIx{ccY_L0h02$Y~=nIRi)q-`G!7kGD#nQlyv>A zb5kl+`JS4@$hl^CUDC&{Zel|rNm%!wbefF@j6yvDcHEm zVl33ipSQCcyS;b~ocWZ;jH!K$m^H|P{)OA8ZQokogQQ3V+oy9I8G z)}zY-NjWBEpe+_MAe#?xN8WgbJjRphd*ihVB1XYn$8R6UQtRinM+>RXFPgvxCHqg+ z=vKHJ9yVm_bIzYJBHqwOSKm=E(i}{D=B2EFXG~;Wy4pX36Nst`&yrn}F1nja-94t% zS+{_&YdJN*r%hz}gEV|$u&DAB3Y{+d4mGKwDnL>$cv@1FY8_p{JPlGPd^w&abvBO* zQ@sb?7wK>k{;!F&7=iCFp`LlqJ6S?~XLmq|54e-%d+js)zB^&yE31yaG#TvWYK=1E z0c5-_;J8$NLF?%5;*2OMExT}`pi7#c0z_a|gTDgshiA#b&Rd=P7XvY(=oy44HbwQj z!3W=^L=pNGqNuyv!RPGVEh+~jWvv`aak-uoMOp!H8cM40EcvVT=GSX>Y`*(0h$4Vb zMUf~PO=1aSoc3P%8%mV9Ul36GOqFQ%)|zlC(eEIGrSoz;v;Xn^zWI&4-i%;{NT<5> zpexbBw!jQSqApv+pqMwAWhI6F0JW#(IEZDaNmxW2H<=}LBU=D*WPnuRnf-p*riHWy zHzB4E2Z7lJ=Fp#H14L1$ch#t!R015qPY?>QxtuUX%3Z;!{qQN1$%g#PWkYVlYOsGR zZ~<6o@YR#qd9WQ1PiAfUSP~;@)IQtLw*>u71odPUzug_Lvups{6ij~k-K@hE?g^Fr znpk8&tBb{8_ehy>4oVCYaRtmn`u)}l@jLMKPyCG^ityImIEbWg-oGG zKz5?+`r2eZbqY)EqpA?i#YViN_wX#~`NLgfN!z4Lt4)y!kUzq;8Xnjo$QV;uIxp|V z>Rnek-RJYEJtFo#(m4cC3-1QCF7r`AsvOUfcMp~%IO;rxl(V?uT8q{A$$zr*t_#g@ z;SYWcY~=(|3)=z0Zv)~K1<#UCcYRn*_*o2oDvCMGwbtw4FR6Si7Jn5%6n??~OyDPL z6VH;syvgSiej^5d8QPx>t502~h)wUZ8dFB z-UT(Cpdpocr;(i(2mb>Td&ce2$?<>~VoHb#-`#z?_-mJcl_3CEN ziib7v;J7C7`ugrJLhaam(|xQ*1M0hTU^vd1cRxG7yIB?wm08(rdOTG9S;I>x9kDzja3s8I(JH=g4#SI%{{6vJuh1W_&B znYWlv3Dkk9F4S~dHMld1T6@oh+H`cr)3K<_2~qH7%I+(|mx|pVuv8D^N@xF^`i%^GnEb4NC)Ie=>2X)@Uw+6mJZFuKA zr^#tb>U6L+@LrVvzy~fW#yl!OD3(eUL26Jjv64Wd2^lOoL!thtvqz)5eN=^Ne4D}Y zJ7^(d{n=Qgcz=o6gw)gG;6mFTcqg|le|Us~w=5KC+3YzzvSK3{jGL~&!; zh=*8#*ESt&dDGH5w5HZzO5dzPOyB7Y4v8YR;vlYER1kw=X+;f)JO-Af_*V2Cs>79Qe?UIL{G9<>DHM zh0K)UQ{$7Mn7f+Xd;|?dN#q$goNX6=?ISn-Tp{Wu{|3MON~pa=)Z;&(qb_WA5Uc{5`VxY%Phi9KmuMAj1go#sz*bWf@{^+7 zZ6r$f3q7H!XXQQGe!1SY42@Ks$C-%TNJSw)atrqJqT}sT=gnXVVli>&GQN6-SWIll zS3bd#_<$K$?=tz&8MJh_+!tMvT>cw+0|2>IQ6y^Ru6zdTnW%$YxdoN69Fz+VGRk4NNkP~% zS$2lC+Es*mF$5P?0+L%5i(tm<4gzdP3O>$Sce7uQQ%Mgmy5l`rNo&BBEx9@Y@rD4% zE&nvam0053322d8QpY7wx4=_$)$2 ztbERR!=b_lZ3K3;^4Y*?6N%<5(Fmz#-{9{)f!#vJn=Xk=b1D^(+=9;|XhqxD$#b7% zm!djvdy%}8~_zFqB75B{+p3+to?E0=-e7-kp zS+Cb@+}JT5lGdZ8toeJh*`oo&qRgrQ>bd!?j~;-+uXQiZvX7|^9Cy)efKBtW3 z4K-VPv}So?26_i%V^(Y02)q+~BdXXw4NI1u5KcjJ@!WxQ^et93lPzzAR)hC0Es^gu zc9d)*Y1DR^(SBMAW+^{sE_=+ggYS)(j3zu3?Ct#0IY{;vpEEbkHZGMc$ln37?#4Sl z-)XNJp49V|o38v{>$Mha$ANYI=yaTS;PhZt&q_)$l33X9V5V^yvO+ylmhnF)(}e*cPobX`h0h*)p>lGod@59dhS+VZ_JbDvjhw@ z8S`0wT7q1^{rO&W4y^TuKLozuQ8&J(wCGt>jfmiV@QhM0xH+GtWvJCqCZO7yjp7d+ z#F@|Zmi9+rm`MUJ-vR38PJTA1JCzS4cz@#Q&Q1 z&Br1owmaVOEGiPuN1tV^rMVw83nb0c5RwU+VE_wlK{N7cB}H?kT8efqaM(X@0bQSy zCiSl%qNxS=0PnSc*vDNXi@`#dX!k?j6%Jusj_r4=&sDTQTe<$3agelkc z3nUyqkh0I=-LWrN(}oQFL+vFE;B8dDoMd2^`(=WhcJUmoS4os9p zt;wQw!5Sz#;Pd4yKYMV1C%z`jaZLW3Y> z2LU;u%0`f-1ZlEah=;ysUt}HRcP@m-QyqU8+!i&o6xfim&|eiHlHB50nanm8{W5H$ zTAr7>*x<((!gc-0VwRlsjC9fjC=ovEMV8Pe7^Zf481n78Or+JYv_nCa z@Y~15b@3HQ&d>bGl1bQQ-+_w3{kw=t>=OM=OdYD#WCu_L zBezIMkv5Wid8FGrb`+#S9|1d0_gv|%S!f~I?id5io^m0p9*~)*qEcuvWVt|ZP(uqJ z1z$O@O9)R~%+k)K2nwoZ^Hj8is}@c*evA)Z%$jDXN}h|wlb~xYE67j2%-XlSL@GET ziesc+-MW(gOIZ{MlP zd7Btyl(g@UfvaME`L5z<*~?7NF^|Je3rH{Za|1!wwW||LhmPK)-o(?Fu*BqQBwynh zCVOGvZhrm})(LxMM=t^UYC^U2N+5g8a}@mfzQC1yt2lgeqN*6v6ju&d}5m zeKj>xQixhc{Mn_fQ>LQS^;<|_cl4_^{$B;_y_T}{%Z=8=`cFPznOD&>KZs8+P+7Ba zDS8U-=M!$iCp-en;vC{4tJ4YCX-VO4tM?LfKf0O~cefr!sbKh3;8}9~ z)II0WkPy4j>THB!(Oo8{w+>%jz%n>{oi%G_w;~JY5g^+)#Zhy}EGY$4Is}Mb~Og3p;OQYEsywo?VpDv0dV>)2c;_LDveiS~+^ zQ#otcrH$-QglYgWgWtKvwZL#|3(SQ+@i0o~jQ{!3k)tQ&yqV2e-eJ3butKVRh z9@}vTY!`5|f#?>?!?b}J_cY;a+Yt25`Fzl1Oy(-oREhr>W@&Aec1jSLHD!V;I5t<9 zPxHL>7=*%q@GG&c)@w8r1O{z@>U(lMOXy%dNaMgWprXDkV#z&e3T?)0f#2fRdUVRu zb@k+Cx-zw78$6GC{O{}OUfy}=cgZ|w1KrE(i%`pISB;3_??{~l!vffdYcj;nv{0j% z?O0WS==JCDvtgEcqw=9CCrU%DXwm#ezGS(L%3d!TICQlIus2i>N*jNaJlN=SXUAfJ z>~E@mkBmYQTpQB-i4lP$^B*=s{LbYa;b$B9t~*~E>1Lp&wR?lKcKtkO6H9AnWC$Mo zP#hEz7mH`$lz>kGPv!zXViU`%Z!JJw6!TK#^J+v{bmc|FA6<}3i(nNO|=-oV%%vv%Jau)+&eYA= z#aj)?@a@Z;!xg2AB?ZNinoEs~nZziLVs|uQs%O7|$|(S;D*RFM^Tww}Q#%RDBB{!u zbHjo9UTwm6q6k)F5~AO)XB4kIk|-&%Vx$N{ zTP-3)latU(AoQ}53(g2oP&@V1mY)DGuxQN{vkMBU$~wxS#E*>?6i{XOw2B3LLD8=~ z47Sjj6#ZZmH+`C{R4@Lo>GOZHZMBtC8+d0rw*m89+2J*dc zv*zuE@wTLqZ*0_f6X;ZjiQGRisG#B%w7SFol6}i*SjXb&Fb)!MX=*; z+0L2?4_-pKcnCn7WXRS+e!9AC}B)OBi}Uq1GN1it(&mY#7$eIpO2Xpi&|(kH3B6$|Gxj0S|8r?U-WUL*IgCvoWO4wB^1nX2z3`#gp`q1 ztuBN8&yu^aO9J%k8npC-N7+}-4Mxw1MyT{Foz^#9R0Ej~RpIQfT0cj z|IK-RZtrCNh!2~N?gxC)!ueY`WPDEH!f#UH_yPF7Q~##5;atB{mhyEd%c1GHUMh<} zrYv-@-*yqvTDl|{3cDpJtrevT|As1E1JDI(tZY4~)@{lc(;Y}gjQ^Yt?fdZ|8`V*5 zLAAfAH{^`eo6--mLu>J=M%P5?b_99EpSY;n04_X_BqhY-f)4syE-tJrr|h!hZFDzN z1AT|Wzh{F};d$o|SZ21p3C(nZoTbr)0KueaaZNt^ebvFkn`^X}dNpmN_{AkU*G2la zb6Y^;D0U;qRgBP9cQGtDbSV56y?|GK%aU__=cZz<+BwW`!N9DP1?o$CLBfFK7W?_c zFEM}4->tR<9kF=t-SB=$_Yl8#H%q6Nr+2e{X$5i^zMwy*&F2G2Xgh4C06)1~Z3V9c zV1hc^X7KBOWND@9dmMg;c}=@kj?U`za)E?j9W#vu5hujXZD2_4fW1xq9M2N{>}8IT z8@rTDn<4BW@SN3oQQ!%*uEUE=tnC(m*}g76zK1ny=s002-vZCP)oj*`yb{4QeTDQY-@=jqLlSnL0rgW?_R zU9wH!dBF4i1Bb3hWz>&t6v-Ep>vixx#<2ZGSGOUduZweR<8WifwSF8}z6&#mUNvDE6P6!f{TYEpM7|$v^ zOBxJX*FT;^l1_^n?V=7zOtULlehcj|G4nAR8+%GnGExNM1RjuQLB~}7{i)JV_?wj| zxU$G9(2jzb`9*X~M^SL|3#_>IR88k@qFD(61R@ZA{->-{sS>%GruL7-D^Uv`i(}x_ zuRnzl0uTb8CC9_#7Lqkz8Dq`UEn)%Jb-#ggMR%4$=2O4K{U*d~;cq_(O2J9g`#%G( zl77iW425nF?SHNU+|wlLzTqx*)l8=1t#-?&spkqicvMp zbdg9DyfYa5QtEL$ORhP6^u~C4e9Iu%Ccqu3^86@grHxz_RaAKZVpMZ&B?mQVUnZwW z3a;ca%!Ppppqj>r7`R`QPE#L#a_|sxY8wan6<k7Yq~vy0_|2+QfEXLZgQo?hO_N<*NF7|l3tudK_jwOKQHn*AH7l<0cHRGSrI zWT`m7dU@?{dEn#v`>bM$Y^^ zAL(P&J;ZpV|qV$VWw%fDjhda-%vv#;VBvoFJfr25Iry`OOZmit{8q?E2;D!PdUQ!#Ygl)yx$SltBVqM zK%%-|*-~;aRV=3yjI;k-0eUzXJSs!fTOqG@jXh~%Wo>#~xbIL7)l z(w-Of3JqfL1IOrs_Ol?X{Dsd$9hlgCq6TF9q6izw$;#Dh!!2D@eYO!F{5=LnKUS3} z_?`bD#TUgNHm(`{o~33)b(Vk^Y!OeBZ~mU8T}*Zd1=uv^v_zlR!twHQ{894d%**$a z%@C*%>DAnC$5@z&H%7gxT2Yim-s=aJ(9s{nj3V@4qHm_>$ZC<c(CpTmfRpmDGL51!QRGlT!R@A&Nl-VIVRK=?dTDH=s3&D zGNvc`8Z$ZG^ejP*oChi)KnnvG3nn`MNJqA5b+-~=(^J#CK)#8)f5Z+M*qux8%vFso z=mzWlmS!Yk1w$%Sy%>!GDorWW;3a&{NbHv%aDt_uD>M?4Tb{^BFHIkG z3nx4x)v7j$&pv@J0j^#-!8&F5Mwg4e_!kjOT7yeZ=^k@3b>ev;y8 z_bP>Q6)#u#alWF}N$fQX@#2#h*Uf%{ozjz-2oues@RNzYS3Sy|W0#B0p?dR?r2?N) ziAq$XX4i!KCD~gf+>#BoK*A%|qlA<8znS8CMP?j={{R6I-jjswJfY_M3o!NCs#)l) zU#wkl4XO7ra&1s`)~kc)1*4;#)w(oN;N+}_l^O1+x7k$i84(cQ`V*XJOFm}F4Y$k6 z!3RH10GJt&piPBNMwBP&#s*rqMl$d$wq5%&nZ{5(ks2?w7}q<-O=?W zM|~sFqYxeG+zC)GPw_`ivD^%`CuszYS3g9(1b)8l6wB{PnyM)LbfPastz)W|3>Cyy{PuT6!;ZmJ{TJ!!KVSje)n4@RN(=A2NMw`P%4n@rM$6u7sbb zny_qoG!V^8^t~z1|8$5BU7PM|voqcSpb3{q%>0Mb>~S(#|9M6@8Rnm1gOX^3UeVO~ z6TD*1ry2HG(``4`r&R1E;>vJew? zh(7|d5Pk`tD91KcXeQy-PVt9=D~s<3Nyl0wx*PnS#)3rOZNp?f>X!)o!fKY1Q6_Ds zbconWt`oV3!{(iT!RT;bHC8_T+i7S9iuIn-r=6YA4Q_}GB3rBBW6-ihQw=znHEp_F zK*q-Ps%i|^nk*6&rxQL{E}jO@`4t;cR0#&l=$*2|EBIAts?YP1U*pV7XzD}3K9A4& z6_+|g@fbkCPn?!CWbSEa#E{f@g_kI1qVO+s1lLFDjD7?$n9PC+8(yCzzL z)=?@xF<2tyUQc&;y(xgFKd=s<%y+*7)HG%AE4XYx+B5Hn1V&3y#A2ELJ~?iw^s3=a zQsWhlIZ>D((+@DkA2R(oZHA2K@mY-sO{RlmSiseY6^5PiGR!pe69@&$9cx=5qeoS(a65El>0%rOWQVm!|$0F^nMx2 z#atz$pHl|XGk@x7o*-}T(Xk(TCBM+4XSK9e!XmY#S=a+3mwkvF9f0D}rn@|Pesjn6 znZGL0cf=#R4Iuo)Le^Yt-TlI&Cu9b&utTAlq&Y#(mti3O<YD*-}37`2FgR7IkeS}zwl3_i84Ui&1)UsAUie5E_uFEVLG z($K-o4be^1sHCc><8r>RiJr={>gl*ENb2!`%zN)!;tzxOuBWG6q@s%eMbNz_4e(wtwBxtU*(pkplBjIrp5?3MHl5>tz+Cv7A@+CXo2 zUX3|&Xba|`-t+~6fN_!Nya|$E#GSn-?HHvPF1;j8}KM8hm5}J&iB97IVkXUlfrRpAA^#inJLr3ns@!z;1uG;)}`saRm9L4BjI#x zhC-0H@agSaO_AF)lz$|*Cq+dUo;7}xPw!Al*D+q+4N(amZ8K__-pxjMo`gA@DxN8L z1_4(`_8%ZrNbelo|4Gw!o`dlK@5Ol{e|_NdH}Gh;cE{vtNHt?h){*({PQJR7H zF?m|4L+Bcm+yo*z`)`5}rd@&&j1obdfoTSWHW17~Jo%r_pyd;zKY=hkZ_E|XrNlVi zX}=i}7ze^Oo+H6*2Mn2bwgx^rTT{^ddV%miUM}!XqAyfOHGlOyH+x;@cxL_| zms35E5qv3qS2iS8tym#AlVaXacrGIYy48YgQS{Zu2Mo86L=`HzWu>VI3rb88mS*o9%DKc>uhmK+?GZF!+y%9!aiX3S(gUew652TB~;-uYT=pye>c& zdQ;@|4Q|4LcZ1upt2Wl;}**K;Y0 zbMQ{Tf1?kRYYM{pjNh56<0JO6%@?E12iHbd&CT(ARjS_U9N_@}oPU$5_rw9*R%v=# zUO+ZzzauM68z7x33a(mm*#dr|uAbUpx9lwjpN8xaL+E^&J>@0w2c}+W`p8DcQPEvs z5*oZ^x(=uH0oZj3^6+r$(HPvWiQ09+JBZPCyfj@;C>0AINWR*;=P`j*nPmx*TBP?4 z6jcqWIbn!gGEkF6rI3oB6Y^;JP%Gd75bDKcW5By8O);D&@xk#Oxk0iOXC zaR@^QW?dC{mKf(>)}8j>8d3tv$Sl7YO=Uz>J^CjK#v5zAZl>O@owx_#E6n}(EtRBb zoT&h0wRgip0kU{;Cam5!O}LN061rN0hie*XO*#wO5WW`?CiB$7q!4tM0-IL7p904*2$4bjd&d}AbiX3Z-LGcmYt*B z0JJ$=s-qU&w7d8p8EA6{TcFL6?k@@*PV~L&jrD6KND}JQR^T$BOI6#NCX1s6LBC8t zQ^E-~1yvNahN$4wRC-f_*sWC1)lRs4rg*9h0r9F0mtzP#FN<61oyMv7VKRP~l!+l3 z2ugUB96S|#l!S+6WhwZL60T}i!Ed5I-8+l=^ilL_TgsOl#=&jTK5b8O37D%60x&Yq^9!)1 z&dFKp`BaKmUQ5+c)%W8e%#}|5A)-I@m-(NQ>d&6Y4;Z>yFrTw z6s*hEb<5G0dc0N@Kjhb2mc|ZT3uy({-1Fn8B*X^WS!!BTI(%q4XN~n5emT- zqO>%mX5nA50BiqC`(azI-n)<6&c-aO##G=MNWwi-t0_ey7@(iDCyFpts9{T}NtP}kIy`Uc2RYy8#FAa6xAh;={j&{pr%Uie9o&==7W zgW!3q0%UHTjiqm5MJr3NKvqENV)2K; z8@F?f$`{D!7G)~>B1C5@BetiEZZD(3+k|%L6vm{Qjed&a9oOw3KC;Q6T;{)D#v6PO z(6>{jgYu6SD)f*B1wVAG`6qAGUT<0JgUzLP3Y^A6f(7hR8qi*U&>K9-VJ&9Uv#O&$ z2+wtabM-6_FVXd^T3B{X5?JgR5iHN@dg~g~*F|m6rcUzRy1o+IwkCGbFXeCL>FGq_ zK%U;4PkV&5rMcPiZ`(@T6$B4=IbkcKL zxqFQAgQ%Y1_(6E%d_Bi2=k~4K9Z<~eqw2!B>5!M^>-n{&`g9SZ!m9e^Mrbnn$$n|) z>)CzC39=b5`YC6~7W_>=J~k)#uV>Wv%fqAZjP(SisyQU)WvsvpWB61DwwL zchQ+>g(KY!FrBkPeTry+S@|YUat@7@;~B0udG6R!%=K!0-p0OIuoK|N3-u1p-a;kT z@^jJoPVv0+^xJ76_u2FGsr1Y|U!O$>N0yzhe*u^5qh0l^T3Zh33*QtBzPT$oQGVi| zb=5nya(~Nv2BQ6^qk?xlUtI5oCT4Zy1G?!eDcf(|;8wzWUUwZEAK^e#%#nu`Og!6N z#J|@a%u&7z^p?Ht7n5plF1z!I%L?E(t+ly~dW-P~6mRIIBz&l0j@(?f{sKKc#km8i z5^%e2?M~yl@W1LbMM(BP=rpS@)bmT-eTxROc%5bg8Z-UWyzoW*O}|UwGgCsMr}8K+ zL>&E8XL<>L(=SeEYU;Qc6_V&E80}3jAS3<$yWX^|NBrLOQxCm&sk@ia8eNjFfwG+w zuq^`bpVTv+55@CS1o}`LL%^|D3UrN8o|YS<=%V6KUSL%+@&-HZVFgfbVfC)u!|GkR ziPd|onpAFM6|daK52H@#r`*Vo;BWfDM*#QmsVIlaudEO#|FU{lerENq{LPVfNP*nK z>OG!iL~iJ*AWpxHUd&rfFks+?eyTN1$KUibrGHu>RDNppu3FbaNJ~G}x*o;f^o!HF zoB~fn9Q~G-N{6;Ws2tnsT{*bbyK;1^cjfR_@5=G5-j)7;5X9&wY`3VyQ`K#|rHG`T z)b!hW3xD=WJYzJzwUXywgejsWr!bBR_11|@5lzm=U8D@W@T#QfrGU=o$SMGtRxk49 zz{mNvi(o|AYeXAPc3Lw0!_r!Uk#!RBwB4^kK<~sqS&zMkwwiPC;sDui(lL9U%=_|- z;tzuxh~_Uh(UTjtmH4zHd^L^`WNJsCR}j=prTaRO2l0oTch@oeo@)k_;=OhWJSq>11A8T8IO^`#|| zpZFm8yuGiW|3Y6q(`#?!8~VD;hl&p16<6n|J=cL3Fdz-ZQhQ=QJw3@FZ%XB+B;S_$ zV;&c)c@4%t?vxK7s2ki*UqeI9U)SrI+<&Rw45q;Omx|$M=%q1}m?_lpupV=%egow> zbE%$PmsAm-`W5b5FX*q=O>t``VHfr7ug`Ac20x9WBKP6``poX;4w$bA34)u*Cg&Fu z^ojA5w^LB0#n&p9UZ!tw^WCTc_1?Fz1ZMN62I%<|_kY2EhMQ5<&3{4{|A}AGU%!iY zx?I2HZwk|uZ@65aLbla;SLh>pS??#|ZV)vw$4r32%HQ}=v1{H&^uP)^-5Ud|DL5)R z-ShKZS6~IfA_G7CL6YyobB4_q2;hlG8AM&0?mxS75SHTAOsknp@Pq7>MirlklpcHy zVi0nviAaE~9%K6=;xswUhmFp&t6n_}?UXKev%RvI?_Q)?BtM zs-GthCP7^!a+k~KGg627c>vLwN{-bsy5|=W;u8mxij#6qknQ8ZP7x0khwSZ?|0`Wa zCrinxBKxsB9G}1aaxmNm);=_(VX`5O8;XtW_2JpC%vgyS{{?Z>DRS}Ga208OiW zKM!7|KS$%lUsplmO0$|GjaE;J1o54&cEzh%{1iDpfxoHlc)yHq73FWG zJ08~)IblXL{{h649M25V@5VSc{u=#KJl?nl!dE`WWYL_p#Zvbg{LgF9l7e>#c)E;! zTox+G&mD@UpyA*$h3+ysa#wJQ00b}#vA*QD4nG zyw+72V`TgztHmD>Qkgq`ij3bPI~d|E#AjI2mpntp_jybF;pZo=b@fk4Rf`_C$QcIh zk6vCpj5=By!DYF`a^p+l4}+Huqi!sTye^|By{n>Exue(0=wiu(!4JBlWi!{zh=OZ8 z+=X01wTB|eFLFn3kjQsR0T}!ainips#3mU%HW@jhVmOIkY8Xpq zA17H4OrCcgObOUp1=o>$qyRpZ$==>4{=hDy>-01)6#En;k7$N!nXJlHS%gMu4s2s_ zLO3Fc6NCnJno#0G!(_5gWNje6xCEOJRh^mF6@|vozdA z{^Lj(P8-*>Z^T(pZ-a7Q5!6TG@mf$XO(EamQ(%sM-vFV_dyUd_5PLly$sKAW}~s!F^bY?!B_@8Qn8bRI6x8GWO^w1CK|gc)dwK^On5 zB{I5N5ytvoc+Z7KZp5NA4fe%$D`DP|ge@Qe~y8~E3 zND!~M-GtAML@>Smie$1vCe3{A9nu^7)=)S+x))K`rW0f8!Dapz5IjB zRSHVq-L4dxw8WGq3n=9vHJs(-!u0iN@rS}wA>pYt;ia1FvD%p!!j&?^6h&Anw=X1I zE$1nvCs*FJkkp+Den6)8$RSIq;)4zx-j6KFk;-7p42z`T6#S5cU#?0l8Tv}Xf7~Jd zQ0c#x@CRi9)aHV3Bzzd*IUhfj;fRb_D@CHGCIvdLFl*;cHX<;dm zE6b?69BlmDdkfi**o#fUFSDtS0a$#%E&8Qh%$Ec_AfsC=s;XUy+*vI18f+|L?Yg3{qa~B7 zO(e@bdhH}qCFOJpzeA?CUl!8z<4e@mBmAOU;fYY+^PmAT0Bxi0aq{nwo`|`(>gmlL z*LZk(W8a~T-lozDw)oat$;>@0N{}pg)7&HJFsNiXlKye)|ED8q%W-NXP2;bR)6+4W zzCX@2oQ_5r{wKrfKak!%oZgIgF`V`o?;1{T1=u~Dj>Y@`%i;7k;QM#ODShIj=k1P{ z0fT9KKKFLLyBJZ^_*b{jtfn=*8_-MgpjVvXH8t}dyr03~>mCi|F#EwB z(P6grzaM6S?-aj$f_|Wt8fEVS-ngUex`7k*LEQV|_H_#q^4fX5@4dr!G|aoiGk0Br zFYmXyp0agylJhosycPS_ZA;1f+>=yZnc~9-rs}Y2FX~y=HlB z>QU$N@b8-CmDa0Af36$ZJnzA#9%J2CEU#|8#2HUE@nJs&-B*r}-~N1V-WT5LS?l(8 z$}91DE1%+>I_KT%t$cdjvd(#r*Yh4($h&pR``){M(YiL>^KMV`zEi=UzA`V@`$NUL z^;hPN^>`~k;%x@!_46*>$Hxsu1o)gYI1itN|E7|^cs0J>Yw+$v0Dt+jb=MEcyUT;) zW_z#6OUvj!u|7&5f(<*wk3Z>G#yvyx(o%=rNzp|=eA&dep7s$s25xuWX=vU^V3>s@ zcq|#3m+zUtgC%$?=06g!nAg8H?@|BqWlC3&fx3Pj{SM6PZ? z5wTP&rN9aMFzz3Y0v@?5S|8PjrYuf2UX18^4$piqiI8!FGPp}Y6&TG>9vgiG(ZmM* zCUBdg-DNcq9YoYH{JQgG)DI4`v+GcQ{rNCFG76l=fLMeIBrd>H;G)W`Q8!dFhG;*2 z0Z}r;RWf2!aZ)@F?IxqlRk0z&jzPvCesCru+M7O!dmvIzfz!$|Cb&{7PKaDGFGK1~ z!^LPhkQF1UKYro6_%>jvA+s@VR(Mq`FFO(49a*WYsG<>IHSEIfE@uHRMzjYvvO%)m z>bv-~5uoLkZ~~C1A6r*GBG2pbJh^Vo^?5&gJk$6qBlE6G*?+Q$FCm~BZPB+UdBb4d zDDV3}@$tbt=KbTRbv&3i(Bu8!^tx|G5 z1nTGJm!#u{SK&QU&-~m{@Jq@6uDJ2CN6_&HkUdg`QSdGTQ|GTqjKCKVSfwOB=v@g% zF`?kqHF(W3WOhmxDS|6|4Qhb@AJ*;!&aLt~`2Wmcz-Cyy;uRQ3LWoC62}ywDZPQVj z#o5VD(l#ZbNwYL*(k5-XB=_0~kU@X|;VXkMG6*6-fD8r;5Fmp90Rm(YAV7d@1jry8 z84L)J&3n#0KaIzerSJdq`71HsXF2D&_nv#Nq>*RFyQlw5)Ac&iu>KxQtW-(H`={p@ z5~qjWKQ+gCa#_yuD(>Pb{t@Ud=v;qK`$te$e*;_c@sCM^AnfXQufQKaTEKyAC#-h>q*>gtJ2r7ewtpU{pGXlZNIE~ ziD_KFuj`EWy^bt@oTf)*_*e-Wkw022J?JB(t$&ut(dhC^S5{8>#j}S zz5YC3*A1K?aXQwI({+xNzW#~JI%CZB=a)!dU!;>5o0;KaV3z={2-lJ}SL z*B_V89zI0wE$^4Ner)#N>*9?m)20supONuFIYTYc8|rUVuL@1nKYCj9bWiM0zBf7( z=e?~r${W6V8H$3{>P*sw5WVPeV2zmscr03H{=gq%R*G4|HWL z{42XkCe9DbafWVM{PDrax;t)K+@2$EIkJ_-A0H}Ky-sEEuly@5IdPZ&=n2{VO4Pbe zJc0U^jy@`~Fa6`tE2%N5-;ur^OHTgiv#4B|3wAr0*2E&M+p%Hs1qTM-Ex|9!QRri6 zkHLZWiv4da`I5BdW6**1@<$(Ed}LtY1LA#tZ(!i`rw0d)@g8q2KE#W+7N4O1897t~ zCMNvFq=aL=m75nY{E8mHFJym?km>$OiA#S(`g;B+-lF}JQJGX2J)ZGGt=sd(#rw<| z>SVnc?=1ep^x~R1!+Xzs_t>hD!S4(N>uc8i?48A@PXGIt9-8A{gs+Q3gK||aeOMZM zNF$<+LHX-APaE>3Met&61f_A6KPA5>Hm8j}W#kTN?02$!Gs%El8}g8*{AS{HUztAo zqv_5Pd98`RW!I4&p1w&hNnhI|@<-oR>7i@8e`rw-rGMz@N%MMJj326=d+ATS7CO?` zT>0bpwVNg#eH7l@b%E=Sg(vM;?*I24JLpgDneLe99yt0QZ{*9PBi>IgmM7$o9ya>y z;$t7Y|G?qFiwA-)sPb2+(FYD3mXji_%cLb=BoE0G$F0&FS|*LEGzR6T@3%a#?(1J1 z{pY=%B~p>&-`@3=miBX#`ty3b&;Mppzc#6VtUNQEAO$>L{^)x8es*HNyQ}{RKj3(| z{U!$dMox()A18lK;AMD3+WJSIUiFlXpTc!ZzcKn>5$CS%yx}RX{<895RhonH`yrd6 z+?O)4jS=@v36f`089Gy%8g!vJb*T>N-4wi8y8ByCFA8}`Oic!Dp*J*3vfa1l4Nn{M z=Lcp=U1MW1Fh$mo=rz)`k6Q+U5A@qo^OyQ1Pg1$dr%d zr4Z?z-t^|^{GsAbZ?rkO=%1RC0<|K3;7*yCHe&yrk5=rQcdU}D#F<)r-L(HLFH>#P zIhl|bKmWvNLRtEI_#gk&-kIlJ-5i~}@HH8lrC)5a+q$}JOe%Jc*JzH;`^Yu!{Nb6q z0$lkw6m9XcOiaqui81+>0{K1X&yCL6b7UZR%2I2}$+*OC&KoK)B>VH!Qg5T|#L!zy zy{n%aoj2qyv;JE1LmQUKwrBf0=f7Q+li~W6*s2rq7o)P*{%IPYINck4essaH>67LU z&we*Y^@;akmt$*KUjT=&U1h^KjJTNt3M&tnmITkrcp?I#cfD zi4*5~J6@1lW>1xa8k5Un>X4-BHpf%%*D2Q@lPSH~$ERL8)%$X5bl$Pyuv{hn`z^h| zF8<`y#WOB0_fGFlo+?vJmzzYK*N?bF_vCh4>u#A@a3nLX<@z%NC&(df zl_$8<=MV3(ue`|)UMVeo;l5c%rs&8$jMT&_Q~jYA7ncjoCc)a@jt2mXuI7IWkrDMIY%;PF*%t_wyt#_>!EC)lu*7ByiDfQ38i12R;?` zq7re;TM{vQs;qU~^v{j2CBIit)>?VCCCe+{_{=B#nH$dbo{`P${jfyLb>-Jsyfixd zXR@EKN`G%z%g+cdJ4b3{OPwW6dBz-{xnUm({$taX~uN>FUF1mBGL>n-xmo3zehwvHV0_1@36jLsi? z*k|E337nPG?JSw1_o1GdA^(a!%j-zo&{ZqE;jQxOc;5=|AGXS?qwL9MYfh2t<5cgv zTSpfTUFvyjwvNs__zq8Q&5=QOihl;Co;UUKPc9kSPs$@ZxzS>Vc6#1@TSw=AG!dUa zeBjWCKBegCB3L&qb-7t4XN}MKyS2o2>+!gE(93d3z2Qgbm(@$87?ypQzvJh5$Gto{ z|LE&h>JlRZBYG+6R>qHPgFho9{)TO4nSY(UywbZ!7C-uo^EKBU7@H!wdM%CTUg^(_ zS+2gejL+P2zPCkp>;*q!V93AL^=2K9IN2NN$c|ldfiAAkda}5#G#;?tW+X`~5}tWz z`jcV5e8HzL@cu<|hk6%yr*%db9eqKa#)>!VZVRd;d;nh2Gjcu2R z*<&M;v}-d{_t3KxJlmVTO-|=E7kcmCHhS!$_JtaGXg@Ndi%or(U*yxgrQ1dipPySb ze|WlFI7e!X7D^s+jXk=`D{LE`GrC=-r})#slP;1wNT$vb_ns-i{#~=0(d^P=>pQU^J(lWvt7hx;|YKzjaxTqzBC=N4S6)8nV$Iqik|!LLj2fHA!{ z2iyUxxa`1++a_k*CB3Qc_yV=t94X*f>XUMaW0DixD)V}TZ|okoyf7h5cK#yi501$@ zadE6+bJs5zo;xTf`E+UQI;xwbx5%3w3@qGJ_UPI5 z-k!n02L==JV>N+8J}GJIZ^pS7KX=3jr6PKGmr8%u z6mNYnFni|h6X#^vNAK`%2?pkU>{S`xx1S>iA=QW!|H#@Y8600*@^2`52Ye#1z{-dzwE+yP2A#2>G@l{RvHKJ+`yLPqPkZ`{Y~i($ZprAub1eH;)LD4TSg^1 zCho60C6DpF&B~zvcS%zm`HJC>MQrRx$ZozYZCxr^S}@%IPH>*}QJv6p0K!t(Oev-APE$ouCtVonF+D7 z%C!%88$T78H}8I#nREzpB3cjl+nC`#*uT`JmXfv7`^cvQ?;X1LLGQbt4jexGnoPgf z)h!Kp-}`i6M6QnDWt9cPi^q129VJy6lP_RpSng6gk^LvG*JRM{q-Fl{XKq+9eCP@C zYm+|{nCm&83G6*xu9+KUaIyd7HZWmopMB)Cb!6(@69)GiTK$lB=4WKj$`8q&jo4nC z{h7eKhIiE5S48(2J)f7JV> zbceS1zH5pcmb_v3Y~a0v4=V50&s|(^`sZX|jiTQ{6WmnuzV|s<<6JK+6GO$vy*1Ju zdhK!VarLq%yur_lk3Hcn{e0kE)AUl8LWiH!?tAx?i~dHxxp?SB8lpYs0x3xUzSo_I>CKjMAw3xUJs6Jxm- zqEFjxr==Nx7Pw3X``1^=FTnbzy-kuc^vcuTK3^0sdB!_Rtv=&@M;tuaTl&So?AaGI zb|n@DTzT=mq2XPwfiEi; zB?-IfS#R@~0*m*0=~=yKye(e}yvO_amjipfFWKbTVr0T@-ynni-LCk%y`ky-?8~y; zGWixGS?;>$yj!F@t?``Pg?jaPg)aw2^lZr+$KwJ=zVEK*`%gkcyQ)!_!Tz!hf7v&l z_kMhw>}~o5@9g6OfuW~g@NPRUaOmKv-p1qP^2oKk{k{@--(H(ray?J=W_%^^p1scB zEbS@UUT81rN4m1vhc|m?ekE||w6|qeU#>&m8D9w;B45o1GcU@Bod4^^L%p*lZJItG z=_T>J2Fu%WU{o-qZ5vk(YUke=i z*K1#v=a@7%{eV0*xt|NkM{F`W6qcmtbUHphJ>8~v^ru&N+rB3E#ofw5-gmzq*jqoF z?2dQ$8M=I%H~NjhVS7qFp4jG{{q?{ha^J1_x}3(m7yWu*WZKiOSZ%gg_pDc?JEFJX z;%@{FKjJ~@9#9(JzFZ%=doRf7&~n+mH#AzR=z72TMquPa>Ft)hMqIEfYs}9Y7?ZCT zr0DlZ-s2i5yR>P$ci%VsU3%#ofg^^Buler_KUjZF*4KBNTck19o@nGtpk2E$DD-wZ4|YFU@n z&XtCIE?|!d%M2{lW52E+c4yc7{I>#!@3Tz?4)??5o7(JU=;AlMt;8~koy&i?u#z!fK1l>9?FCwwO` z-+7*XPn<1#ym-ctolQA@ee5HDpB1u{oJdI6pBwZ4t07MlvVB*`CntrRf3mHT6)KcqSG(M<4e8Jo%lE7?t(I#7>x z*{KVMr@8)~$ZaI=^G@~7{M*1n=Pnu7ve!lbJhh~u-|D3g$$LxZN92pAF!Q%cLvOmO zsCzFD`4U5emy`mvvX5v_i}c4_nvLsmHROj{u(>Ve8oR+{}K_LW=eUP2n8zm2vuCMI`O4R%1cm11K z=3eiQM$XpJdHavao7}UBEcs&#_u1MX2zkGdEy&ki!7I)orf`mTi;N9F-yeAM9B<=y z0|)PO@wr6gyu56G#$(dA*H*d4WjD6_!!yr~?W&7kr6Lty@_2mA^7+~o6QdXoei-3Tfy^4oPv> ztu7lF^EaY9bC*o*p?^6Rd`N>w{P%MMZXF;`5fSe1l9$us#uMu-_MgxTqi9pPu^yn zP12v@`hOeHl_tA-vH!w-oK;M2VDEy3!^0zfSDwkVa%*Mej|I!p4{NY}bwO}PM&{b{ z`)(^wl@FdIVMStmA2JE=uf89cKj$Has}Ud#)g7+5gpri*Ok2zmOKrd}PDi*&{LvtMUQuF#W`G9?v{c>f|v z`&_SGiF_dGtv@j^Yrieh_dhF;vD3VbCkAFam#>x~eJzopyQDqmiqOnihkZ{5q)PgK zeaMQNWlon`cJadD{U^l)FOos~OATG-);|_flfl6e`2bXvptme&WVek4W0%OR6!$_^ zqOQHfyX7APb7xkxFNJ%Y@vS!g)ksRl<(fNBmH4a0KiIpHPRix8fuQZ8d_t^O!5Npz zQ--UDC=cncy3~vQATaMBIfHqb(p|Y{Qpgj2$in$uotI6YeA(_xtnkkIL158AYh_qB zx_;91L()Ik8~bfwwpaf_VBa}ACe5Gu`-$_@=8VZ#kuo%KC-42e?&QK5uT2_1#rxYI z1{Td+liof2_O!SBhk=Fvyk*k(PU#jPnR#l`%+@RX`p=U$IpXbZW?0FeGXuPyjKPK11*_qw9e1-HUTpx0*l6U{a zAUUI(GT!@t6qx&ym_Z&40I=5AW!J^karqWw3@xWDS_(y-v!!PvEO6^zL}E&7u; zT+pX7nUy*@*&bv+{WZ(+#xSs^(94NKj;19_T*QKGaJ;h_zw60>rk{MhrpbM|N*eNMS-)zQw%(tW zC;758^zMCPa#TTfWrqw-k;9e)kKV9wc%e7=&w*L}ukI!3Mj2$je1o_1r-4P&UtY~8aQZ{9O&h_@zA_9XX|F?>>qq?*YImO@3?;s zESjrVCOX6xJ| zyXKzLIq!SF4$N6lkn?l;%?pR+-|XmP@INz3e={_LXJn{{ezx2dJx?|vRQY`?2+ zv%Qeu+i&x(`ng=wn`LOoJwY~eo8D`)7P)#q>2@zHNTs-E1~lUOg17VM@{#REnebD# zNn?>W_%HG|83VH9h3obG(+P64S4nH`*r(nt*@w^QKl>JR;fBm^klFtGBw1KSHvif9 zGj88id5gbPMs{2OEBX##d;|Ar0w==~Hcn31E&k*?B;IZc0T|kkNY0E$2;*~<-_l@z39IN-aq61d+pLnN`<7kaL{Y~IlzO7$c-Zgc$v=8#Gl&P5m5_!vnsr$=b`d5L2 zXGme+oG`rnet-CH#^mz6f7e2HN_(z+vbN+sw@-Mb_(v|lrpyk>{TAFdA!Vs|;I9IQ zIafWfYn5B1{ij#iB(we7j6-|#&nB#TP!dM$z9iv#8Co=PKfQIo3d}rWqYU@UwO!h? z$NuPXT!9rMqE+_dn8|e#S%NPdQ0x+B4an^5l5WLtaJW zPxf|b{Q8Hzz`x5U%sU?TzN6k)^}_0FRqqCM%_Ck@JYdTs3y1g8{g(d)cRb=9_aF95 zbjhP~SiCSXd*h=zyJ*fcIwem6^5`eN_Nce?KLUp>Uj5jF)z(U9(lP#sbM@3?-u?d} zJG;_*>pueTpZ-Wq-yi5^^xAo@rrVkAUGp3Hdpx=3Pk&tAtJoJ+<1worACK94Zt!l6 zu&0Lch^HRcUGi7i|A6IBOx!@iEB_|2VCc>#yw-1ICzg71{xk658Miz+{=P^4N-}u= zlV0aP1B(vaF2noDj>*C5e+G1JdEMr+_5Pmin!D5H=CpOr-=|%3OTCx>GjPy>>8E7M zukEg>Tb|PAjyZGZ$lFq{*yX4 zHlPpJ|F6t#ld*%nul!fwK<~c)3hXoe!e=HfeAP3$)!F;F(`~blKjZE3-~L5+Of2O{^U)& zQe^VHP5y%ZtSq>G!mM1;8*JA5`2PguY6(mlqDgVWYWy@FL=q{$@AdZt=%&&Zh1fboowX(N#jqq z{P_7hWn90?TfTYsyz{+_eivA@;3gT?x0QEJntpV%?)%6bdDdO};_jK}yr^H|%$_D+ zIq3Cv%>w6irKV8u3X%~Cm$veMdZR*d!H#4S9uO?P>Y{KH*( zz&o~iKV2qQ#*MFdE5(_wz0yCxF@5(QJmpngaL%Ir{dY}Qy()K>J_Y%^W)Zhrg!ko> z0(;GENq~F@|LzexCqyhrY?s}Vg)bNFt593!rtP*{vLTs$Zo3ybNp@@XYwK=0DR9Uh zL$|-}J$Xu?{FkL2c2pb0J@uzgm-dViY47%skF0je%leQW#U^PzHni^9Qv=5j z&I_(zx@h=6rtPhJDgXAKIW}!??=P1J-tY8(!O7V7th#*%2Cnr#aqs^Nssn`u{sRB> zFCYBCQ6KrhN8}67Ws8P?yy)>g{Na85{|*fNobOTnApLV5w)uVNclqlM{h1tnIFG(& z0rCqk{73(n@HFPz_%8e+2z6Ewug!{rpF*zgYYFGmby`jtzW~fIW_}et&~!9&G(X zng9B`tbZ8&HGgUSQTpHdvh_bgf5RuN|9<)>PNOyTS%Sllr{R z82{(<-tfO^e_-IfRFTSv_rmR`5z|#;LlqBNcww!*!ulDbMSEat~q`5PwST^C9ImX#}`d{cCAmk^UfW! z4FuTW?D%dzFe*O4qu{}7B z3Vwu0Ju>M@@4($7XY=`_OGZ_m! zV)Omio1+)l{2|1j_66%7Mc?_3|HDE0bLjR6ai<(k|8Fn|Cc!XDZe`mrgB>U{;@;96-_FptC{}xM= zyFk8`?wr7Z`}F(rZ)C5Y*ms}s)=%sYJn3zm*iRO`!E*x#PV46ncq8Wq=1%C2og0|* zBR9Ti_{O2aKDMg^`~KlB>zVBA_2=iux3S!wX+Qh*Ilr_k;2Zwe%x=@W<=nu*L*i4S zzR&Te$L=wE$A50Q#oyrHYyI_3_?@k{=octn14xBs};EXW1uKlIzak{8HZz`_1? z)OYfG#>st&Z5#xHCfxSuV0jq?Iioa8E5v-YRf{E)3Vvi8rf>B{?lefamS zd(niw?CaavGBLwF0+E1E=B`SL<~8Biye2H^WELAH&80 zT-EX>I#@_9l7An_|3yvmY}3E)L1N~Q!;8}z@&>N&37m^R)$fn@?e9tdS-kHbjQ^OoChoCZ2KWbo#P!D~ zJMl>M{Ps84x3JS2ydZGk%sEP!-`27<<^1~l|@5Ez{`p09AI{Jghe)K~hJ^Gjr{qQ3n`r%O@{oxOfJ@NbB|L8Fv zKJmm8_xb*>fBet?IPKq0{I?JM>c>C(!CxJ9=9rW7|5V)MtKv9^4fPZH3-#^q zP=9{%hWiWl<0sGe^ZwMl(+@ad(h>iugvs&$+Ya{E>Bmj#%iAkT+Mnnjfjeouzd--g z6uxA4VBdiqc0cs{{p+i5|9TpKp7Nh;Wc&ZG2@{`n^oHqQ(Bt-ZsQ&`l|I&_UwaGi+ zZ&$Yehj$(e_4mB*cUZ%mV)}`TdeluC(-R`~4&A`~P~R ze`?|WI{o=SII#Yya=vI6O=I2e7tiE=f1&<({}pNCxeuoE>)u)&cw=v;@xUVg+Y`29 z_(AI@FpEX3VH@3w#m6v>d8}X)yBOKv=Q+WoHsqygEtas39Sl8WadFIG0jt=;9!4Lw zycFiJ>?>cgG_)aK?`+3#)%pp{Vi9ZDM)whmk6{|~SivTCG4iP7IkMrTHsmh`)?x|k z*ul_a78l117O;vf>|wNKc`3|cS#)&64IPlbfU z7b8zDk{@)G4JV(J1?0yk)?x|k*uhZU;^LUW0#>nwJ&ZnOc`3|c`6ce=U}isVpjJ#}#Np*jz0G6@~!{|24OJQ!CV*_Od8tMU3 z0Sv!l{RC#Qh&61Z`>MsqFpYVvU=zCzjmUOOOsevYXKS&9b?jj1HH(X51`All7WOdu zy5*(N$gHj%=vQ zKxC&SCe_(e0W4u1I~aP$;^LUW0#>nwJ&d{s`Rk`dM>mvXpo|T5j#L1{ORb;4EEchb zZFHAed<@f=#|k!=9VGX^Y^cjXss~C1u!ME&U?^m9am-)=tJuOGMo+f9)X9!D zatxHQq0W^GVE7d4CoqdetYI77Q!PG*Y0P5{+Vh!8qMl3#tY0P8Abb?I=x)?db5|gU@ zF8H-r!a8;^bf(3{F@puHVhej1JxlZC{!jT0xeKt24RxVZ0K-x1CoqdetYI77vn@V` zY0P6qbz}og2D%tI#}bq3BB=nDu#O!JoojJ%%wPel*uox0V|xF~22#>cb6CcPD!no0W4u1I~cmy;^LUW0#>nwJzu&1qnB7>3UgS-hWak40ESc6Phb{{Si?5D zms)%b)0kHsS-8SL6T29>%o3C8yQKnH!a8;^^m~hoV+IRY#TNENM;DH!Eir{TEMr4` zk5mA|ms>x9SuA1=+vr|l@i9ze{tCVSW#I|~P3&UiN=r|!KqiAnVcsQ{L+ zjvWlGvA8&9uz*!;q0^%gz19*_n8PwQ)b~jRFnpc$6PU#!*07E4T8oci+H`_>1}fOZ zE=I1m#H6}dDu5-dV+TVwSX>-4SimZ_eC7V{F%Vs6i7Cus85`=TQ~<*{>nAXaMXX^P z-5V`FhH2H21@jD4u!&ua++>MKH6Rth64tSUp_?r(ju|Xq6Ub&ESP7Yf=%pV|m&1adFIG z0jt<5I2PDrAiCcADa>IR8|q(31u%TO^%I!IBG#~t?j05%!?Z&qj}>fU7b8VWOseuD z0c){@b?jj1PK%3U1`Ak4r$wWO(Yq`$g*hx^L;avs0K<1%KY>{+Vh!8qmMlJII>9sp zd8}X)yBN905|iptQUNSs9XlAh*W%)s!2(u&<^FFm(8K6`mYBjEma(CJNGgEgvh@>~ z#Uj?Qjqd#xA5$G!D9u0~E7-&?Mjo)lr21j00G6IR8>)QM_;w6$uzmuwSi~B((S69`V-M;5FAJp^$YTYY*u}`hmY7tJmI`1A>)63i z)#Boq!2(vRdjHEpEe3iReZ^#W8~gbgDF3*u&@(mYBjEma(CJR4RbsC#|2rEEchbZFK8? zyc3LBBbdfKRaT&sr>D9Xl9$*5cxr!Gh@M z0#ycD*u!Yk5>uGNGB(t|k_uq>IqN4di$$zq8{Oyi{+9(}&s$;|^H{+qb}{mT#V6H| zO9ilmb?jiMWpQ!LV4>yMM3sRS_At8H=2Mu%GB(t|mI`3_Me8Rpi$$zq8(rrmONe0_ z^H{+qb}`bnyre2WV!IYgSjP^Awpd&oGw2j(RI!CUjBd5W6y~su4K*kg!0^k~Phb{{ zSi`pI1l^7$#4wF{tY8zn7};idN%a#_0W4u1I~aP!;^LU`mHWTIKowiq!|1D)n8F;E zv7!ErQ~<-Gdq|B~pwWeG7%V;(Em#4bkOw!EbJ zX{i8~u#O!J^(-!qnV#PNl2~A%iY@G6bce;IFo$JqsGpGvV0fqX6PU#!*0Al+aNn_n z7^X3g6>MS`BksZehLh?NsQ{L+jvWjwwYWGs85#wwVhej1U1o_X%wZWD>Sv__7(U7R z3Cv;nwJ&c}e zi7Cus85`>7r2-fZTR(wWEMiS{B%#fKyWA3Dn8rL-u!&uaoMw4R^$St~EMXlx7&_hJ z;-aGo83qbi#TNE38nMI_=CF(n^@~yg44+~B1ZJ^_wKEQu`(F~;47g`nLJZTG#|k#F zi;=S|FR6Y>Du5-dV+TV~i;G7cYh)NGU=>@~!|2%-pTZoLv7vrhDuCg0te?Ov7P02g zXrp_sCB!g|d8}X)yBLXCUQ#_yDu5-dV+TX$S)3E6k--91v4uU1uCT-u=CF(n^(#^V z413m3U>1v}6Ra`NMmKH=F-&6~E7-&?Mpjy0QvIq_083cM4u;OxIJy7henaj8EMOH| z*u&@rwt*Dpu#64$Yf=FWC#;{qEEZKq0&5Jk(Y??TVwlD}RnAXa#npQMOJI$GHo6yELJZTG z#|k#Fi;+t#FR6Z0Du5-dV+TVi#{%OiGlK=JVhej1z0~4Un8PwQ)Ne@zFnpQy6PU%K zL!*XmbboINF-&6~E7-&?M$(p-RF9VmUdq5iE@0K-}9Coroz5>RBIhHZ4$SV9cbn8yk>v5S#wEibA5om2oz zSjUd&Xh7&X3yfn13s}V#_At8E@=}RBIhHZ3ju!I<< zF^?5&VizOpEH9~kS1N!dtYc@L-v1I1%9(M@U;(Sx!X8F%w7eANu#64$AEW{pzRCIt z%sMoRSi?5DH(Nps)0oE!HnEG5yyYd;6QlxI!a6z~8lhV(Fpe24U=>@~!|1J+m%<#D zv7vrXDuChJte-HQV3vU**07Ck!4hJa#ynQAiCv7Wx4fkKeW?JJuL78E$m_R4$Dhn4$Ih3Pm~H^xM=-^>c~Wvfg;whjqaV65W_U)v4TzPV&pE%ORE1U z6~GeKMMoz(4215sz&K{GfK_Z^52Gc^OJNSn*ie5U6~OR4)=%7{_rFYJ87N{6+vwhF z2{BA#9xK?yE=KONyrlX=sQ{L+exG9#9R@;W>&G#J1*~EVdl z0qZ9m8d)r24cq8GXbCY)V;(Em#4biEmX}n2Bo)9CI&~Ty3~jK$IA*YbRcv7oqYqhL z3UgS-hWcZv0EQp-`%W-njbIjwSi?5DRa+p2Y0P5Z zdej2rn85;8v4uU1K4y6-%wZWD>QAKt7_Ld*k%5FZ#4HxEhHZ2ox40OlF^?5&VizM% zSYA^7XQ=>|L`Mhe40JH`qy@$?g9WT&3ws!?TV4utSjL9>GpPWEpVIqZ1`7x! z!#284TU-p&n8yk>v5S#sEHA14Tq=O2XY~G;fjR>n3^i;#ju|Xq6Mx`M=#*&Gv4f%KEHI84EMOH| z*u&`amY2dDma(D!QYv6N!SD+c2|`Ue)_w8YKqm*ul_tn~!4#3s}V#_AvUI<)tu( zWo)SbAr)|FgkQIT1ZJ^_HEg5%hQ-G)jd`qK6T2AcT3%B9%|OsuOQVE!>|p3k3yfn1 z3s}V#_AvUE<)tu(Wo)SbIp74hTO$~L+aCxfFpEX3VH@3^#m6v>d8}X)yBOJFc}exZ zBwGR$BBtJuOGM&Gf#6y~su4b}N?xd^l&hTTJa6PU#!*07E4 zQj3pa8uM7eCU!Bh%<__=Gx$GJ0UZ!aSjP^APO|wpX0U)&Y+(Tkb?jj19E*!%1`All7WOcDuH~gLhh^1~4L7uLl2ic0G3zHVi$$zq z8{P9PK89(`V+EVo#mEZ1|7F8TX$*#>0$9R2b}-~wTpTl4z$&(|htas@r7(x(xZeM= z;f4;JEET};O6w;ui$$zq8{P9QK89(`V+EVo#mEJE|I3Dx7l@}w1+av5>|iKiadFIG z0jt=;9!4*;ycFiJ?9gbar%DAdyvq6s%wiF1*hcpvi;rO%^H{+qcF~C>EitKvr2<&O zI(9I$+T!Av!2(vXg*}X3YfU_iD!yBG;Hn^-QS%mavW;3}r1Yju|Xq z6F-&6~E7(M*OCz$@5|e6FDu5-d zV+TXmTU;D7SimZ_u!qqbEH7m`!5jl+Y^Y~T1u(qM`U%Wp5o_2+H)ruNOk*A^*z}eA zzso@6MoUbp=ST&xgmvs-=q8JcV+IRY#TNE3db8!FR7WU>1v5 z!#29NSbPlAn8yk>MMpQ(Wgv2^B_`FFQ~*m@#}0;Wv$!~Buz*!;VGpAP%S#mwar_PC z7${>yJx?lt;q}%}U>1v5!#29NTYL=Dn8yk>Z+9%P%RuA~>nGI}QUNSs9Xl8*T3j46 zSimZ_u!qq*EidKJ$YB{9swWk|@LkqVU>1v5!#28iTYL=Dn8yk_O&VQ{lq@l+#-##S z!a8;^bdSZwF@puHVhej1z1Pokf+=eRb6CcPx>72D;rpzgz$_NAhHZ4q79Ybj=CR@{ z_kWXtE=KOR#H4z@Q~*m@#}0-bu(&v8uz*!;VGpAZN}eMdNNGdNVHq3h1yTVFSFE4F zEEchbZFDzSd<@f=$BO9a2AT|XG4hZlCe?&g083cM4u&4KxHx98fK_Z^52IDR|78QI zsx6SiGB(r;r2-g!#QF)$Vi9ZDM)y&Rk6{|~Sb0?Mf7w8jfi6ZKv+<<5N-BUQtYZg5 zHH(X51`All7WOdeJZ_08%wZWD>P1ok3_oH01ZJ^_HEg5%q{YWDjd^q`G@97ONZk^X zYEmkIC9GoyLr+;;95YzJDz>m^I>G4EmYBjEma(C(mI`3_8S5u7i$$zq8{LM*$1sg~ zU%CG)3^cKek&Tv^R4{0Sj86hR7Vz$K5L07%wZWD>LpSE3^%Qx zz$_NAhHZ48v-lXMF)up0aD{;;b}{n2B_`FBQ~*m@#}0;Gu(&v8uz*!;Vef@Q9Dm_x z%Mw$V!!kD1OQixB-faB@X0eDhY@_?4#m6v>`4=6Vs4&pPE=FFm`J{T8Q~*m@#}0^U@|TP!h!IV@vC{k>EG!&|MNz$_NAhHZ3Tw)hyP(aF=OU=zC-=~!Y? zO-lu^gmvs-Xq&~wF@puHV#{=bJqDt$SYiruSjL8Wxl{nduUbEWSuA1=+vsk$_!y>r z<^InzP{Ag4G4h%vCenAXaMXX^P-JKR6!}LzQ|7F2E0~Ksy7bEXjTvEMSDu5-d zV+TX-h#wcn3>L78Er&)Aqf0F@g*hx^L%l{SfZ=7uGNGB(uf zqyiX@SU-VTEMg7Y=$>KmG11Y5(hTIWf=%pVLQUMH~ZT$phv4}NnqkE3U$IfxAk!B!|6>MS`Bj;LtQoTVc zfF-PB2SYK7i(>{0SaoQ$u!qs}EHQ;SEMr4mCl$c(3hO5@i$$zq8(q)hofwTY=28CT zT7Lsg>|!Kt<4H9q6~GeKv4f$N78l117EC8tWuS#UjGk|aDa>IR8|sZx0SsSY{RC#Q zh&61Zo6vZ<|6_hb?gGqX1)JE#$c46{q{+Vh!8quGafs7KlkhO=BJ_*u*YIF1GljnwJV-3G3Lw&?OcZ z#|#!O(feN(s4~#P9!67^n8F;Ev7z1~6~OSN)=yv-i&(=px|cbY5WCDwV;(Em#4bjD zZ}Ca>R;d7%u#O!Jr7bRw87w$7s@TFFMlZL-6y~su4fQsu0EVxyegd;t#2U8Iaj&$5 z7^X3g6>MS`BN@v}ss*V4mavW;3|(b$am<)bu)shSTiCke>ZChF-&6~E7-&?M%GwfQoUU&fF-PB2Se9dTpTm1BZ&nDs@TFFMz6EP z6y~su4fPJG0EX9EKY>{+Vh!7(qlxbImJq`<=COiJ>|*2w%S)<7sQ{L+jvWlGv$!~B z*6IB(i3J9#*uox0bC#IG9G0=6-YFHp@Qv0_U>1v5!}g7O|4X8KlNrM_=COiJ>|*3* z%S)Tkb?jg$Z*g(VI5Y}a#TNE3dW$8dFo$JqsCP>RFnp`^6PU#!*3fCwaBs7O z7^X3g6>MS`BL&M#swJramavW;46V1gxakBl3>2`6E$m_Rc1uiQ4$Ih3?~w{%_zvqQ zFpEX3`O5v@X2304LJZTG#|k#Fi;+7mFR9)u6~GeKv4f$zEH17(l8|AbfK_Z^52JTm zVhVFu#)f*IQ~<*z>nAXaMXZUACbSuF@3Dj!rZJBdY+@H9_gY?3ElUNkgmvs-=st^! z->3J#BxD#UU=>@~!)VzOQ<%dtHq`s20vNvE`U%Wp5o`B57SLwEeZcxLOk*A^*u*YI z9<;oq`hZjbOIXJahAI{pcW7j=fK_Z^52G6_F@-rSV?%vVDuCgKte?Ov7SXBEXrueE zCB!g|d8}X)yBMijUQ(?{1+av5>|p2-Kh6optr5&%0jt=;9!4Lv4WuxKWo)P$qyiXz z%=!t;V$oOb{~7~rbZeFn!!+ixf=%pVQ<%dtHq?iu0vN7aKY>{+ijD@>7-*yWlqJM4jd`qK6T29B+VYZWRVsibtYZg5 z&*=Rxf$?W7A%g|1Vhej1ZCHE?b6CcP`iN8j!yB!iz$_LwIyO;bppEV(8;@Zc^H{+q zb}{m-2PsjT*Mm zeZdl9n8rL-u!&uav@9>F)}#Vh!a8|*2%%S)MS`BR$JYstu_CmauL*!43nV9TphJ3>L78E$m@*r{$$Ehh=Q28>Ipm ze#iO=U%CIY3>2}3ZFJp3{RLu}#ynQAiCv5=wY;RdNh*LPtgDVpbQlONv%olJuz*!; zVGpAxSzZcrSjL9>tW*HQA?qhZM<=oj6tRYFbWgT~7^X3g6>MS`Bd1tiQf*2Fu!Qwf z4wd^~COQm+PPM=|X0U)&Y+(v5S%OEHA0PC>6kx>c~KyfewaNSYRA8 zSimZ_u!m94@=}-{eS32CTVEMg7Y=&rQ57^X3g6>MS`Bj;OQQf*5G zuynrO|1wZ#po5_cEHI84EMOH|*u!YT@=}h@39_y&iTjr?H7<~?5H&8buK!sTaJsq&O~RSv(-82+;qCP9($3_OlPfg zkonGjfqfbRJ2?h{&Qxcqv(q{2G;cfZdpcvCxz0xCsB_in+s)kNcN`aeor%suXRCA4x#@J%V=vN~>8y1QGT+@VkQztWcOGY;Gu2t@>~zjL&AX2K zp3YcjuCviO>Rfd?cOQG9%=h*S7>Y_~uXE99ojNZ1Iuo6R&Q|B7bJOYGbL>SrGo7{0 zLFW7WfB%14Vc&ZU0-dSOQfH@g)@gq3xbNwVb>=!7oukfGr;{Cfq0Dvv@BdF7aZ>5* zbuK!s`wojIzRpBvp|jOF>D+X>_aA$a&P->mbCCJL{_p?k1NMIlJ}<%kzYBDxI!m3M z&RM6KANM_-vCdp)qjS``>U6$v?1eIo5BGlv1pBOX_Bt1x)&s}SeVvKULT9UU(z)q$ zzj*9LIy0TM&S9U%_k4H1fCT%ri{lJ*raDWVoz7XO`QUNi(;4f`bv8OjovTjgp<^$6 zNdEob_6ta`&q`;nbJ1yi>G-*?GtpV-Y;{gLH=S;I>_s{=owd%PH1>s$_6ta`Py6BH z40NVCOP!t0S*Q8sU8Qu z&p5eW@I61~U>e>+d9vA{J3|u&f9c8sPh?}uj%|q=cP{^dpGL5Pv_%@x&Qk= z>^MXI1gC-hq$UAKK?yoA1GCYV2V#(e28@dR?>{DTp3;6OIAi|Pz1|NDRVqLyd^8*n?_i9iNwFbICUTnO0DYZ8DIl%RWlfBz1(naKQ_ z);th{95i4AD{x-WdMNk_av@NG9xOYI!;;nOwht0efEG+(1MZ7jk3a@$FbIC4TnN}- z-xEWkKqN>(2|6$X^BcPCff(eV0V7y}GiW^&{3Jt8bkL3p^k4zjOR~N1_#goVXu$+F z;J&Q&2xLd>?@vuM2!8VZ8>fN&iY5U_K?yoA19Q}t2V#(eMzR0>%S0=1zN!6C@KfYM zpaMNufc2^_`yc@YXu$-G4Y}Xaegra5gF*09LIOi%e@CMLq@V;Hn1T6@wmcAn95i4AD{xLrUEZHi^t0qdpaMNufc35}`yc@Y zXu$+F;J&Bz=!pIO$%tw&2!6Jl2-xpy5`YwxpaU~7S8aJ92DxJY`=5zMuma};?T3P& zBNqY{=)nT44|UlG2`E4dj0tVP{jT;SkbxQuf}blF0`{g!08&tb4$QzbKGK>8VvvId zj9>-M$65~sKTj?MD$s)kSfA*!|B1XmQcH*m(1HnUz%{@3*or^~YA^_XzFY{{XKE6F z^vv(w-yc~ji8?R?^DM1-AO<;TzzA00oUQdx@C)QZpxR*^qMm30mZjT1NI(HvFo6xY z=V(0w8K}V^Fn*z&NF=b&RRkafCFsBm%=5J6ff(eV0V7xskoU*2wI2$8k(>xrpa%=E z&evrhB%lB-n7{_y3l8=D{fUm+A0kkLLGX*^LcqRIlK`Zk1Ra=x>1fLXv10%Gr->Rc zf)zLyX+ISF61fnlKo1sRU98JKNI(IM7ENFS?j_ofKn7|s2!5$t2-vPB0Z2g!Ixri^ zyi{u*h(Qh-FoG30muWo|{4%)^s6Y=EU|nwLwtu-I0R?Em1UBG$+KNC1YA^_Xxm*a? zS7;JkA@7fTmJ*eq12ZtM)S3rkkb?${UTP z8*s1IdIU013k>;#45D8tCj$00ngk#PCFsBm%ui{{12M=!1I7d7{aJ~eK>MNKSILP$ z1$wXm>snp*K>`ZUf(dL#?C+2JY3)ZK12q@~zgjK??CUfMKnhCGff<;gwmilD_g@p` zpaCOTfpfj~L&5jTg+K**umI}@UG_l&i~_Y_0vm8Yqx}eEpaz5B`{Y8vjx-5C3QEu! zXa?quTJt~*a?pSgtiZWR>!INLosbjkXx!UqW`Kno_Y0XNoq1Ts*ALGS}| zAzm&H7miO3;BBn78P%2V#(e28>_@&aGMxcNk~n12M=!14gg{=Zo_G$j^tn&iD;GPJs&a zU;$R4%RWdz0a`GD4Y&_#JrWr5s~J%Z2ElLKKRONUhcpR53QEv{8JJ(vmIq>xA0Y2f zLo|XFIHmSO!EcfafeQ3s0oKF1?1Kappgm%Le`(VvvIdj9>-M6Iu@izfCR#swWJMdZGnbPwGcLNI(Hv zFo6xYjn*TOff@{ryg$EPP9%}Qeo7I56qKL?GccdlmIq>xg9eOX-C-Pl)%mLSL&5Km z6M+i!U;$RE%RWdz0a`GD4Y<$jbwhqE5(zR;gF)~+_m55k`&mr_kb)9)U0;kh{DEM7_>lCO!4;ElOuggA2Kyk$W{b#3QEu^_P>9e$n3S|ff(eV0V7y}^P<*6!S9g^feQ3s0fzN;-S$BO3ebWHY{317 z)+3OC8VrKpD;EOxph;k$6qKL?GcaG$ng?Q#g9eOX186^7saw1@VQN>n{pUn8Fc+TP z8*tyzdIU01gF*0zxg9eOX1k-ISd4J?rYobB$N99Do{y>ueq@V;Hn1T7BwmcAn95g$O z!;g(bD{#K6{ZR179P+JP=FRp0z-M1%~#+ z3wHb&IT5Hp4;ElusLMV`Kml4XfepBh)+6Wp_V-7AH6yCQAo#O#B4A&nNdQt%f)32U zyjWWvh(W%?IQ&LKG=dd4muNo}{5iQ0s6Y=EV7a>Ng9H?y6&Ui36VV3TOSKS8^Oke}aZepH_r|zal3B73jeNtm|~y2MH)Z3ns7uH zZ`6JSGEjp-@Ym%+z`jY70HmM<-2w9c%tYpAwdR2sTP8*p#YdIU01gF)~&;BRaw1@-ngk#PCFsBm z%saK^ff(eV0pp#9Zm&enU7Cb~za#$;feQ3s0oL8R?1Kappam1y?w0pQe#1Sb{Rm{B z27}=5%7uV^k0t>~K?yoA1M^;Oc{_~5H^xLcXut?o;CxQ|q2TYyg+K**umCI5WgjF0 zL;3|#3ns7u_de}MAOkfR1b<&H1nm1Y2|x-MgIYI2(La(CfeQ3s0oFsh?1Kappam1yfcqt_M<6p$4F z(RwKO7jhv`9kIVZJ<$TJr*zu~2`E4dCa?kbX{|>f12q@~|MGkG|Nj28>csx)F**rA z3QEv{8JMlMJP?B%G++cPFq~(!9}51JoCs8)2Me&C)ny+fpa3nHzy{psv>q8K12q@~ z|62Yb0(PfK08&tb4$Q!OURxfBLH@kFKk^$5(Fj)Hd`)*k!M~9UfeQ3s0oDt;?1Kap zpnXB!ANj_KXajDq{Rm{B27}<=%7uXaq9y@IK?yoA?=TL1^XppkKn!xwfDx>~`G(d* z!M~FWfeQ3s0oJfD8?x<-1PLfW3ns7u_a$vbAOkfR1pi(x1nieJ2@a6=CnYLD2WDWt zqBRf1AO{T?!3vyF>!IL3>_2+yi2ePkhzlgmg9H?y1rykS`>NI>kbzoZoD8D> zC?^8;w=@Yr3QEv{8JLr{JP?B%G++eAik#Q99}51HoCs8)2Me⁢;@0Kml4XfepCE z>)MY%25K+}{yyWK?6px z0_PpAhl2km7XlUN!6GnZ$vUmuK1e_TS}=hPxbJE`0vV{mAo%ZcAz;5JiM&6-K|4}V zf)32Ud|$uF12M=!14gg{XVrQr_#fZ1zdxsr+8-j&g9TV09JcqT8YG|qEttRt+z+)L zflOhX)I@{ef69q~{asB0kb)9)UI{Rm{B27};#%Y}e#e*ZBEKnhCGff<-*YRfy*P{l+!Xut?o;GCtc zQ1E}`LZAXYSb%l5F8d%k`}_CzNBRX(3ns7u*V29jGEjp-@PFk(z&=Nl0HmPYVH~zQ zq8XUyYRv;N$Uy@}uma~it%rjDCl>-0=mmy+wh&piZu=ks1!%zpHsGGG^$29327^Fe zozn-1>Gv!3UzC@D%q@V;Hn1ShP%L6gUfzhB5tiZWc`=Q`0xe%y84;Elu zrprD^Kml4X8E6CU<=T%x25K+}&Xx-S+tVZfDJVe)W?)_+?~iWLO$1-k8n1QehJ6WD-zt=1!uff@{g^A0c3 zLHnP>{TP z8*pzp){T=$b&`P^41)9bKhSAle@2r4q@V;Hn1LB-%L6ema@2qktiZWZ`=Q_hxe%y8 z4;EnEq{}`?Kml3oZ2PxrEdd2+!2~woCfbTX25K+}E|LoY`!-F29me6al&Az9 zn1Ok_);th{95i4AD{$`6dMLP9E+jBS6;TfsV5Pe4g9H?y1rykSd#BbTkb(LDd4C4c zC2}HQ-=#?aQc!{p%)q=`TONo(4jM2XvA;hnk#kD>p}>_BfeQ3s0oFab?1Kappam1y z6vl~rul6I5ff@{gOXWhq{+uQONI?lYFatBwmIsU&<)8s0Sb=k&_CvvCav@NG9xTAR zUzdH5fWkm6n7{_y&uc#d8K}V^xLhs->|B!oq@V;{F7J=jW+L+ons^`vIcUHLR^U9K z^-$o+g+K**usk5|k1SbV)NLOmpa3nHzy{nx>k-I64FRP=XH3 zzx>P=OvSz_(FSq@ZjJ{j4LJf%%kvb4IOP=FRpU;}Qe^$29327};QxzG;dAp04O0+50dbYKSN zv)b}N406zb5v;&@Zm%2i2MI-=mJ@*r^k4y2r^`M_Kml4XfepCNYdtzZ-k*%927}-_ zIT5hGrbz%&P=XH3zyyWK?6px0_P>Ihk_gALZAXYSb+7i zF8c;bKml4XfepB?Xg>lOsKFrkj9duVqb31JM?<5Mr~@-Fzo|POh(Qh-FoG30uWCIM zL~1!%zpHsHP?b$NfHgLY(~27}fq6Um$1ljn zO<)7=ceEdY4Afu{+$8R(XHqvy`X=9hianfi8O>203WJ2v*>H zsP#~g$b~+X_eWF_^xg9eNOLwV9*98>8Zd$tIOl6U6x<~j0u|`N zVj$}R-S$BO3ebWHY{0!x>k-I64Fa?pSgtiZWg z>*2*eu)ja2{^14F#E82vnd43$U)%WnW>O zBt!*h!2~woUZed8WS|Cv;6Aw!us@|q08(I-r~@-F1Fd-=203WJ2v*=+tMyQDzg!4Z zpf}J0tWWE<4-!y-7EE9R?sZy^Kn7|s2tF?ty3SD9p&|e&C_x8iU|z2+55yn`4H&@+ zoEzl*kv~Xy!~R9NoCs8)2Me%1qsu->Kml4XfepBk)}tN9;a4-F8VrIj$ccb`qb31J zK?yoA1M?wc)h(@pi=d;=m1rNxDKm~fR04vsIA0(gv?E&)sOhg-SZ`OVU zGEjp-@I|>0uy4^M04XRz2j(O8_s6_dYaWO}4jM3m6*!63LqQ=I0u|`N0<7DP%f^YX zI!QnQS}=hPxVP(%MIZw;7z7W>g@ApBCIK)~RDur7z)ZE~ff(eV0V7y}bEnor!9#K( zP#LHP3$X6eZ673{04E`Rbgg0V7y}^Lg!uf-lR3Km~fR04vvJA0(hSK;EC0XaXB> zzo7jHWS|Cv;1RhHupiJQ04XRzcf|hw%tYoFwdR2suF2MH)Z3ns7u_gSq+AOkfR1W(C@fMGwUQ29804SabQM1$a~aw1^&ngk#PCFsBm%onxg zff(eVc~RaU`LU5`1V-VI01CBXS4rM<4?=7zEGA zg@FB%CILu62|6$X^X0u|$QOAcK@4)xfDx>~c|}{H;90p4s6Y=EV2!%$A0Y2fLR5ej zOke}c9-lZ)wc~F~~s!Mz8{B(t0T9q8VYd-=R zsKFq3Q7#1RcQpw>3QEv{Szt)td{1j0h(Qh-FoG30?`u62d|fUCD$s)kSgS0{`{N(9 zBLM|y!2~woexN@Vfeh4O5PW0*=F`CbP?O+@{ryRaO3;BBnBUc!2V#(e28>_@&ZhNH zFvx`z#z{rgg9TV0>9!9NP=FRpU<2;QT8}^mYG4eam*hmi{zQ`iq@V;Hn1N~j;PHDr z5Q7{vU<9jyoHMl_3SO2IfeQ3s0oGZ%?1Kappam1yfP1!~{pf5(25K+}UXcp{+tMTe zDJVe)W?-J9Ef2)!{NVon$XDk?4H&@+oO87w3P!mQs6Y=EV4bJSK1e{Z!#I3VOEiHE zxVH8qkbxQuf^W)&fPKCu0Z2g!I)NdznaI3AYaWO}4jM3m6*w1aJruku7XlUN!E%7S zKbE80K1e_TS}=hPxEE{;QD468`|IaDaNd-MHQEmavs?&Npa%=EKBdb(NOl;9 zenHfN32eX(v>$;C)L;<2Ar}JnwVDJV1*O1{?T%;$=BKshff(eV0V7y}bDh>h!JBd+ zP=Wpcd4ConE7WZtB%lB-n7{_y>$M(%4Afu{yd@VpVt;?^8#D?)3QEv{8JM5ZmIq>x zg9eOX1x|FV8z-S?krROm^k4zjjk@fE1QehJ6WD-zlhz|(WT*y%;B7e(us^Fw08&tb z4$Q!ewdH{rk2+q55p95i4AD{yYtRwy_v7XlUN!2+y1blKlw9BK(s z0a`GD4Y;ZHBand_41#y%LcqRLlK`XwLzYUS4$Q#3OKTp8K@J))f)zM-YdsXaCl>9!9NP=FRpU<2+wT8}^mYA^`im;e7ir;pknqI(a~{(ljH6qKL?GcZ4= zEf2&X2Mrj(sxVHRO#7i=l@oyq^k4zjeY)&}1QehJ6WD-zzt)WiWuOLw;Dh}SbQ;*7 z*CYTbC_x8iVCLHLKn!vNHDClQaK51ZQ1GE#2vnd43$Py0WgjG<0PO?v{>V2@L>q9w zs2@cj12q@~-<1miyU-*6DJVe)=0e^d>6;H~%>yyWK?6px0_P#Ehk{Km1S-&j1z2B_ z_eZw-uc`8BP1AO<;TzzA00yrA_^@Dt=hpxR*^qMm30R`mz}SD)8MGe?ev+IBRG2HbCHKLQ!3!65jlav@+(ngk#PCFsCxAoDe? zc_0QkXut?o;Cx%_q2Q;w%fm&e5A7l{yOgRy-zoSV2Qc!{p%)op{TONo(4jM2XAn(sgTP+Y$Tw0HZ)Hn7{_y?`l5+8K}V^__=Z+U~ifPAO$7p3^W7t zBdvKL203WJ2v*>Hto2av^W;LH0zFthmiI@NtWOj^NI(HvFo6xY<_{geCjuF$!65kg zav@-!`9u5rBT;asewKm~bYKSNS-R|j804SjrP9%|_0zFuOW$BI& z5>S8^Oke}^8SoOD{yS> zhk{?U@0@c z+tnlhDJTupff<;WYRv;N$Uy@}uma~Yt%rhNCKmz~=r1$$vxUgIToWH8pa3nHzy@4T z>k-I64F$;C)L;;N zpIivoktP914OD^-%)q=+YaWO}4jM3m6*xC(JrsPuTnJP*85;FO3$Q+`ANe2w1!%zp zHsHouk3a@$FvRly{D7QDB7uFgA^<5UK?i1F-l8oJ#2^O^7{R*3IQ*(}tM)^|56X!^ z1$wXmE74^iB%lB-n7{_y+xEI4KNg7u8K}V^_@Vuy)4;x6lK`Zk1Ra=xd55+<5Fa4# zPfpZ;5v;&TwI2$8cyFBo73jeNtUGnt2MH*S*x#R)XaXB>@6vt*GEjp-@FQ{|VBf7t z08&tbPGOwPMCK{2c_0QkXut?o;M}A2Q1ENyLZAXYSb$;OtJ^+EKml4XfepBy(|QCl zP=i76Yvn?~&NK-Ol!6j;U!IM+$%XEh_eWF_^KQU1b8Zd$tIHmSO!EcfafeQ3s0oKF1?1SWp{rxG3S}=hPxL?+O1Ts*ALGYX9 zLco4RlK`ZkR2U~6(G1K=YaWO}4jM3m6*!M-Jrw*Fxe%y84~zv_U(szJB%lB-n7{_y z$Fv@S4Afu{{8qUTu#H-y0HmM<9hianxVAhHgB&zq1S@c!(0cfUvFo?Vi6jzKpa%=E zp41&5B%lB-n7{_yM(YvC8hL-@S8Jj{@Z04?zS8^Oaeo`dLwe5(S8InP=i76JLN*aepZtJq@V;H zn1T76wB-Hq4%!ie95i4AD{wmf)ll%e_WCJMfgUWtdR~|PBlh?T0V#_8Zd$tIB#n`6#OB%5HKp#g9TXM z(QO|jpa3nHzy{oRv>t&B)L<|~e^^cg?9-YAAO$7pzzocHwdH{ryyWK?6px0>}K}vBlh>lI#aiO zkbnZTU;-O(&(eAXGEjp-@F(R$z&`t!7$<@1Bn2htzzj@FzsLhI$Uy@}uma~Ct%rg? zwf}*PQ>X$xSb%k|Zu=ks1!%zpHsGG8^$293HqapW({dtU+nNL*1tsXf49xSj<$)OF zpaJ9ghHkG!&IOu;fOa2@SOAOkfR1beg$%#M(dawZN8eR550t(QA32eaql-47V8K?$>;4jOGfE{QOfE1LV12ZtM z)s_chkb~x0d4J@`MxqrspVp5;!C#RJfeQ3s0oHZ8?1Kappas))^8UzIZ$xgW{Rm{B z27}!Xf8>k2T?fP<2Mrj(3Y^bqD-`@Sxe%y84;ElWy6g)K zsU<`OXu$+F;NGbH2xOoJgW#{rg@ApNCILtfkoTt~>c9-l&uYyBF~~s!Mz8`W)_N%T z8*(8~9kIVZJ<$TJn|0d<2`E4dCa?kb7Oh7h12q@~fAfs}zyCk2I_@hI5 z8Zd$tIJwqC!9Uo4^wbgi`%@A1U;)+_blV3BC_oD)umSf0tw$gOwZb?VME_7u1ne(r z5`YwxpaU~73vGEI203WJ2#ggu4{ARY{3AILs6Y=EU_GSEK1e_TS}=hPxW<>XAAtV_ z{+V0|RGp=Y)@>gopa3nHzy{pMwH|>C)L;<&bGZ<(pO8e}pWvV!DJVe)W?(+4 zU*v%p#4)`{#1hm6rcqY*ns=A)+3N9jFXyZ z5d2Fy5wO3iNdQt%f)32UY_;Wq804S<#)wwnJfrSz4Afu{{A;-ousclxkb)9)U z804S_@&O2HU1^-Ph1S)|cQBSl0>$GnBAOQtv!2~wozN_^JWS|Cv;J?fJbNZki z_IncT2tW!-(1974?`z8gF~~s!Mz9{Szdz2Z{ZQ~f_MblmD$s)kSRd%J4-!y-7EE9R z?uW;^aT2LcGEjp-@IU23!2Yf#0Z2g!Ixqus)0PKfVC1L)BUpj+k@iEu|B?%V3iMzB z*2lW+g9H?yHP8e$;C`b02xOoJgW!M5g@A4T$T0~(3QEv{*)(+9JX7I;804S_@&Uso71^-VjBrrr3Q4bbi*}Cn61QehJ6WD-zzSbj ze+JRvAp-UVngk#PCFsBm%nP;Uff(eV0pk(-`?C@`j`l-=DJKFI=)nT4i*(rs2`E4d zCa@`t6Zc~6M<4?=7zAhTf1uOAzC@D%q@V;Hn1ShP%L7J?a?pSgtiZWc`=Q`0xe%y8 z4;ElurprD^Kw+R3Oke}<<=T%x25K+}&Xx-S+tVZfDJVhb$@?R^dL? zCFsBm%xiSn12M=!14gg{=Tlk_1;)8@B9Wj1Jy?Jh=#CE(P=FRpU<2;8T8}_>fIK@j z(I7Z)Pfi2-)0zYz1tsXf49x4a<$)OFpgCfHe@3DeIHC4Kfh`vT73jeNtm}2z2MH)Z z3nqnevJtsAXg>lOsKFpOUoHgf&u9{W6qKL?GcY4<86Jv34jM3m6*xC)KNMUb7XlUN z!2+zCblC@qfeO%q32eaqto9?2ff@{g3*|z8Zd$t zIJam$6gYArP=Wpyd4J@yg~+;9w|$U+0<>TP8*me?M<4?=7z7u|g?1PR*|%vFfE1LV z12Zsh*Omujkb?${U1!%zpHsIc=_2>Y3e=?#P z41!DKM8LjFlK`Zk1Ra=xdAGJa5QF@P{rzc(Mz8|sl=ee`D;EM4=)nT4dvw_c2`E6T zFis|-4Y>DeKLQ!3!63L)E(Gk)X%c`Gl%NAMFw9JA9*98>8Zd$tIQMBi6kH}30u|`N z0<8OW**8!E3ebWHY{31z_9Kvi8VrKVkP%ljisB~b@vV17Y&JP?B%G++cP za30WlDDdP$pn5>wABlRR1z2CyZ673{043xNvsU;);ny6l4l z6bj>{C7Qqn+^=Xq0vV{mAh=pC1nkE&2|x-;&;escX00_3#2^O^7{Lmh$F&{`u8|9Y z3iMzBmhpsc`yc@YXu$+F;6ADK2xOoJgWywgAz(L}1dX9eiAvCc8JJJ$vIk<2g9eOX z1L={mF7GQlTP8*p2#M<4_B4&(6igGATLiGcl#CILu6 z2|6$X^I2_qAO<;Tz$h@}S63qEIqipnPs@ow1$wXmtJ7s4B%lB-n80>`yg%;q+K)g6 zYA^_{lM4a+YnlWg1tsXf49pj_-M zt6C3VmG>u-6Gy+hH7jwI&(_H_C~C{hB5LNI?lY zFaz`3+VVgQa?l72`LU5`1yZ`r|d3W!<_daibcklb& zz4yNNulL@2NyY?05QK>lgb5P_!D9qL5ClOG1Yv?82!aPeu(PgvegC>X$9b(YxsK&I z*1;bh(0~!Fz*+RIp&*tGfeQ3s0oDgP>?@3;gs1>5n7{_y549hG4Afu{Tq7F-_D7lo zAO%K=IxqwCq}DtTgB&zq1S@bp)_N$oRyG7G&>Lt0)+ajcg9H?y1rykS`>EC=kbxQu zg6m{MpUV9a*{dP|DJVe)W?+7%Ef2&X2Mrj(3Y^d7{>baY&-Vu33eX-P_h%y7fctIjM<4?=7z8)UhJbyFCILu62|6$zW4}M< zceLh#804SNF(C_oD)umSfpeOUxDP=i5mlWYjs zr)v@bBSj_Xzzj@VYaWO}4jM3m6*y;TJrvw58v>PqdawZNOr7>Y0t(QA32eYUOY0HH zKn;eojD6@9S&>8n+ff7{1tsXf49v5&<$)OFpaCOT&;Hhaf8?#sIob~eCuBvS0zFuO zb*>KkAOQtv!2~woy5HLGkGw3}bwCDcFbHnlXHEk9JWT?Sf)aFK2Il$N@<1#w;gGm-gSt$82@IcUHLR^a$r4+WWQ2vnd4i^4dvF4k!uB%lB-n7{_y?`b^(8K}V^ zxLq~`>`OE;0+fOhbYKQ%pfwM~AO{T?!3vy9wH^xYkPR8A0zFuOb(v24AOQtv!2~wo zUas{BWT3uW?vMPCL83clMZgX<2|x-;(1974S7^%vF~~s!#w+Ch$Xiz;=SuB|f?QSv zD$s)kSl`!SA0(gvEttTz!#KRdjkF(u4Afu{+$9?V_Enk$AO$7pzzoc*wdDy6d16eI zg9eOX1uU;$RF!#+q3ko!{*wO|4paIevR1Ts*AL2!?32-w$Z5`Ywx z$Jp;rM>GTTI<0vi203WJ2v*=ES`P(np@@m$je5e6*xcCekdqq zL!bgZSb%k#4*MVh1!%#v!#F&8BXTqCM<4?=7z7WQWIO>TOVBM?JK1e_TS}=hPxc6y2 z0vV{mAb5EHLB>gB->*>sQc!{p%)l(Q<$)OFpaCOTfnz+N{ZR0TtO!(~2Me$s)L|ba zpa3nHzy{ohv>rWVs4}7&41!1H4-v2{O#+aD5_Dh&=EK_ZKn(JS<^IS!8ln-bzuU;$Pm!*YN8gLWjK04lOsKFq3Mm7ZOS2PJg3QEuk45`gT z=BrxsKn!xwfDx>~c}?q~;91!as6Y>v1LXc#qfYxE0R?Em1UBHluJs6Hpaz5BIoS}f z-#8@u{Rxh>A0kkK4$Q!OQy=7k804S`ZU zf(dNEeOv1h$beC!LGZk+2-xpv5`YwxpaU~7XKi^P203WJXrL81?`l63ydZywKm~fR z0P8&+_CW#)(1HnU?-^Qi-&aH+12q@~FUp31y=W4E6qKL?GcZ5UmiK|&A9-R-l!FG0 zUekF~~s!Mz8|sQ>}-Bmt{ks0{sDUe-t&B)L;<& zNH%ng{r=dWYZQPKl%NAMFu%~22V#(e28>_@&URckjzZBOD*_eh!2+x=b=U_9C_oD) zumSfgtw+GfPz?sbE3zVBf2~OXQc!{p%)m5%{P;N@h(Qh-1C3w>&bPH63SN~BfeQ3s z0oExx?1Kappas(@hE8up?sqhaKn7|s2wsy70o&3f04XRz2WDWN`s4fkkq3FFYCi@! zXut?o;GCwdP%z4dKm~fR0PA!e_IDVET0&HS7EE9RuC4tDWS|Cv;C0y$u+PvW0I9%` zp^~TrGceE8ng?Q#g9eOX1 zYzS1K2Me$+(qSJYpaAVfa)0EB6VV3T@9I|($UqGS!8@`cVEdW`AO$7p!0gNYk-mAc z);th{95i4AD{#K2^-wU&hCl^+umI~4xj!=P?>Zm>1!%zpHsA)@ia-WxFbLk24FUU7 zO#*=--=#z)=)erj%e3Z!804Sa-6MP=FRpU<2+I zT8}^m>SOHpXAr$FD+2bFngk#PCFsBm%Kyj_1-?c;&*noST&O{&sH5ddR$%cTPXcB-Fl%PxG{zz>mGOyQ~ z2V#(e28>_@&J9`*1t(=gpaMNub{K~t>qedSK>`ZUf(dNEO|>3@4Afu{d@LIR_Dy?Y zNECmff@{gFJ(gl zLu5aoQ20t(QA32eZ9N$U~F1ctn|CK?34XirW8`(;f6kb)9) zU;q`9XVq@XlV2WDWtr8N)4AO{T?!3vzWwH^w7xoikj zpnu!Y?-nBK9Zh_YfC98&0vm8=tw$gOH5dfHLN+wZ{Sn#kY7~GJl%NAMFyGUb2V#(e z28>_@&iitI8Zd$tIG<@f6#QD*5U4;87GQm@ z!-kI%P=FRpU<2+K+K)g6YA^_Xoooo$nB0&af zFbICr{?$ofpQcFwQc!{p%)mTdTONoHko%JpHDClQaBS^|g5SKiPJjyZU;)+{I_!f4 z6vx=_PfIj`4Y+4&KLQ!3!65i8vLRrfrAYu%P=Zcj9L+?gqcso2AO{T?!3vzSwH^w7 zt855Vpa%;utaEhQ2MH)Z3ns7u_gt+~3A7&yez$B0RG*3YLuHP>!l1Na29xTB6fzJ3K0R?Em1UBHtT8}^$%l(nJ)_@PO5JW1%G(2p8yr; z!2+zCbl5+}et#080<>TP8*p#degra5gF)~|WJAEdMUw!e3gf6G>c9-l6I$~?406zb z5v;(uRqLVPTe2Zg0i#C?uzsl1K1e_TS}=hPxVLFN0vV{mAoy|Fkb&$>qX49!1Ra=x zdAqhe5Q7{vU<500?vVQCs6Y=EU==#-g9H?y z6&UiwiD(1vz1ojJ25K+}ep)sJ?E5qcKnhCGf%yQrKj!^f^FR!8(0~!Fz$vvJ3Vud5 z1S-&j1y~OphWGp9A8S8Epa3nHzy{n0^<@#rKn(`L&&q~?{g5Vs!Z=EaO3;BBn3dK% z5Q7{vU<5009@cs&_&M1SFe=o81z3;hv=0(cfEG+(1MZ_*k3a@$Fc_jgDk}nZtw{h< zP=XH3z8Zd(OF+*$4N;Xc~DClOsKFrkld>UTKdVUqQc!~K0J%Rik@=j~JP?B%G++cPa5}Ar zf!He2-q(kC&p2rI!ZwaIxqvX z*9UnZ203WJ2v*>{r1ennXZ9atoIn-m!2+z8b=n6BC_oD)umSf+T8}^mY6A^|KPxK& z_Mk}sQc!{p%)op_TONo(4jM4NV(9crohX_=l2Me%X(_tSZpa3nH!1kKl zA9;s6YCi%QsKFrk^RgjezphCDQc!{p%)op@Tiy=i@WhxX2Mrj(3Y<5!9}510YzS1K z2Me$!9ri&YFr;4)wO|4paNp8?1Ts*ALGTx4L%@DplK`ZkJV5SGM>GTT9j$pF203WJ z2v*?CS`P((Nj3y3&>v&JKMRrdu1@f*#fy_WP7zBSs zRs`&mngk#PCFsBm%#XF@ff(eV`B?6cylf;|f%A!e6$<{UYzS1K2Me%1)nOkbpa3nH zK9&0;kKTyfRr?XhKn(`LUy}_1`!h`fkb)9)U+6o1K zT{Z+N(1Qh7n-2Q|Luv_80a`GD4Y*%wKLQ!3!65h>vLRr9rAYwN1LXdcL>-uc`L)(O z5Q7{vU<500%%42|9iiZF%7#F7jQ#%fL<_LKt;lK`Zk1Ra=n7>B-jj@CR7 zgB&zq1S@dP)p{uS`?4WWfgUWta`$0FrhSnh0R?Em1UBHFr>zKNpaz5BAIOG)eZD5a z0djv*q7rmq2Id7?^FR!8(0~!F!11&m3jX2#(i6wn?@vY4g9TU@>a-6MP=FRpU<2+& zT8}^mYK3t$i2jkR2-x4%BmgNWK?i1F`r7h9406zb5g03SF4lf1_{Xv$P=OvS!1|sJ z`yc@YXu$+F;2M``KLQ!3!65i2vLRpxngk#PCFsBm%uBW9f%sCnKl13Dr~xBbfpeJ- zhk}198v+&R!2+zyb=U_9C@z=#BM)kcCa?iF)P4jqP=i76&tyZuzCx1#q@V=d4&zXp ziOegt=7AXGpaCOTf%AQ>hk}1D8v+&R!6GnZ$cl8@2MH)Z3ns7u_bRPNAOkfR1ph)d z1njFNk^2)Iv?B#2=)erjALxTT5Q7{vU<500Vy%aQfBDV*{+u}0euzL17GPa-nBGq{ zNI(HvFo6xY*J?cinZh`#i3Y*Hk`)2_I!ywQf)aFK24f!`UO!7Ca?kbg!Utlff@{ge@`|9>{~Sn zKnlto#$mc6nt}O4t$82@IcUHLR^Z&G^-%Ed%Z5M&dVwL|EkstP(>_Q*0a`GD4Y;>! zJpvi1!65h#WJ3qY{ju-RC;%xaK?i1F-l;7Q#2^O^7{Lmh{7~QTPbm5iWksL@Jy?Ks zmk#?N0R?Em1UBH_t@TJ@9A!i`7zF>3tO(fmXcB-Fl%NAMFbi#YAO<-w8Z?3xIQMEl z6#U1sAy9!HEWo-?hkcNM0<>T<&<5Q5wI6{D)L;<&C$b@6mzo411tsXf49o`%t$7b9 zVvvIdj9>-MgW3uO|EX*URGc9-lN3`aF804S$DFNP=FRpU<2-B zT8}^mYA^`?3%Nfh587crF42wvq@V;Hn1T6(wmcAn95i4A>oNBG<22e21^?y#`V*i6 zJy?MCqz?Na0R?Em1UBG4bzC=&BGpj_YA^`?E7=gRpVlM*DJVe)W?;73@<0rX95rAB zD{!9Cekk~_Wka9>Jy?MCtPcAi0R?CcG=UAc&uKpb8K}V^_-|xG!0t2&KnhCGfw`0W zBYpFEg$H7gg9eOX17>Dmtq7rmq2Ik9J^FR!8(0~!F!1K>`ZU zf(dNEeMRdL$UuF7+@C@8Kgf!J{i-GbNI?lYFaz^7ZFwLDIcUImjQ#$sM9!%FQ1Cy> zia-T=umJ0I9ri&23ebWHYzpJZeM9>Z$UqGS!T%&10`{Al1Rw<^=)erjNn0K;Vw8gh zj9>-MTiOo=|FdieRGponSJ@D#Ko6GppnK|6Nuj5>%iE3$RY=j1Lk} zfEG+(1MbIKk3e>S+@G3g5d0r|auV2|XcB-Fl%NAMFhA9n2V#(e<{10^8HrZltlAF+ z|EFvSRG(MIHcuKfsPpaz5B|B?*>`wLA1kb)9)UW1rykS`?dBXkbxQug8xT01Z?xCj*|eS zpfnBrt|OX(`EC8m12M=!14gg{=M=4ng8x@G1S-&<@>Bc$k?$5F>pME_g9H?y1rykS zYiT_K8K}V^`2S=>JB)+uQ#A@e3QEv{8JMSO%L6gUK?6px0_XI-ZpaS_MgPC72vnd4 z3$Sb*_CW#)(1HnUz&%6j(E)OQGNKv`g2R8B0sBl%0+50dbYKSNS=#bI4Dw^__opEm z!3rEl`=P*;4S@>uU;)$;C)L;;NM>Yg( zPm=(op4=Z9Dv3HU1M@+2f$Ac;KN9ss3$VVc(>_Q*0a`GD z4Yb^(?T3QX_T&Vp zKo1sR1v>151QehJ6WD-zsnq4jLHAkFfqj`K0Z2g!IxqwCa&37aKE{53 za-s%|Uh)Kn7|s2+oiV0sH%!1Rw<^ z=zuXJGt!y|VvvIdj9>-MRay@PXUc{^1$wXm%eY#neUN|xv|s`oaDSln2xOoJgWxRL z5U^uSg4j@{L?!6J49shE*aI=hK?6px0_R$-hXO}7bgkSUQAN~)1z6YVv=0(cfEG+( z18$=A2xOq%VH{pRNOZQW2-w$a5`YwxpaU~7Z_t(pVvvIdi~>X6x)M1zYCja5BP#+G z=)nT4REK?#fC98&0^0#{f83k2AAt;gF;Na0 zFoG30C$t|5T-gw)Ko1sR-KxVrNEF6VLDYf?Y{31Y_9Kvi8VrK-WJAEdO_Knmpae#T zW?*Jo^FR!8(0~!Fz`0%Pq2PSk5U4;876Vy#=(GgQ4-v>g z14gg{r_#5E0$(-+D$s)kSP$#4uP}}hq5`yF0vm82(S8InP=i5mv1|y~k7^Qt6c{Dy zzzobmW|g92F*s6Y=EU_GtFK1e_TS}=hP zxUJTs9me6U8Bq-e!KJbyU_YZt08&tb4$Q!OR$Cs3K`t=l9SzY4R^U9R{ZMe3YzS1K z2Me$|9ri&23eX-P_h%y7fcw1mBand_41&vLL%@DPlK`Zk1Ra=8ndsGA<1tsXf49wTH<$)OFpaCOTUzhtMZ*|_#ekh1!MW6ybSb+7W4*MVh1!%zp zHsDTjf8=G+t^+bqgF$fBK64V-Z)p;M6qKL?Gce!QmIq>iA&<_98Zd$tIPYjb6kIJE z0u|`N0<2kweUO0S0J%Rc(F8W&zN`HRWS|Cv;0LlHV85qH08&tb?il<1nTgEzwdR2s zJru;UAy9!HEDGbu`aq|BkbnZTU;-O(Kh$~zGEjp-aE)vT*dJ+P1Skb1 z=)erjlUnmY406zb5v;)ZSnHwSTG^0+D$s)kSfA*$4-!y-7EE9R?x$LhKnChh<^ISI z86>(+Rs`%-lK`Zk1Ra=x`I)vn5Q7{vVEjz(kGypyaz597C`e>QpaMNufc1qA`yc@Y zXu$-w9me4u?xy_+WS|Cv;Ck5*u)owK04XRz2WDV?r7cfj$P;6t95i4AD{#Knekiy> zHUuirg9TXTPahBaAUQzpPeIgz32eaqw)P{Cff@{g8)ZYlK1GuNq@X;;et$Zm8JOSE zng?Q#g9eOX1&*clP>{-oKm~e*akLOwr|Ps15>S8^Oke}Ys&*M$Uy@}uma}{t%ru_W?2!aKo1sRovFhs%f7 zK>`ZUf@z0wc=Sf(y4sIG25K+}Zj}uI`#enokb)9)U|k3a@$FbHnjpL`P77ikiJ^ceg7DTz8T z1M|CD^FR!8(0~!F!11*n3NqOcs1(LgPqYB*Vx9Iu0t(QA32eaqp4KCfff@{g+xH)2 zoJ95|8U-K)CFsBm%s^Wnh(Qh-FoG30#--X11$W4bKm~fR0P8Xx_CW#)(1HnUz`b1S z(dBY~xUm^EL-q8?^U-d)mrmF406zb z5v;)Zf!0I8-LfH2fgUWtie*^tkAKjP1QehJ6WD-zjlL`b8K}V^xMzRzNnl^ANpOt) z{-i`D=)erj>$K*9804Sr)Fc2YC_x8iV5ZvgKn!xwfDx<)a&FRoD7a5n1S-&j1z0!hun!VYfEG+( z1MV$`_M=-A8K}V^xL-B|>=T*V_g4i9RHCa?iF(|!apP=i76fNTiZw`&rB6qKM77*d;w%saH^ff(eV z0V7y}bEnor!Gp3PP=OvS2gv=ga-H@;0t(QA32eZ(0VAS$?1Kap zpam1y9yGM(KBS0125K+}9+eFNyV4{8DJVe)W?(+7E$?BuKk~$wCys; z*$}8e4;ElOs>41=b{L0#LDYf?Y{0FxAAt$cB!w-yi!a zjRKH@5_Dh&=F{5pKn!xwfDx>~X^-p1Q7CF;MW6ybSb+764*MVh1!%zpHsC(1^#~Xl zs=*+5QdR`)=QIgG3QEv{8JL~6JP?B%GzJ>M3Y_P)9}1q54S@>uU;)+(I_!f46rcsu z3vz$t(HoKbq9zf@Kn(`L)3PC8_nHJC1tsXf49u70{>X#8m$V;)95i4AD{x-cRw!s? zL!bgZSb+5-9rkw^hgw2ZfEG+(1MZ;x2xOoJgWwt25U^j-Bmk+vkfD;O12ZsR)tU!l zkb?${U_Q*0a`GD4Y;psJpvi1!60}}{{Ekn$J!6k z8;5BBHzJUN5_Dh&=9}8`Kn!xwfDx<; z-H1>IYA^_%-+$0aV85eD08&tb4$Q!uwdH{r{tNl>$f@}y>pa%=E-qT?p zB%lE8dxj28L>qA5*RLXwff@{g7iB}hUNi|n3QEv{d6D}gee(mYc_0QkXut?o;C!g{ zP|(YUKm~fR0P7>UKQis_Iv@cBXu$+F;GWc01Ts*ALGY4n2-qKM5(o_WE+r~K2WDV? zqBRf1AO{T?!3vyDwH^vymJJ;s_opK2!2+yRr+tus0<>TP8*o3f)aFK2B!Hl$ItOVY@i%8U<500zODUG@TzPGRGS8^Oke}9t@Q|Gpaz5Bb=eTG&)5?~qCg}_K?yoA z1M^HB_CO4B(0~!Fz&T6nq2LXk-I~vEQGX zXb`-)zvCpZ&(S0RDJVe)W?-JHEf2&X2aUow8i`imxY`c|lWYi7pa%=E&eLHZB%lB- zn1Hb%_k8U~AOkfR1aHZPfPH}`0Z2g!Ixqv%)0StT804SlM&Tm z5WFud0``@f1Rw<^=)erj?`z8gF~}9hQA0F>6*!UhL%|{&0u|`N0<5ca*arzHKnsis zZNR-+`w_@M4Fpmh%7#F-!#G4e(E_X+b=n6BC_oD)umLyKdIU01gF#??EGrTT?3)w;NI?lYFaz^u zZFwLDIcUHL)&u1JIJam&6nr8p0u|`N0<04{?1Kappam1yfP3qqzTcndSo*$ru|T`%7#D%dawZNb{+OX0t#TXXaXB> z@6dh(GEjp-@R@7~*mr6YfE1LV1G9n5Tx%YPK@J))f)zM-X+0EtE*kGcfPfng?Q#g9eOX19D|pI_?dd5<3#uhP%k_46_P9QMy|$S*hv>?bq{KnhCGfmvZ3nT^&w z5Q7{vU<500p456M_{RQ&PJjyZU;)-sI&AnT0R?Em1UBG4t^EjOpaz5Bo3bHbx0(bX zHBbpUFaz@$t$82@IcUHLR^U9V^-%C*vLR4CYiQIHEx>wCzw$u>3ebWHY{2cb9)S$h zVCdxj{sLK%L<0MHMF3Jzf)32Ud_h|th(Qh-FoJc5ad@lqqV_|*$}8e4;ElpZ|JlS5>S8^Oke}d!!2+yzbjAk>C_oD)umN}0 zdIU01&vJj{hYS+^3Rw}b-_;}lDJVe)W?;UjEf2&X2Mri^7>Bp6M9%x#4+XzcRs<^0 zg9TWN4*MVh1!%zpHi04Ua6iy~1Ts*ALGY_&L%{w}lK`Zk1Ra=x`H{A~1LXe1L^)`{ z2v*>n)P5-V)v_T_fgUWt`dEj3kQ`&bKLt?>Ca?kb6YWPJ12q@~zeY9$>`yfbKnhBQ zanupbz+AQFff(eV0V7y}^O@E|!LOAKfeQ4%SdjI(PWvDM1!%zpHsF4t^$29327}<& z$%cS!Y#Ie11tsXf49qXJ<$)OFpaCOTf%BEt!>{E2{CZiDM1l(RU;)YzS1K2Me$)9ri&23ebW{V9294BKK77M<4?=7zDpbHU#X`GzmZoO3;BBn5Roi z?vHoSju_;i0V7y}W9wT(!EfH{CqM;yumI}}9rlm0-=Bo204!Z<34Ixqv%(V7Qhkb?${U-M`G)qx^LPAqSrMo}4;Elu zpu;{$Kml4XfepBx)+0~ukGwS_s=*-m9kL=|U#Lj{Qc!{p%)q=zTONo(zQZ`Yqahl> z3Y_n1KNS2<*$}8e4;EngI_!f46rdFt^2CW~1MbDzk3a@$FbIB^YzWxj(2`ym1aXu$+F;9jOLi$Dfy zFbIB+YzWwwYZ54oqm-xw9hiX`YRv;N$Uy@}uma}_t%ri&D;okvg?g|6>q?#WK>`ZU zf(dNE{l3;CkbxQuhUoXnihvzy5`YwxpaU~7uhNzWVvvIdj9|UW(3*3#A{6|7SrMo} z4;EnkK!<&hfC98&0vm8+xj*u|2f#<0w!arJw{In1OjhALM};pa%=E?$lu)B%lB-n80?Y+#h*|n`=J;8K}V^_(|Ciu4;`v-mf(e#2^O^7{LmhQtP4MXJkX50{t=e`?C;P59qWH5>S8^ zOke}n#T+s8i`im zJg#4bfwp;KpaCOTf%CMsLcyPq4S@>uU;$RE!@j_fT0&HS7EE9R?lantKn7|s z2>zsO2-weR5`gpoxj!XQ2WDVCr!^16AO{T?!3vyC>!ILJ$%a66jQ#%fL<_K<*J&Rl zpa3nHzy{nGv>t&B)L;<&=^xww|NoP!Bm2eU=qLawC_x8iVD{SbKn!xwfDx>~a9+}W zDEKq7B2a-IEWmnMhkcNM0<>TP8*qQ5^~gXOsKFrkv+{=s*n=hkNI?lYFaz@yZFwLD z`74Hg*AR_h1aq2MpbhCl^+umEe?hYgwbMS=trpam1y zfcuuVB9MU^41&KX8v^#*ngj>P{Yi;R(1974?`X{fF~~s!Mz8{B)_N%TOZ!Vt9Am#f z6;TfsV7;r;K1e_TS}=hPxbJB_0vV_k#?c@;k`)2_eN6(8f)aFK2IitI55yn`4H$v3 zBIg6`hl0N>D*_eh!2+xgb=U_9C_oD)umRWjNc$1UKn(`LUy%&~`=llTNI?lYFaz^r zZFwO6SniKJIwxwt2v*>HqQjx!ugZo%1$wXm>r)-}K>~_T<^ITnTA~STz+JT;feh4O z5d1aS5U@YfBmgNWLAS#=)Mg^{bFFzG203WJ2v*>Hq4iMk*JVSX0zFs+h74JoPWvDM z1!%zpHsF4#^$29327};l$cBLZl_YY1f`fLXpadP5f%&yQ$OAFRK?6px0>}KhBand_41&KW8v^#(ngk#PZ00O=0nFjNwCU8Zd(O82kNkV(o{5f4RT@1gJm{7GPbY!#+qr0a`GD4Y=1H*Nvk{b(Db`41#|p z8v^!qngk#PCFsBm%tTurh=Gx#28>_@&h^?41^-$$1S-&j1z0!eun!VYfYv}0*noSZ z_9Kvi8VrJeBO3yCs!0G+P=XH3siD*6O$rahAO{T?!3vz4wH^xot!xNXpa%=EZjt*V z)BY`5`*$?lci8@dw(k4A=iY1W-cIl5?9+Q&eVzKAvrq56?%sRvB|#7bK@espK@h~8 zndT2c5ClOG1VIo4K@hwMGuRo=JHCHCpX<)JlXs2lca3ZQvm~GZEttRt+*8_$Kn7|s z2!5|@2-vr466`Pz&r+fibYKSN9a{51406zb5v;(uQ|qDN_sNC?hNvRy!2+yIr+tus z0<>TP8*uN^dIU01A0YQ<5dD5x5wP#pBmgNWK?i1F-lHuK#2^O^7*DX@pOwhTwI2%p zfUF2qpa%=E?$u!*B%lB-n82nmj@4f)fDxk{ zG++cPa30WpDELFNAy9!HEWmnDhkcNM!ayyUzy{ohv>$;C)L;<&Vc8I{OHBfhf)aG4 zp+hr~`LHG)h(Qh-FoG30k7zv<{1Mp@s6Y>vN96vz&S2-uIw{gEixbwCPA(1974kL$1pVvvIdj9>-M6Iu@i#vhXvi3Ans!2+yWXMB)= z0<>TP8*rc0dIYiq(j)*WC_x8iU_Pxa55yn`%?bAVGZL-9X|x{- z{)B7@RG(MIGxtNjRMpaz5BPs)aX{hTHNNI?lYFaxvImf@io znrhgB&zq1S@b})_N%TGqNF2f&OK=Kk{rLvR=_?A0(gvEttRt++OPu z$UqGS!Jm~4?Jy3qU)3l8DJVe)W?;UiEf2&X2Mrj(3Y^#Xx*>l^DEf1!gR2-t6G5`YwxpaU~7-_n)`VvwI;zdsGp2v*>X z+7AVPK{f;`(1Qh7Z|krR5>S9vVH{0F8*tyzegra5gF)~YWkbMzSCaswpadP5fniQs z^FR!8(0~!Fz-uc`Jv8uAO<;TzzA00e5CbI@KDu0<4d9+6M_JKno_Y0e8`Q z1Ts*AVTbX(zbY$|NML`W2tW!-(1974pK8kkF~~s!Mz9JD`Kt4o_Cvv6+mlnE0zFuO zb*#faNI(HvFo6xYpG#ftPjt|Z4Afu{{Pq3OF|fbTBmgNWK?i1FeyJ@F#3$JAPfpZ; z5v;&jwI2%phHMB_pa%=EzS3bIB%n|jM=j9=HsF4({Rm{B27};l%7%dbQ%wSpf)aGV zn31_@%>yyWK?6px0_Pj8hl0N)8v+&R!2&GfTb=en0t(QA32eaqPU{iKKn(`L-qXl%)mTNhdmI395i4AD{xNNdMNlivZ2#|ZofaGil_$*u+GqFA0(gv zEttRtTubW_$UwcrIDCGP=sk2_s5bINhGL14;Elut}{MJKml4X zfepC6)+3PZFb-d>i3Y)$vLaw#p-BKzP=XH3z`Rmh9*98>8i64n8;Mrnd|&&a;4Ik? zs6Y=EUQ_U7EgJ$A=)nT4YjoIG7)J?F0a`GD4Y=28KLQ!3!5}zCHU#YJGzmZo zj1qNV24MB%lB- zn7{_yMC;KGU94bccz;QUDYq2L19 z5U4;87GR}1?1KappglnD&qTBV_s80gKn7|s2riTj0sA&h0+50dbYMQget*oLXw3sL z$Uy@}umb0l)TP8*uN?k3}E@H5ddJ$%cS^rzQa~ zQdEKt%)rdF=7AXGpaCOTfpeGEL&3$eAy65p2Me(7)@dIkpa3nHzy{oVv>t&B)L^(r z?$0H%B8dcct_VO1O3;BBnD=VS12M=!14gjkEB8mf>fEROP~gdmKm~fR0PB7o_CW#) z(1HnUz%Atd$j72x2V|fIgW%GA<`~!yXcB-Fl%NAMFdx*G2V#LCug-}YFoG304{1LX zTqYX=73jeNtWt-4kbvRhs(rqe!1Kml4XfepBiYdr!PsKFq(LN)~KCp0kv zl!6j;U8cJy?MClur8~0R?Em1UBG4t@Q|GpnlrW zXM;rFmlXlK(IfyVC_x8iU_PTQ55yn`4H%!1`y*dniJWJ(9|{6l5vV{97GOQ6!#+qr z0a`GDZHICAhTCdC0vV{mAozi72-weS5`YwxpaU~7U(l8(FyxIfQ4Sg~f)zL~YCjZQ zB^v@2=)nT4PKSMv93c0nAZoz`HsHRb{Rm{B27};g*$}W_)+7KaC{M88pN?n-<||tB zKn!xwfDx>~>9rmTLfH_gK(8>479#6ao%TTj3ebWHY`}d@>k-I64FTP8*o3=egra5gF$fP{^ny~f22tO(i80WrzGmY49t(U z=7AXGpaCOTfwO2m6vVP2P$`U~o@fEqCpzte1QehJ6WDmIq>xe41=Kmpnv#^H?<(FWX2`w_@M4F-dw_5W+406zb5v;)Z zPV1rIhq571fgUWtGJk#_miyx$v?BopXu$+F;GQP^y%m8B)L;<&XrDO-_UW1gC)n># zN>qXl%)mTDYaWO}4jM3m6*!jGLqWR#L8lbPQAN~)1z2b5v=0(cfEG+(1MXQ`k3a@$ zU<{%k%Zh+~wk82cK?yoA1Jl-)2V#(e28>`ekaLdqL&0sbB2a-IEWkQfhkcNM0<>TP z8*tAvv>%{)g|L2tIr~*A$fOW;m^pOt|P=FRpU<2-z zT8}^mj2aDsyJSVc{=OywNI?lYFatBtmIq>xg9eNST7mNe?T3Q9-Mjam-{_sNDp1^NTz{wzdRtkXV7Kml4XfepAfX*~iNsKFq(Up91t z{r=cDYZQPKl%NAMFmKV82V#(e28>_@PI6K=jzUo(D*_eh!2+yXb=U_9C_oD)umSgn zT91H{p&AT=2V_OS{*fjDNI?lYFatBymIq>xgT_E3Sb_6n?T3N~Wka9>Jy?Ksn-2RR z0R?Embeo~m8kAOkfR1P{xGfPI%H0Z0Xg43$J3n1Ok> z);th{95i4AD{$`7dMJ2AHUz2z0a5|y9> zGccdhng?Q#g9eOX1~c}e@B;91!as6Y=EV7;uv zK1e|EvfLkeQA;#|4Y;r9OawAegF*0|YzWxBCILu63A$eHkJM%&^Hr^RAO<;TzzA00 zyr%U~(8`8D1$waTFb+f3>pJa&1QehJ6WD+|XgvZMsKFq3UN!{mH}=GkC=dx!P=XH3 zzTP8*ty&dIYi)?DwZ8 z8U!!y-#7;LJDLO_1tsXf49s`6<$)OFpivk{Bhd<+N&BIolMR6i^k4zjdphic1QehJ z6EHU9zOVfVWS|Cv;3e4*us_fw04XRz2WDW-+VTt(gB&zq1S@bp)P5*+Tz&ulH9*98>8Zd$t zIA>`+6pXSVQ0*`dQBSl0>ujC&K>`ZUf(dNEwY46B4Afu{7;nppL<0L9MF3Jzf)32U zJXc#Dh(Qh-FoN{}xj)W%+7AWq$cjJ(dawY?(P1AXpa3nHzy{p&5B2^2L?_x05vai+ zcvm(A>Az)vkNdQt%f)30EGCi$%AO<;TzzA00T&nd@@V;yaRGe7QgJEF~&I2WDVip*0W0AO{T?!3vx! zwH^v)+0YK-po*vm3$VVg(>_Q*0a`GD4Y+~UBanewV8|abh(44R0s9A<1Rw<^=)erj ztF+~T804S<;{kGiRwCzW?T3PoWJRC?Jy?Jh>aY(IP=FRpU^~Hnf81-dAAtuU;)PD&r(o=4$Q#3RfjzggB&zq1S@cUsP%A% z@x5bNkwk(D^k4zjk95Wd2`E4dCa?iF)p`UnfgxY5i3Y*vdvXlyA8QhT6qKL?Gca${ zmIq>xgXRFaKO@l!oS$ev6nwGIoB|c-!2+yPI_!f46rcsu3HJN55xKW(KLQ!3!65ij zHU#WDGzmZoO3;BBn0KDEj3ZBV6oVWzU<500GW}{OSY<2|x-;19e~qX0A04#2^O^7{Lmhd$k@4zLpJv3iS8N{gG!2 zk#(OYK1e_TS}=hPxc6&40vV{mAo!_l=zh6BBD>Hi04XRz2WDVCpe+x?AO{T?!3vxQ z<^IU$!(HFocANqg=)nT4hjiEn2`E4dCa?jw)OsW^gI0sC=H0+50dbYNB(N9Ge+^FR!8(0~!Fz^S!<&5mFDGr#8OcKv-!e_z$#PxSZ9 zCr{?CIQ;Ja_us0)1N!^C{=TQb-{|i}Pn{I6*WbJJ_euR7_TTTxUvLcUr!@&c3QC1> z)Dg|VY_#Tq804Sa-6MP=FRpU<2-RT8}^mYA^_X zoooo$MypW(Qc!{p%)oqJTONo(4jM3m6*wWmK(P=FRp zU;}Qa^$290++X=>O*9C8Mpgvumoy1L3QEv{8JI6?%L6gUL9@d+d~76If%A&?L&49= zhCl^+umG#qVIL%*04{YBnE zJ7SQ728>_@&Y)in1;25xp8^%=!2+x|bl5+^et#080<>TP8*ty$egra5gF*0{WJADy zOOpVk3gf6G>c9-lQEMKEK@J))f)zM#YdsYFX4w#^fYGA`Snuex4-!y-7EE9R?z>u# zKn7|s2!4xf$Uyd_Q2+{3#et-NE?S}{ypam1yfcu4hECLy*!65iu zvLRr9sY#$Pj#8o$bYKSNsx=S9AO{T?!3vzOv>pon0of2RD%67oSYPY34-!y-7EE9R z?oYKIfeh4OFhu{LtO(efCILu62|6$X^BZk>AO<;TzzEiF461QehJ6WD-zq1Gdif!aWW;GdKg0o&Ci04XRz2WDViq%9A`AO{T?FEVs`C2}s- zBozEp@{b5qpa%=EF418hB%lB-n80?4+#mUd>uEm%8K}V^_@`w$QWnBUi$2V#(e28>_@PN4Nr@XyJHKn3~}?DuCOvVNe`K1e_T zS}=hPxL0XC0vV{mAo$&~A%$^dU#(F9Qc!{p%)kt_<$)OFpaCOTfpd-4jZpN@%Zfk+ zdawZNS{?R50t(QA32eZr!(RDc#tU<2;0+K)g6 zYA^`?71+Z zbG!CK!M`pm0u|`N0<1f9*arzHKno_Y0ryU=M+VA34Fx-zE1)zR?hkU1P1z8rKo1sR-J`=kNI(JFd*uGe8z-U-xViQtkbxQu zf`3ak1nhe?2|x-;(1Ce}ap;@(Y0U#M$Uy@}umb0Pt%rhtTQ&qL(1Qh7#XfAvv@a4Q zpa3nHzy{n0v=xC2)L;<&JF+2QKd4D?fZU&ys01CDf%%ZuJP?B%G++cPa7wL*f`51a z=&2Lz_opK2!2+y@b=n6BC_oD)umSfGtw$gOwZb?WME{xg9aEQT7mPb_Cvw1?tjoJP=OvSz zKrb-l*+OJZI_-l56rcqY*ns<<)+3OC8VrK}L^gDQ+#maWjRKH@5_Dh&<_FsHKn!xw zfDx>~nGf~-{)D3cR8|Bk(1Qh7AL_6V5>S8^Oke}Y2G&lNGqK?6px0_O{Dg@WHB8v+&R!2+x=b=dz>?vK_@&be9-1^>Nl2vnd43$V`n zrTzZMw11w~5>S8^Oke}9qpb*Jpaz5Be~=9U`+QA;9me5VN>qXl%)q=rYaWO}4jM3m z6*w1aJrw+pvLS&Xs)%~90L#^BA0(gvEttRt+>5jxfeh3K$o&~a|C6i;*cWROfE1LV z12Zr$(Uu2dkb?${C)n@LO5}Lj4+a0TtO!(~2Me$+)nOkbpa3nHz@{*c+{?5dfeh4O z5d1H)Az)vwNdQt%f)32U^tI&yBStxBzzA00T%r9?@W0B2Km~fR0P9K}_CW#)1GQiR z8*sm`{Rm{B27};#lMMko&?EpUC_xv<{gK*CWd1-C55yn`4H&@+oU61R3jTN55U4;8 zmaF9c$dGllPWvDM1!%zpHsFR@k3a@$FbMt+*$}X=k^3W2u-=C3a1x~E}Q1E}thCl^+umI~O9ri&23ebW{VH|Bl?#u`05U_92BmgNWK?i1FCfYJQ6oVWzU<500ZqTP8*qQ5{Rm{B27}=LlMMko)g%BZC{sh9bwo2Tf2@x@5Q7{vU<500Zqs@w`2S@? zpaT7Ea)0F6LS+3!r+tus0<>TP8*oo)Jpvi1!65j(vY{QuLH6w$1t0|_=)erjJGAA2 z804S!5a2-u}20Z2_@PNV%$@F!$LpaMNufc1P) zCa?kbS?xz412q@~e^NFC?B_HIKnhCG0b@pHt2GbAAO{T?!3vz`wH^xolxzr8pa%=E zj2Cp;2MH)Z3ns7u_eHHoAOkfR1bK1$wXm>unwOL835@ z3ZfQFU<2+u+K)g6YA^`?qHGA*?`jf&6qLZ|&S8^Oke}<2U?Fn25K+}{<3Tc*t4NgFe_3}f)32U{7{EI5Q7{vU<500 zKGJ&lk=&oZA}f+eP=OvS!1`Ece2{TP8*snYegra5gF)~&WkbOJsU`tPfl;Ck%)s2V=7AXGpaCOTf%A>lL&4vY z4S@>u23mmitxo$O0R?Em1UBG)r}YSApaz5BZ_9?hGgP+u%O_C)Qc!{p%)mTNTONo( z4jM3m6*#B=@_v8h4+&4-U-WlmMW6ybSb%kg4*MVh1!%zpHsD%Xk9HV`uVzFw7zBS; zRs`%bH3>ipO3;BBm}hCr12M=2hJ2$T8o>&jv$Y=z{+?_IRG`ZU9w7H; zBHDm^j`kyvff@_~sUHLTTulOyf)aFKKEZx}%=5J7ff(eV0V7y}<7hn;n6e>IfgUWt zI{#$YIPz6T2`E4dCa?kb0{vJ7GEjp-aGGog*cWON03$^u=)eq2S8E=KK@J))f)zLy zX+0F2E*k=sfqJk2>tdbuK>`ZUf(dNEy+rE~$UqH-ON@Q!3|Wyx0^3srAO$7pzzobw zwdH{r?<@0KnhCGff<-rYRdz$z>rtxL=70h3Y_n2KNOrL8v+&R!2+y6hkcNM;s7}y zEztxv;Qm1S5y(Id2Eo~~Az)vnNdQt%g6;(S{h5i(tF`8V804SlKo1sR-J-)jNI(HvFoA7{arlOtXg>lOsKFpO zUp55nTQvzl3QEv{8JIuRmM1XejWJOU8Zd$tI6u;UD7Zj21S-&j1z4#L`ye?$?oUC~ zf(dNE{jv5VkbxQuf(vCsz`jkB0HmNi!G3=_q8XS!(V7Qhkb?${UJ47Km~fR0PAiY_CW#)(1HnUz`aN75y_@j`5`SL&24@B2a-IEWmn7hkcNM0<>TP8*rc2di1oR%7|((2)-}>h=AQ_5`Ywx zpaU~7pV5{FVvs*0_eZ|b5RG63&a>JN1%Ye`RGyttl@);s^k4zjn>y@+1QehJ6WDywk|BOfH7048Za7Y15vpaz5B7TFN6 zS4{$tf)aFK2Ig1V^1hP$BX5j}a?pSgtibtN`=KC_4S@>uU;)-ob=U{V4&%@-h*~g# z4Y-^3Band_41!x_L%{wtZ8 zXCbo8UpblfK>`ZUf(dNEJx%Ko$UqGS!H;A^C)n?geY!>gNI?lYFaz@pZFwLDIcUHL zR^V7Cb>k=$rLrPWfgUWtI#Y*zkbnZTU;-O(&(eAXj11La5d2tH1njdl2|x-;(1974 zwzfPFgB&yl8o>&jbF?1{Zj%jx3iMzB*10`ZUf(dNEy;SQF$UqGS!JYEo|2aO|_+_caMX z3QEv{8JK~#JP?E2Kn)nd3Y;HkKNQ?88v+&R!2+zSbl3+8C_sCa+#h-4M6?0-YJC)e z4Afu{+#?$TcBn}JQc!{p%%R*L>6_PR%>yyWK?6px0_R$-hk{%-1S-&j1z6X~{gG*Z z*8vGAKno_Y0XNcC1Ts*AL2$2Z2-w$a5(o@=mJ*eq12Zsh(3%Hgkb?${U_Q*0a`GD4Y)UHJpvi1Pq5#gL3F>Y2-r7k5`YwxpaU~7Z_$v9mZkEx>Kip zkbnZTU;-O(Gp$D;12q@~56gyteb=5C5(Oeb3QEv{8JKtLum@t0g9eOX1g8lx~M1$bb{Ts)?zE6_?q@V;Hn1Ok} zwmcAn95f2!Xe3&JQ)oXFRI(vZfgUWtdO(MLkbnZTU;@U5+y}KEfeh4O5IiOu0`^0i z1Rw<^=)erjQd^#ZVvvIdj9>-M!`cr8kIRNY1$wXm>k%FHLGp;9Q9;y#32eZ9REHyw zff@{gCuBpwt~3ci3d&0Ek4$$&GcX_1ng?Q#g9eOX1S8^Oke}1pa%=Ep4VX?B%lB-FebDC_XX`oAOkfR1kcEZfc>H-0Z2g! zIxqv%=(Og6804SpE3ns7u_Z4kLAOkfR z1kcHafZb~nfV7wUBSR%o2WDWtsx=S9AO{T?!3vz$v>pmt*$}997>B4QT7dPsPWvDM z1!%zpHsB6gk3a@$FbIt2Wkn)^{e~g{DJVe)W?;UlEf2&X2Mrj(dVt&?=Pm7rf)`{( zpaMNufHmr{4-!y-7EE9R?%Rj@et)79?S}}|U=X}08v^z_ngk#PCFsBm%y+frfmmT2 zuU;);9I_!f46u@ZF1UBHlul)#Qpaz5BCD{-~2GOgsB4B^6NdQt%f)32U{6bqEh(Qh-FdiWHXC-pJ)P5*w%2@LsaO*9DJ-jicspQA|tQc!{p%)mTXTONo(4w?hx{)|K`aL&_yD0pX| zIRz@vg9TWQ4*MVh1!%!^g8lw%MDF?8k3a@$FbLk24FUTCO#+aD5_Dh&=7lFM1oXaF~~s!Mz8|sQmu!A_hmz%0{x|Of8^OhWL>6-4-!y-7EE9R?&VsKKn7|s z2tJSvT`u=WWcwNgAO$7pzzobQwB>;qpiz`D#W~gF*1&{^%IkKhPuqDJVe)W?){WEf2&XKS1tJLo|XFI9F>w z6nrEb0u|`N0<2JneUN|xv?ti_&qTBV_Zsa-AOkfR1Ru+WfPJkd0Z2g!Ixs7YBl9|~ zc_0QkXut?o;6z#v1&eG5RGKx#ff(eV0V7y}bCcFX!KbnzP~Bu`)Dtbhx>+CjAOQtv!2~wo-lFvgWS|Da zEpmT8lNCuMuoFc9Qc!{p%)q==TONo(4jM3mb%$~Is`Eqbhk|2S5vV{97GV8IhkcNM z0<>TP8*tOTZpgviJru06Ay9!HEWoht(rF(gpa3nHzy{pAwH|>C)L;;NB^v_vJ(>gt zNk-I6 zeZSlv`TQW!Ph~~GE;I>13QEv{8JG`f%L6gUK?BAe#^I|gk@KMTL%}910u|`N0<4F0 z*arzHKno_Y2@Ls$TWUW78K}V^_(nDa?1wc8KnhCGff<;OXv;f5?oUjVg9eOX1IxAJE_D_4hsf z{YHN;dg`Qiz5d>%zfbD#u>XEfK5z`|r!@%_#!*UCf)32UY_#Tq804Sa-6MP=FRpU<2-RT8}^mYA_h0UneU9cB@GMQc!{p%)oqJTONo( z4jM3m^?5^U&I^iA@attopaMNufc2sd`yc@YXu$+F;C6C<6(1Qh7@94A-5>S8^Oke}{K@J))zGvw4O60t+NhtWO@{b5qpa%=EKG0zwB%lB-n85ad+#mUdJ8M4z8K}V^ z_-(QwV1KAd08&tb4$Q#(NL$_x^E}V5ClO`2p$xIASeVuAqav(At*cu zg3gua{+@rmpX03iyzU&=de^-iev2MVz@J?!0R^Z)2hLyy(YIaQ%S=DPRs@b<09O!v z#~t2*J*dG6T)+b2@49*p4jyX3X!wb?A`mVvNkIu3(1Qv1-*c@56rcj#_w4<#%g#hI zh`#TB$_zirHUy4f09O$Fz#ZO!J*dG6Tz+8hkBwf4V*f|(lN=mC3r53Fwhe*sfi6iw z2^!FY3HT5Ck@fwtLCLBO1*kv=&R_=7gIy~#{1n>|ID!FOK@hmZJA-GnJy8u#-~tv9 zKg9KOZ~!eB4L{X31j2{9Bn9OLdw&|D9!$W0n5!kA02S!K8O$IGT|G1WG}{n3-eY}# z2BIqn9_~)>z#i1#1TJ6!@grP42M5rC(eTrM{Q95&zjL|?A9)|$q@V;1=)na1$h8ts zfC_Zr3})a(k8=IY@H1>h;0OkA1;L};;T_n68l1odEFgZ2tLGj%fEJ8~pJ{)IKp49u z1tn-e4<_J0*0mB)fai87gBe7Rb7wNc&$11HBN)IH1dn%zcVG`{aC-cYtnZIa zybvuQPFz0+2hf7i@Uv}0Abf&LQc!{h^k7=yZGHcVu9koTRGJH0a*_MiqQZ~+U5pX^#WIDi(6hM#L20^w6!l5Vi~rzC1X4<_J0)zuPE zfC_Zr3}z6euAUiw-g@cnJ=XWF3*u zK==%oq@V;1=)na1%(W6wfC_Zr47?dd&vgCF@C$53;0OkA1;Ml2;T_n68l1odEFkut z?fN-5fEJ8~UuYWwVeXO?l%N4Un1KHr*GfR~9M44+Q3uXo2GMif;mq)hY(wA(25<$z z^W5Pb*n|3c_WszQ6VU}MATC@#2M5rC(eR6HLm+&DR zrWGYwSeSdE6wLU~(09O#abUVF1)nE^5Z~_;w zfcRyuo`ZvfcheG$hF@+g0^!SDl7bR6pa&E1Z(S<^1*kv=yfd0X^a|I{48LOipj&VR z1Gs|VmG1Bk>_H7q-~tv8#jkSx92`IkM#HbP4T13Bk`$Dn0X>+2|7zDtUTyD>O)Q8i z(1A0ULG&8e$_&5CHUy4f09O#a)*aq~{cG+0v3^Z-0vE7=xN`j*96$?3!>_gtf$()M zNkIvk72bBbCz^o&dRI$80V>deGnhg223OAvzs5EMj$kl&_S=;xsNLxu*n=9Jzy&NI zexs}B-~d`M8h)*9XoI~!;hS8Pf)X^K2NUq$>{3s^w>R#(p*yqg123r54Qw-tf#Z7xYc2^!FY3HV3XN zW)QvI^)th7unmDD7{C<-?{J5AU=M0=0v8W0AbzLo=imTZFdBZNZ3u*|OHxpR2J~P8 z{<}O^OWx&BfC_Zr3}z6$+qE*oZ?X-6BN)IH1n+T&cki+H$7*|`8l1odEFkV&KL-cU zg3<7sZ9^b@uS-%;uJE=)4N(s!;J?q+5>S8&bl?nT5WU~kGsADO4S}P?ftpiv?BbVMJrNJf(GgzuAhSgXu)Xs z5!(<5N0+3a1P$oHGjNS~)m?7L119X&VCJXIzr5@V4Jdq6YL}0{&-REdd3nKnKoX2GQqSJv00+ z+mOLC9f<~T1;NFg-hn-+!3kWz0^-lRdJYbt-C*y}X!+2|3%kI zKmjVyf%84q_h%-GCfCmlzuQ&>j$i;+5PZoU-hn-+!3kWz;^5uHUv~W*96$?3!;NhS zgkNz<3QEv`9!$W$x>f?b0#%>`XE1~4tFE6JevfSk9KistAo!X)yaRhsd*}o%U;**h zT|Wm0(1OwMdu>A?ymLtkO3;A*&fXuZO+@}TT#|qSRGbU~cVG`{Z~_;wfOvNG92`IkM#Jy74T136_WoFuuG&z72J~P8{&(Er1QehG z9XNv-MBjDw%;5b2Tan3d1OvE&U~y-5U=M0=0vE7=__H7q;Nsxj zEJX2xTt5c~(1OwMhiyY3e6UMWP=W^ZU;=*NT3&(*P=OAd!3?5@xPE5%Beo%M1OvE& z;GypD4(vTtgA=%b1;h_?{Tv)X3r52qwGDwVbV&+I(1f1*ttXm*|8VzH0t!%p4xGUZ zqDQ!TX82>aA#eo4BYt#!f9$s_QSeB2dI$EP1}AU<3y33E&%pt-U^M)3+t3PcQ}`$s zrJw{2=)na1N4r)63Q&O#oWTsD$E;CG5I)W&DJVe$dN2Y1@vfDC0#x@{-=B`?3}z4|uAdqHlx+wc!2qrx zc!E2;1A9<|lY@72AzDEEMAy&30kmK={At?|2%qGV6qKL=J(z&!?_4bb1*kv=&R_=7 zlU+SC{2AL2ID!FOLGToJc;}%#sKE(bzyji@x_%B0parAh&)SASn7SkdWoqw_9cqYr zFaiH*?o0v-P=OAd!3?6OyLx8$bG9LHe7e0q77avK5In=3-hn-+!3kWz0^-cob8rAH z7*}`?`17_Riwxm29a2z&2J~P8{_Y}d~We_>5-!4VAL3WD4n z-hn-+!3kWz0^;Xb-QJ&k(~1LV!D#r4>rZzee6CAUP=W^ZU;_U0Tq^;^J=XW9BI>{y z%pfXUKQsI#+YmT{0bD`we0O*U_Mmp~ZcaoOuz>gluAhSgXu)Xs%eEm9zR)EpC_w{y z;7!QiyIKMYP=OAd!3?4oxq4>!E4CqU1OvE&zt&S zH8_C_SU`O1>Nz-oc7?ZHKU(zHZABn_g-cRUf(Ge*ZE{rP*gB8v=1 zFn}uv-saBiz#i1#1TJ6!@zK?Da9H7Ox3)y1;qTjuK=^i-q@V;1=)na1ceqvp3Q&R0 z;Mrwoq8UW*bp6cm4{Sr=2nKKkLF*3hz#i1#1TGuw{aJ|Oce#EJ4xk02;UC(DK=^K# zq@V;1=)na1_iU~8{Ymb%K184b9XNv-M4h`eGyEgl5IBMXTtV<&cX;RE-Ry~KZ~_;w zfcSl`pMwKv!D#r$wjmI{-z6z1f!ClOOu#?6S^^4CfexI(45AOXdS>`1wjpo?gNLpl z_@Fzz1A9<|6S#l{#2<3?92`IkM#Dd~4SmSoA5+*nq@V;1=)na154%>Pr$N#jeC7=Km=)f7wAUeBxX82dOA#el(xPss_ z_lLckozu-8)ZhdzU;*)G-DNpAfEJ8~e{CBA;pbeE0oD|02S!K8O$L1 zysKx1e`6a0M-L6)3W6`V(>t&SH8_C_SU~(mSI@x#v|#+Aw;uYpwjzrR;pC8l5;UL( z6Y#&}S_vpX1v+pB^Ox-Xv0I}ryMAW)ceWyM1OvE&;4AL%4(veimVg3OpaW+x zgJ^d3%Qt7&%pt-U^M(^+Yku9>k=de^8N0kmK={CC?B2p{5-6qKL=J(z(1P}fQfo=q%>D$s#5 zm_hU~*Ut?9!!`ttU;tMTgzoST>^Io^Qxl!Q1uP(bxa;TO09r5_Y~URTAK{V|l%ToC z`u_Ap6YwADY6&Pn1v+pBGl(Kr&kVk82pqxS;N4t_f=9X2JFo{eIDrdTK>TP|&%pt- zU^G0?HUzxzF)m6$2^!FY3HY&VC7=Km=)f7wAbPB;XP)Unwjyu@1Gs|VaqjRA>_H7q z-~tv9Ki<`IaCp4uqLyehJlIwQ!o(#hC_w{yFaiGwu9biSRG@o;y+3x@nP>*l6J0+u z1hye?1OvE&;7RWA4(ver`M=*dZ2vT==x51u^Jy8u#-~tv9Kh5=XZ~!eB4G&u< z-+}PyE=fUokM;d&ho(ZRbJh^`=braQd@dr*TD zxPS%3&vNw~96$?3!^77P^6pUhY!{`V1P$oH1pM5!5>S8&bl?nT5P8pW{mk$PTM;;d z0bD`wTz7Z}_MiqQZ~+U5pXciN^E{^mQ42=HBkeB{2n&~_pac!*!36y0yH)}UP(9z? zAG@O?I)fQRFL3?L5ZQ*n5e(o8f)~2OJFo{eIIZxui5H>;#CzAz!2z^jG(5^S1i}}& zBn2gCKo2H^XMO+0u9koTRG_H7q-~tv9ztYunZ~!gvM$=<$MId~YOHxpR2J~P8{=u~pP=E?_;0$ID zMXz@K%h2uAYMfXu)WBl5GftZ{3ph{Yme&K184aJ(z(1Ha92%1*kv=&R_=7 z(bY4<&i?yf$;2-6qKL=J(z(18GCYUA-4^IBN)IH z1fO$}kr%uv{hz!41K3WBe?!#l7CH8_C_SU~(W zSNC#s04*2|&tE_24uoHKNeW8PfF4Z1zjLhw6rl1@2hLyy(KlQ_GrYhy1dd<;R}g&D z9o~UGsKM!*_Wsz!3(*4NZ@HgxZ~!eB4KK6}fpB(73QEv`9!#^nKi2oZ?P>`qKm|H* z1~Z7hkzU;_U4T`d6xs6YqKUp@+llA`77#zuoyoxgv|u#6+%^Ql$R#N#K?C~ecdhS_ z)g~hUQLdJN0#u*_XE1~4(XO5uZf!&02nKLn;cbV4$GFowum?3bfeTnb9J_iB4xk02 z;T5(a5I%NIJd0A3p#%-+!36xrxx)!4Km|H*1~Z5r@9LT1mG=JJZd!2!1Gs`9vD53B z9oT~!oWKPvAbx_Y=iqRU_5EpyM#HPtJMKXEM3c6lEf@{2whe*ssV+%D2^!FY3HYgN zB_1k31v+pBGl-t%`kCQ1wjpo?1Gs|V>F)3j?4NG$kM(P!6S#l{#LsYtb8rAH7!9wr z4S_IoNeW8PWcL2p>7Hl;{xe-I0R^Z)2hLyy(X(7VGgP)Aa0J5&Z~N^^6g=CV-hn-+ z!3kWz0^;1&b8rAH7!9wp4H-OB_#79dpac!*!36y0x>f=TP=OAd!3?73S>4{B%=CI& z5jcVYTtQH{!#l7CH8_C_SU~)ISI_UUzCQ<|7L0~B*or{-0+*zq1P$oH1pF7eRssr8 zIe0f6(HYDj+Pi*csBJ^w2nKKk!HeAC9oT~!oPc*h3y5Fr`Z+j&7L0~B+J->*5|^Z) z1P$oH1bnY_wFDHP0v$Mm8ALC2^~~@l+YmT{0bD`wGIx0QGS6vGRD%<^fCa=acdZ;8 zKnq60n{7iNymd(m%3FJX>`+70g9-SraJ2*!paLB@gBe7xboI>8*oMGyg||fm(G>)* za;JA-4{C4%7qEc%;OaRzfEJ7f?=7|>lOcSyLkddJfF4Z1e~oJ;pa2!-w4Dt+pa?1OvE&pmK+IU=M0=0vE7=_;p)-eSh+Mtq&1s!Dx7!Z3u*~cS#CL(10FH zz<+~lC7^KdZYrV+J-=QbV+)&_s4!Ki5k#@3HWb!wFDHP0v$Mm8AR`J^~})PhE{l+ zjzj~vg5aI*^bYJn4Nl+!77(|to`VBu4W50-XnL2e2!!u)NeW8PfF4Z1f46HTpa2!< zzNz-o7L11X+lD|m*!yEqI=J6T(10FH!2g&#oPYvUpaW+xgXrU~ zo~`g6aIzIyWH^EWTtV;&cV-9npav&!0SkynSI@!0;MuJ$(P;R<;h19@O9jF85g9pM@y?jO*v% z09r5_K4cpL;b&cvf)X^K2NUo=ci-}E5~rI2RG$#cJ5iGnY?WC!-31}AU<3y8ns>Nz-o7L10E+J?Sj?~f_Gx+n!DXh07p;D6P% z5>S8&bl?nT5Pi+wAGj$t|GTc1fC5yY17|RUXmRz-FxrN| z5e(o8g73M*-VW_S4Nl+!77%~m^>c6lEf@`-v<-pq2QEoL>7fSnU;@7XWA}p+P=E?_ z;0$IEJ4RR;P^n#MFY_l1P^jQ?Z6(?-~=vU0r7)fJqHKSg7LvW=Kb&kK5Z+q z$Pfk&DJVe$dN2Y1A+D8x0#u*_XE3kuwp*izx_)Lj+ls&u4B!fahq=Q$um?3bfeTnb z9IkcGF3U}Z18Bi$_{{p#9S9%pk`$Dn0X>+2{|MJgK(WEzpNgmhXE1~4k*=Q^KD)MV z!4VAL3WCTT-hn-+@3Fo=C!z~jK>R4z&%pt-U^INrHUz>)yCelAXh84a-AqLOV_Yo( z1*kv=&R_;n?CP1}VjBWSFn}xYg2%ekJFo{eIDrdTK>RpY&%pt-U^IN*HUz@QyCn5c z2^!FY3HXVtC7=Km=)f7wAbNtUXNE7>hMr*WkLgG>fGY@|=+5lG9@O9jE?@!ilUzLq z2hcvr-XFVuwCIbrA`tFel7bR6pa&E1pX^!*C_n`|a9-hUx6VY-Q(QkYOtvC$1OvE& z;HmEL4(ve(lf)X?i z-c3(50sq;qmVg3OpaW+xgD7|P%y6|0fg>1zcSXT--02$V~g?p>0C5;UL(6YyW;S_vpX1-cd9cG;O|2GNUM zKQr9fhQJXF;0l75xWhZJ2Q@f>i@~$e3sGFUehvK?8a)0sm#z zviB$1w4wkN=)f7wAbPpGH8Xs3t>1zp7{C<-x9;%n9_#zFC#t~-T)+b2SGax-4xk02 z;aj#L5WdnSDJUJhn}(+Jop56ND);ybn? za0COmg5dS;@DA)j4Nl+!77)L|)$=#}n0J5cfv5$e;k&jX5Y{e9K?xerg9-R=bgcvw zpjzQ=cXUK&FoWn#uAdne+YmT{0bD`wW_Nf8_MiqQgJ%;jL<@);*U!NLv|u!R&o%_Y zx40w)C1^korVaM~_-}Q!1QehG9XNv-L~nET%s z7qEc%?e4N196$?3!w+mjAbf{QQU~v*Bx*npCg8u*)e=yE3UuHMW)QWm{>&Bs(+~Z) zn^(9$-`;xn!N*+iRrlvZ-gTcp+5Pz<_vahkpC534e%}50J@@Bh-+kYEj{Eb~?$39* zKgadY2iO9ApEdPQc!{h z^k4%1N9_HzLCLBO1*kv=&R_=7M_ns3{CL|CID!FOK`^+(JA-GnJy8u#-~tv9f6VoB zZ~!eB4L@WX0^!G9l7e!Bw;pPUdN2Y16Rwtk0#u*_XE1|kboI>ezuAVs@gD2@I}lw# z@JV-i2lk)_CvX7^h(G1(IXHk8jE4XHht~i6|DDrK`04xTCIuyEKo2J1pIs{f1*kv= z&R_;!^cmOB4F89%2pquxt|0iVJG=vXP=gb=fCa>#bM@Rq2hf7i@Wb|(2!t1xq@V;1 z=)na1&%0Iv3Q&FCbH8;&XE1~43+_y2_&;q!;0OkA1;H2H;T_n68l1lPW8VG53(*4N z$@Oz^04*2||CenDgkN$=3QEv`9!x8|t?z%?)e=yE3UuHMW)OYF)icBYZ5skdFn}uv zuIpjXPVY>HJ*dG6T)+b2uew$a4xk02;s3D>f$(cCNjKR0QxY|x2NUqW?rI4rKm|H* z1~Z86Ts<@Vzw4#9_gLSbBhdh^Aozwmy#sqtgA=%b1;pQU^&A{P>)_ptrvJ}Y1j28* zBn2gCKo2J1&#sk#0#u*_XW-2!`nKz5hM!<70!J`_D+s>h4)4Go)ZhdzU;(lBUDwaS z0kmK={6yOj2p5;6pac!*!36y8xmE&-@7eofqbs5goWTsD@4Lg9;V0RKz!41K3W6WF z!#l7C^$&i`yB~BSx_|}5e*NR_59QK9YNc`0PqsBl;RCH}St^xMvueHHe(n`clK&ve ziBw3H)JbP)mZAqUCEN5? z`(G^Cix=O**tZR*(w13+6{#jTn zJV_U6k>aN_CYKIUD~+3e{yOh3l_(QkYxW zvQ#RiM(U+W@}EODk-S2zq)s|ZvlKm-G1;bHw0_L3bd(0^Dh1E8t~GY|viEPVu$E5J zMOvh|U`#F@q*fX?{o?hGJ1Km=buCL*t?!?)RM<$pG)evoC?`@ORZ=INrCEwz$dt_6 z_)FGLxRs95AYG+kZ)I!jq`g#2C+Q+BQv9O(DeL=}JFb5TrB)g@{nGWiJ1Kmzl`Tu9 zQfj1Lnk4@vbQ6=ejVTmXQYW3IS&B-=WSf4OZBRN&gLIXGms-~vyO(-!udtR*(nVUN z_+@l+=^(YzxapVM2Bq-j)?G92CWSYp)JVNFN&c-X-y~8YRZ=INrCEwzVN*Q&u59D4 zuoX&2X^^f`@JcINV<+vUS~^J=X_4YrZSS9r$zR35gVajnreC?9yOY9$H7rY|Qfj1L znk4_#biG6@q)O_fvouT5YZ#Ml`c>=4+)77jkgihjTI>EQd;fO#T(y^K=_FmGMT)C! z%-YSRgVajnreD3DyOYA#ZSS9j>B=8|fT@%ksh1|ne?5&vDx^y4q_Z?jk@p71WSf4? z`U$tvQ5vMH6x7zW#!lKxwRDm$(&DtffAJd`lS>DwmBvlKcD?RS3g2X1%TlS78mX5i z$$#_O^|o?i+*C-F)JbP)mZFAkw&~Z|2Bo7kNLML%i)Ur4?B0U*QZ1dNi?m4bTj}P~ zL29LO)33J;qV=DDzRk)Orcx<2QZG%Cf25m8g;YtMbe85#o?RThoiW*_->_!4(oq_u zs}#J$y4Ki9d#RRA(nVU{vAus*j^D|cTslatG;aEhYvWD|TkBeuN~P3Dy);Rl|1Qdj zR7jQ7NoQ%6qIWYT+w_~(kGYkO(jZ;$W$$0`9xGdAC+($LI!PC4k>ZXixpa_PY25Ui z*W2z^t^fMZ7{1rarc^4WM(U+W^4~`{kqW7jI_WIUo*2EKG1;cyvVP31bd(0^Dg`I& zT4N{erCK^k7pL|8TNK70U`#F@q*fX?{nqumJ1P92buCM!Qfj1LnoQnS@jpa4kqW7j zI_WIUQq(gg+w|LPgVIqNq-(#ue|9kVu$4_aX)o2%NxDdj6n}&%xpa_PY25VNw}1W$ zZ^DmSc@1w;sgxS2mnO*{=q6GjRZ=INH+gp5tT6f*W3o-ZWBv73I!c3dm4c63*BU!% zFV)gXx_o?l|E#hoj6cDcTslatG;aElwR6KO2Ngt*4RmVsg_Po z>-%?6xJdEm8Iwx~sg=e}Kek?XCxu_Iu4SoIN{!T;yzStm(ElRkL@K08>ZG$YOVPxX zY}4^`HN4ys;HZ;a99|St^xM zBlXfG`B%D$R7jQ7ZSw4rv%*=5zRH+v)9+c&-AYGkkgihjHS1bqC+($LI(=<>|LovJ z;UdLfXG|^~q*fX?{oZxTofO_#*RoV9rAG34agzLRP)?*ms-#XjOS2SxlPTGz-?x6u zt#rJXy?=wks}y|8%2wG)d#RRA(nVUNcxFm29i(>E`u^D^;}-t@Rd-VOZ7W-rN~P3D zy);SwcjzWkAyrc6iDzk+qVF;$+w=$4kGYkO(jZ->V6m<>cG6y|o!0m7r0^mwQv5x} zHDf1~?^Y||gI4N6Df zv!5*-6kes^f&99Y_EIgKq>Hpj@q?I>O9$lLwD4x!^oMPQQutsiTb4?t)JVNFNq#^# zkqW8W;aQrc=pl^BHvN&caVs6ALApx8L#=C#owS$ghrZGN`LF$aQh1RTDSjAZ za_Jzo(zxl5uJi7sFtn~^sZ>f{BlglH`46X@NQG2MophFFDS8A`vQ2+%{g~T(+52}? zI7nA1c%+rBvXk~wEuEx`v`BHplw3NjTHik#-6|Y6{qZ%slfp+?*|JnBrAF$dN%9{} zH<1dd^2AO$OS2R`hB4WuKe2wyt#p(I=_&=Wb*-_J_D<{jS1UY87ip2=$1*0D4pJ+P zoBpJ2PzoPsUCUCbG-s> zDeR=PG)vKw8Ix`LGi&!&I!c3dm4c^O*BU!%|CH_hv#?fpk}lFB#ZP5SE*+#+8aMsf zb@H7Qrq;DAmAq1Hq+XgN|7nyHsgNqElg`pCMNel+w&~B=`*(ZKRYz%%u2S#}EC0Fm z+)mm{wRDm$(jvtfQ}R{o`)30W3R`L1^yk-K@1*dVR<YM~lC5wHO-E^vu2S%P8art()zV42 zNQ)G|z)kUPa(Hu)T4~($mu-bo_(CgNmP)16NWC;k{+@2K$+Izq!b<9-vouT5ix`t_ z`YY>{Tj?kb(p3sxY+Y;YUc9}3#=XK?I!PC4k>ZyyCYKIUD~+4}>UzhW6qeSt%uB^m zYNTG8B>$z96RD6YsgusqEJZKdrr7(JZTxGiZl$9%NLML%xs|Q4llD?AourGjNb&9V z{@Iv(<^8~e)Jo%~zrLQklfqY6!?IK=rAF$dN%CJwH}S+ms-#XjOS2TciZR)yzp;MI zt#p(I=_&;W>;8=&THn8&2&Nu6|-W+{3jpO9_(JL{BN z=_n1-RSMp;y?<8Oy~)Oy_EIgKq>Hpj@tf)9(m`saans*j@3@n^u(7g*sZ>gh)Jv1( zzlClh6;dU2(pj4CW$$0~R>owT{@$A1N=Ipsu2S$e>sn(c?WI~eNf&8Zwf^frE5}F1 zhqghJ_W)z~ZY!HosgxS2mnO-758Xs6 zq)O_fvoycQqa1Z8+w_mtkGYkO(jZ->;Jwzh#!lKxwRDm$$h%qKP5eH_eJ|Rys<9bp62g{@KCc zgH|@}q`g#2C+Q+BQv4yN z_WsQZqmM8q+w{-YUvH(OG)Pw|_^5TQv6J>vEuEyxs`dS|%AznH7?Vo}sg=e}|9tJ< zN#Vz=YgsClQX}=!rDJN1PRZ=INrCEwT!IW&%zgR!!Rys<9)B65h6$Yb~t+JE$ zQZ1dNi?m4bCz+B<2dR}tllOpsX)D}9Q}`(>n^LKi8mX5i$^SInL@K08>ZJ3hJu0)p z=uDPv`d916+)77jkgihj8S7eOC+($LIw9}o0&f;6{w!m1=^(YzxanW7*WF3s=d5d4 zDwR?r^_x69I4SfmloP3tDyfss(kw-vXG*r|->i4sN=Iq<{PzCY&sT-P7p!dAPTEVg zbdoO8BE?^1N-iCwR`SM;|8~9ZP6{V0Tb4?t)JVNFN&c7UCQ>0)Qg<(V|IP|$Df%*F zvQ7VPJ$EY|r9rw%!B?znjh(cYYU#9UegEv>Md2dFSH|ShL29LO)4yM*+)3eAt!r5- zl~N=1o;XSV*C;1aAyrZ*ouyfdzRr|v(|=e$=2kj7t?%EU@G1p&R<_Dc+Do-`k}lFB z#ou5`E*+%SR!aFYCmav~K{C3VtSnx*J_OvyI=m-V(=>G-|v{j+dTc$I?hTiJfyNqec5PSQnM zr1%F+$)$tjwc@zxzpmHaNumFy^%E>hrBZ67UYaETfpin8kg9vx``0NvOS2R`h%wow z|F$-6rK2=RS1EX~b*-_J_ENoSegEv|lfsL%NO8cJTslatG;aFu>%2QDe28@|OQlk3 zJh7K1$$u#2L@K08>ZG$YOVPual5P4Q>&M(Wt?%Da;UHb5AhfbocG6y|rIU1#7Abx> zQ*!BG^0v{f!f})Rt+ZM8YA4xZn3aNUe$IqR@vouRl#JOyfZ!46J z(jZ->;8E7K#!lKJ@1}+~C+Q+BQv7Jf z;7QiC#!lL=THiklYlSE2A}vz9V@xg`q*fX?J!GAHCxuV8u4SoIdSWB>(j@s$p`1vC zR7st5mS!n>DpRse54C^(aqGDLC6or~Dg~*PA8IR<_EIgKq>Hpj@za=+o4jq{L18P6 zn;vE>l)|T5*|JnBrAF$dN%EgTH<5~GZ10~9tQ2FNV@$RwT)Vf@Q5vMH6g<HjIZVl(v%P(wzlY80wS17EcPC84o6up2k*`{cnaw{FBLApx83$1I7-KzEd zGwv1E(n-2Vixlq}lS>DwmBvkvTJN}%!WUWBveXkxsgZhVlKdA_PNYJrq)s|ZvlPAL ze#-j(Wg8#8e$B0Plm_W41*Mg(v6J>vEuEx`v`Fzw*D2mMCO2+6NUbz(dW@}53SVXo z%TlS78mX5i$$vTBBweIM^5WMrCYKIUD~+2TzkcAI6js)?ER{;Bk$P#8 z{MT(=d;gMqt}3KT>ZG$YOVR83glto?PPvti(jZ->;0@dRXO-Q`AAW#oFV)gXx=4!@ z*K~8~AhpuC=?Uu{cT(uR(aIL4QYkf3FHMsFCc24KNR`w{XK8j?-@oY1jL9}Vas8NE z=_n1-RSFvGT4N{erCK^k7ilqhTRDCUV{+*rwbHohNwz{Me5-XWOQlk3q+XgN|7{-S zsn(c z?WI~eNf*gm#P~go$)$tTO5>)duGig3VP{>-QmK?0sh6gE+56|emvSN%QYCfLS(>Hj zeN4$VrR(Hd=_n1-b=CT>|LkD!ek+@H(q5{ilXQ_5DLyeJmkv@Zjhmjf-gf7S;Rmd2 zVJekUBlXfG`5&a4NQG2Mopg3u-@jR5^dZJ%o1VUY%&l~k2I(pVy>+dzllD?AourG& z+bWB~_`{6JrGwN;GZOYd>Zl$9% ztXkhc`}wLc_?(q3+ev$=mQK<|TBP{Glw3MUtu%TYpR--AUost!!B;l~N=1(j@tJbQ7tNDyh5M z-aotKtZxtv07p>RbN#XabY*{LmQX}=!B>CT`n@ELJIj!$sr|>Mz zQuG7HWSd^Re$1_Olm_W41^%1Y&$q@-+Do;`+kQSNyhw`_KaerGbdXwU-1HLLpcFpH zx|XF7{FSCxs8QvSq1MN{!S@ljMhV6RD7@@Xhwme{FQ9@GQ+z z^l-*xn_jjyZl$9%NLML%gmta4llGEVizn$KEmHhQ#^lmLYNc`0%h&7fq%g9sWvNu& z%ih06VJ}UR|0v3dR7jQ7NoQ%6qDM0&+jP6$d%J3V|BOe4gLIXG$5`3U?WDa_ODE|f zEm9maC6^AK*h=H3SFG3FN#SFyY*{LmQX}=!B>9h{n@EMz`uDZwqUMC+Q+BQv3wQHpj@l%+R zZ}M#5L18P6n_j*CdMAZXwX$WYR7#E1OOxcMbQ7saxA)HmRth`mEX`8%G{$6`UbA*@ zrK2=RS1EY9b*-_JyuDaUC+Q+BQv3|YAmdzD-||UFHMsF zOv;H=NR`w{XK9wAXE7yPwZ4DV`U$sNXgW%Rbd`c*2t=HX2;d88PSt^xMBlXh%-`c&vyEUc%<4^YKRo$wnj@xl7X6jP6lf=wuX3Ujg z3}zUYIp#a}uj?2FGh=TAL0Tzc1;MVS8l)A3#0cHhv<*!)G$oye?h=FsDWO5|d!Dtk zKH5Dq-|zhYukU%i_U!k5_IjSR_S!ou$vKP`WZbKAV|~&3mqM@rRiFmcg(7oR8B^*h z8cY@{L3OANg;Jc$8F7{_nMTlps!$W^LDBnEnIx2l%8)I!fM*a2-_N-mOWdz3W)Lhw zHK+v{52%b7l!6LS1!_QDD3b11(SxR>#Zw5CpgPosLi0G8GvZJhvY;x|gnCePK3CDX zOj44ShsuyGwUEwspzwp7%&`QNfr?NKYC%Ru<;F5{{o^tz1Pf3FYCv5m@{lTHNl` zf{aIHGG)Y|6jXpJPy^~hk;mlv$Kx`Ijz8-r3% z0jfX^B|X?x3`VM|j44&2VP&BbREOG7XcgyjMjT2*7F30rQaY#f5RAU4$|RvYREBJ+ z=P9=Xgm|AVaf(q>$uTGe6`%^#fVxm*wW?xDy+D<-PzkC-dK(P= zgOfQW4y7RrszObu2SwMYDoH30l_6VdC9i)Shoo?wlUI@wPzEYOHK+v{FRR=bl!6LS z1!|CJ{p0Ss2u5B}WlX6moy|fes1CKE&|1#rj5w5rET{@Kb+89TZB-@-<)JcUORb{r zI#75W=W;9oWuPKd>x- zQPP7A#b6hTG*uZ>sz$@gLM5mUwV}{koXZ(;C=FRqRZ8cEO$2*T^leop3FVx&Cn{whXQ%b)fJkoXoKVl!1y+4QfHgrz$rFrJ#b6 z9;_$^8&DUD^i&yB%BI0&p%PSw+EC~-&gG0al!h!RoljR0Y(hOK`nf8Tgz``svZdBh zy$%%qf^#{RfHF|=3%UOB=^BD9$S{iiSpcZ7rRB{YTK?SG+HJ~mOxkXhmrQW7~^(QEaB z-O9N&zLN%xb8Mmq27?dK> z`o{$e2v(p5)P*9qt1_lki*mD2393VFD0Bzsaz-3V>!1Zyp(fOWq6t+d3FV={(1NN^6Y4?HdsUevl!wZYEwzFA z=s@AQoXfGqT)F-+GYA%;8q|V}luC|4DX0Kdpa#^1BKN5(x+(cS4IvAapgPosLickr zXT+g2WI z5G+6yr~!4M$b41ClCkYL!rkxSLc+tBr6SBP!(!IJt+EjF2lJ=C=Zn( zTk2zK*MY)M$n}qdi6^)WD+3jw8q|V}g35?NDX0Kdpa#^1^vIK{j4AaA4IvAapgPos zLQionXT+g2WIwy zdh7H>>tA>=Cvz|XWuPKdgIbWWMCHby6jXpJPy_0+blGuasVZYiea=$|m7qG*hC(II z<%~F#hAgNGHKATfSIN<5l#);$Dnqu^7d(Yf_*u^7SOUsGMW_a~l=PsnOeM#l6jXpJ zPy^~hk+P~Xi{%~T2|lXujKa$b8x*eAm-k!WrZ7)op~5PKw-i28nE6~keU8H83dx_h1~X6*szEKtsHlQ5C^8qVu>+NsW|+N>CkYL!lQq znKR;08nU1&)P#CabfsMXxlD4UDwv1LkS#Sp?K)7n${8F>KpChA)u0w+tWvpp3`{`< zr~);hE);oDl`*A8&|tDq393VFDD)ENj?gJ3?vRv*ET{@Kp&k^i$ug9igz``svZY2+ zyABjyE!TezCWzxSRt73UHK+v{|4Cs+dw+(qOVs393VFN4)-p)^jqa#Gy1~K~<;;^`K}=RY^j5s0`UsTTyQv5`F(? zhTq|2RszaEMW_a~Amd$?8-r3%0jfX^sH=mK_f#2EYHJ!y7Aiq?s11eMoXZ(;C=FRq z6>9cH>t7GS=mu3L3FVpgPosLZ5IhXT+g2 zWIMspzt-E%drHMfr?O#rOSpb1dVG|atumA1*ifw zpe_^%t170{PCSE9395&6Zpf$G2!^gxu{e~5ET{@Kp&k^yUR6m#d8n+U2W`noJcUsB z22SQ!0?I%|s0OtlBcgI+PzowQ6)BxNX&~5zBGXkFQ|c?!E(?{QI@E?jGdPzs;!qm0 zpz4gp{P%Be*hH`gMQ>DPl29HhL$=h;RHXxjqnyjJ1eAe_kX{2@kTFvw$DkBcfGSV} z>Ozs5R25Td7aB|!Dmmiyua00F3f;`foDzr9kOfttCe(wXF;yiA<)Jc()<5pVmcd;~ z9VmPYCvz+TWuPKdgIbVrtICZ*DX0Kdbg%(+p@>jrOsU;yFj=Ss)uA>NigPY!#Gy1~ z^+oGn6~QLdgQB;oGD#>8l_6Vdcb-8gd^_iIECFSpB1@O2YY4U=;|`S^gHlidsz42> z3q=yDiYYb7GYFLua{c3A9lL<7g6dEk3f;rGoDql8 zkadq-|M+wj!6wv$qO(<*B$S8BkS(vY;x|gnCdkrK%*MJc-snE?q{@mfDA6 z9VmPsCvz+TWuPKdgIbVrzsik4DX5@>6{rDqp~wTOj43sl29t$KP#tPRp)}`mMjT4_ zMeCo1U=?aYJt#U)l}SQ*s0`Us`|=Dz;rX1)u>_Q1=`vVEum-gt<3W`igHlidsz42> z3q>-jiYc`p&tOL9AhU#E9cn|Nhg7>bl!h#*3N@h~6n$7#Nh;~Vykf8n*;4!S6hh%g zIGJM!C<7It8q|V}tjdi+DJh)`77(mJ4X6u69#v&bsjpIQ7Aiq?s11c4<6O>&L+Qul z`o}>F!79{*dQdc{$|RvYREBJ+uTkX=6wY%l#}bg90gF%#YC*>1DmezFpaN8Z8c-LC z{9RQsrKa%umvu-gL3OANg`VK#Dby|wr6CKdLQSX#MGLA*l0@qt7tAAAhHR+==xhfH zKgr1)OF$W@2-Tn#WIUyEV^B&53s41WKwT)ZK$S724y3_kp%PSw+EB>iT+WF1MeAQ0 zK?|xvO{fP&7pgKzC=Zn(Tk0U5K`8t*=W;B;(j_wp7NHu{f{aBfIR>Sm0#tz-P#206 zRTZ0Bm-U;(N?4X6u6o>65?sY9qr7Aiq?s11dl8l_6W|Q0k)th0C1FF+BlhpdwU*T9C0^CC8u?RDdc_1L{JN=VTRL z|4hllNLi=^)uA>NTEWSj5r@){1y!LY)PtfGx&CpPB+)6DhsuyGbvU)_K;h>(gJTIO z0~Mhf)Pjr`RBlWMQ&0h_KnQEaBRXO*FF|_{0`=o~uvY;x| zgnCePl~aah5XwVk$d(%78HBCkYL!s3wBMzk@3#vj*sHda{qyJE4l29HhL$;Kkrw|IS;arX-pbS)m zYETO@>YS@{a!ityf(lRtYCv5m^0FF&DHWh9S*Qfnp*9qHMXrCG5`Truu+oqPRiP%- zgQ9CyZW78vWyqE~lKSXCdf4V<4kn-sRD^0!3o_QJ+!&OC3Qz@VKwU??{zYC@WlX8B zQ!ERWpgPosLa%WyXT+g2WI-ff`VEy{?iYEhSTG8Vx23 zm7qG*hC=UfE@#A{G-N?lsHvm}dy2v6yQ)kQ%0p$ymI_jL9Vq-B=W;9oWuPKdgIZEL zrx(LPzowQ6{rDqp~$DIiYfJ78cY@{LG`|9{c9r_>Txos#Gy1~K~<;;^`Piys!9^d zLuJTj>Du>r3T2QL{+yFp2`B>KLk_i`!tv= zRD$YI8wy>)xttM)(vSsJmGod!G1!BmSE@2eC=Zn(Tj~eYT?YzZ#km|yKpChA)ueQ8 z*h0_EcdhPvxO;V>t2ECFSpB20973E`qx0P3q`J1WlX7K zsa+N-L3OANg>K+n&WJ;4$bzaQTK~9V6Tu!7ji@q7C=Zn(Tk1ztr2~bhb1ugcPzEYO zH63h0#tfAlgHlidsz42>3q@{JRZOYlXfRo*)EBLPbp+c`D9Xv45{J@|1y!LY)Ptfk zRh1-^hsrEnc4Eum@jQi4_$E%~SOUsGMW_a~Ame708-r3%0jk`rtA-5(yHF&i&YDs` z<|%|qP#tPRp<6hYGvZJhvXt~-RWaCvdQkLMRVE4Lp)zDkoxn2)g$3twECFSpqLj|3 zYY4U=Bd(HTPzowQ6{rDqp~!8jiYfII>MaYEZjBL9hXJp~zjTj45>z zWn`feREOG7=x)yCj5w5rEE27Me7cHY6Y4=xQt6}MI@E?jNlxaJIFyDgs0uZq9u%FU zswAO2OP8g~2-;FV<0*u~_i{4F5>N&zLN%xb8FN)`3`#+Txw<-CL9hXJp-4)#Go?=9 zDTGQ;9cn|N`#6^~;!s*i4_b=BD%6B}Q1pIPCJE)CGGt4g$}_RS!6HNOe+R0s0uZq9u$2_l}SQ*s0`UsXHj<@D7=7kIhK&pnHdC& zPz`E9hNY5YPzowQ6{rDqp~ym2#at-YzhBZ2vNFgjL3OANg`VbQZWo8rkOfttCe(wX zi&Pc*?++>Fp)zDk{TFrDfx<=3;8+66Kt-qqwIE}$%8fbV^)H2B0jfX^s0&4ws4}M1 zuc%5EDnWIq4TY9+E@#9^wEi*E2wG4TYC=6IT2f__P#!8nw$!hwj}8=mhI2WV(7_B; zglbR=GM-h*F(?HUpbFH0x=>`9Q-#()Q}Q=7nk-a;>QEaBl{uL+;!qm0peodadQfyZ zRncXcBvUF6l_6W|w>*VV_&LttSOUsGMW_a~AY+BfjjhlXQwSEI3eNS4z;1s^PEc=dN8gSOhXn_g_=+gioVb<6HG#Rs0`Uszvmf*!Yesf=U_sTm4S*- z4QfF~m6JIm2Bn|^RDl{$7mBQs>mQdfS8>5Vkg`w-szYrk^rFg$Lutr@s!$W^L3;Eh zRVE4Lp)zDk{WlG;1BGjx%drHMfr?NKYC*25{j5w5rET{@Kp&m<@$vY;x|gnCf)4OJxx<)JcUOI^S-D5W#QZ*np#0cD^fRD)WO(NwuH zC!0zCN{&G(r~p-<2GoTj@2V=M)Ssww7Aiq?s7<2J zf7~$i9w)QnP#UtJD%6B}P_(V8B%wT1hHR;esJD&|hBt6B2NO^RDnd1=1sU(F+!&OC z3Qz@V^hN7m7s1E}s*EXhF%2dQm7qG*hC&_A<%~F#hAgNGHCeh$=^+^XP?bqSd8iE8 zQh(+tgu)+jF2@p31}Z`|sP&Ot|2W0isFGt)3MxPqr~!4MNLN)cr7oe$S*QfnmGod+ zF&O%olQ|_0r6CKdLQSX#ML$thl29HhL$;KDDRtM8WQ9NFWL5&oKt-qqwIHLXa$`^m zDnJ#e(Ua>Rch^NQ@|h}QN?k^0vrq}DLv1MZIp=al97;nLRE6{=*n^^9s4__?50xQX z>Mzt?2MQZYX$TxkKpChA)g1Bq*Fw;^LM6wb6jXpJPy^~hktp7}yHI4NDq~7rN$s*w393VFD0CC&az-3VLl&f0!6wv$qBpBDNhlAM zAzSJy>aGKYW1P#e1eAe_j`$g^A=rY9TU2rkNT2q)1BGwnWR4}E3{-?_Pzy3{SGh4L z1r_?D^{;|p1L{JNJ5(7{>KYnM7Aiq?s11b@oXZ(;C=FRGU7oHY*o1me^iEYK3FVx`tp2GVWH%F(?HUpbFH0x=_SaRZOWc^_ErAgC)ga z9cn|NS)9x%aVQO0P!(!IJt%sQs*;5AQaYC|BWO!qN3jkRp3TV|OF$W@2-Tn#WF%E? z3`#+Tq+I{FbOpf%)P*8*R2ft1ddkQ`C8!Ryq0qgY%NcPf4e1tGg_=+giq2JKl29Hh zL$=fn)LjP(r#P2m2`J-;*S{iyHK+v{_o?IOs-8s*;5AI#`Bmsp-^R2MW*QWR4}E3{-?_Pzy5VtK1lr z>WkLD0)iE&0d=9sgQ|=vHG>9|g-TEzYD1w6=W<3IO0#qsv=FR9O{fP&A5vwKP#!8n zw$zP0gHZTk&gEDF$~>&AU=hI@)PjshRJ$0If(lRtYCv5ml2uhqsVM*bBdZuJL3OAN zg&yT(N(siHG-N?ls0sC;=wqr%QcCB7c?8RlEj5#;5DMownPUkk0~Mhf)Pjt>%8fy( zyj=gdU;)7j)PTBBvrq}DLv1MZch2REIHadR3#vj*s0T%#P-T)(9x6k& z)Xmgg2MQNBmtzS>y#8enEJ8J?1sPAOR=u!L$=f{)LjP(FXUv7C7=vcglbR=GM-ksvA$^i zOCeZ*Do_LJLXkzPj45?14JHefpgPosLPgHyj5te|Oe1JPRj3K|py*;%CJE)CGGt2$ zon9WS69+U#F@J;oBR zXLy9>@r0H9rN}ZFO7=g^JzDV;`3-Av<==*ozcK;Hk~tXrM9#U z@+LeUqdk8~KTMlVV;C%wr%~IP zbbK?Jjx9R&e1j&6HshOAlWGmdsO~M)p0}H5EQe9)Ln)8qHs?Me&IwQbsy>ZkCdU#~ zi#C%sYZ6^Q?FVn8?M{l*-ae6XZzrEb?df><4vO)1GF>B|r}!Wpo7{$C(|UAFHn|PQ zeoE~Os*$9cv<*{T^G?q=k3E|j(81tIVvp;l?iL(;k`nKx2DF*9*|b?4GbzT~l~jm| z4bGv9`j94wirHLnBV9PfhJ|t6)Dv~9MRVb!d09c>pHs?+0naeqkKv!ub`#zFZ3jFy z?d_RVYJhJ3d}>E?Gt7%^w@R&!?HPL3BPhC>X=8f9f=h0lnsax7i z+HBsh<_BpD>RKZsOxu4^r*v+Zj?D$+r|7!&qoNN{ zd%A$(GiW25v>6Mj{i77;bHAkcjnw{e$~}$Zv>*ICwV6xtRtq4w1IV4i$E#fPbL zKKBU4o~Akn&_(iK7LoO@(g7F9QDYi}$3w?-Wj1v__ypb2Z_qi~>}#n274~Q}TYRNd z%%Z`Vlw+SnIcHHZFU^=mF}fg=JEzU0!4K2RahjiM(AAqo%B4CswYQ)2cy#k*dQH)l z4AO{)sY9Eum`BPnO7>9a9!fI#9BqRIY8RyTQn{9bu{%FCDN#ehp7V|5G@YFtEez7Aj7l` zE~ezG>EWUWahO&!>vPJZb-;d(&Rs+?e&O?0q4se)M-TDf3i5BM-ZfPJGdiZ6L0T1u zX*2Jm{e7P8JT^UOrbQ27nyzS&?z3n{rVi=$D7t{HXu+Uucxwu8L#IbmYz)O{8y-us zE$HHCn>LQd#v8r1rfo}O+nP$!-lVn4+MfESV{06ZX-n##HqRLHb`;;0#zp&S6XShp7XT3QXIIj;V;bBjtUC za(1Sov<*^wYdoE&xQFU_=$u8hP3p|1+QSsHsqVB%w5NK56f-B$$zd)+1uYt-J&N`; zGJ^|lm-Ek=22-Wb&0r1l=V zat}}4fwUb*c~sl@jB=>W;0JVzhN-wQKpoKLp{q9cBvau*+AKOYXb=V!rvKuO$EIYH z3Jw2>Oxy5c4A*`8G_ZkSAYsKd?r%u$YwPNB;Q}-TazB7^rac%IXskz`yhwR+d%u4Re z>kmEugfX)|sCdS0sBClXi)#+0?J(L7&%LE zV)^)i=f-=Nk015wzTPkP_3k#{>@`03=J=6KJ~xtLAMdNZF;%Oz#>0^L6zvOVhsg z&zCi7)BxRpiOz*>MHeE3qE|I*M;Mo^m#<)I04?_M)B!h2HATsw55*E=i@UPsmFgWfu-JuJ?Dm5*}Pt3xa3 z(aA+$9~#m$W4d_e&7qUD+H|pdllGYzxr>@ZXJ}gVW>I~6=xoi1<-WCkX!$6uGE0nq ze`vbb&fWd~&^2CfQ%vp*-KrULb5C`K{^r$;`*Yv;Xy^d1mPw1VHxAvRmFDFJxCnMA93jG=4u!l2i*>vEC-C`<7SH8g=nc&o(5$B(z0|kEfL1H! zq65CY2Q*`ucx;r9#P*&cyXrtdFf>2g;5*7t^1xiOdfoo`pVtGQKw z@Lk3)4SJ#NEdKjEUrNi|C3ZO9_b5I6%g*zyJDw!L1p>LIUw2^wvGj7f( zF{V3oaBkv7zKxoenJ>1z#P>Cthp%7ao1#S@6n~&Y&3aG>4!6Z34x1UVfy0%I*zHo< z8xM(Nc%OMlTym+;?>ssa#FX#*$B5;Z`c9#8lP~i0?*Y&8jUHw_fF&PLr^Ai0@rV zjJTTbUGDa)eKY9QF7^-m&Z9nW3sWt#lBmH6Hb{Pe97SKmO{wwMs12PXBB z_<6*4i)Pith6tTDR_6|y?)!{hgzLnCGwCTTtrLHmNlz)g1n!?n4Xjs1ljGsn#DO=_ zap|?(**E!UO(?w~*56El@S9@)7@v4k{Fe9OW^PW5?xj{)FV4PI-fd0zj^l;!gt#w9 z_hsyD^1gf^g16I?+{|5myYF&db3VI+9{X-ClHkLx7l#s< zO&PUobEhSJ^XTcDF1DCU0dt0!HJ2VwdMHx9<24%4Z}0cfBG?x1KEQWJhy&8{1^94@22?$c$+wU9*xVmU0gWNH(iU~A+-6lHxs#;^XZ;ymAi!XAkTm9xC~cq zid7F$nbd5t{lnBQpUlmE*tZYed-2R86gTJQ#$xht2`Q0O@SobPF^ zvvuyTD}3ML$9BOB^lGfVk(;~Hw*%eS+>=$`Q3G1$J@NTVyvS}4FV}p(@4q^?NKK$` zO?P;L=KHy`SNrzSw9-epo7eF3-pwtn``#Eq*PdEOPqq~j;a7b}4}`CNU0kuB@6atu zl=-K->6fxsi!EQHhah^5_{nQ@O{r^hZ@uQ5HA*~msn2=$$=&<5&!S7ZUHtAH-;?w% zF!^2I8n1WDoYv<3!Qzz-zV);mie>Nn_S70WWo2Q)RAlsKnD z`}qC2lRosFs?iH^{zl)Yy#G&H^fmGLct5QOuZfMkk2b{N+xhAJ zry>5bo&SRV`t;ZY|0z6Sr*7|GKu^Y`9sKlUye)=zpi1T zcHNCG=3sHoZvO8%rzVQ>ZvGPamfiiwIHCS-V(#cc{~*7^(+7iz;;(!A4_3rSp|?!-uN>(u@=7v6?Ea~5j0jDk63yJ>Q~clNiT&&V>aqW} z@T&vqR7C_Y_3t7cJg|Qw9LCX|Ihs28K4vT&;9pm=0{@R(`56rPovwL*(e_2!>;J^q1DYDb-I5f z&*pc|kh3}S44V9kc>N4Hu*1)k!7I*`cVyL>etj!CdGguvQDFKxvenDZ?tpXYsF?fPx&GY;Xcf8h0{=l??@40$AE|?r`X3$l3yjGfcA@`Q z{h7A5qkEpc$bY$(O^d@W_8+H(=84e7{y9`!eir!7pZy`_*Z(XZ02x30k}rMrCG?Ej z;+0GMzoe%0d@Rz!+1#kh{Ik5?vt_@xK2C4ai~i!zkLJ%%f4j=R^%yPsl9+yj|0KF= zuioIln5XB|>HhPy${O+PbpJ_OsxAg+_@AWfd1Z$G7xeyU=Z=c{AQD<)+>5pEQCR{(L@_85Z}?-~0}U@efkJ!{Ubz`tPQ%8E-%6KS-ky ze&u2ARQ%y#|C_Y?$s_XU9^Msm??2+dj^1PEiN8HY7g-VGa`LI+tH}K^=iiSn>5jbr zJKmO9m-ip96&}tV^0WXtmKIPw^KgR#s@(V5ebnbJ@f4Nr+FBX?S z?f*zKmWqoP`LEW(rQBzW{O9t=hO-y@zpGixM0PR7OJ#B75?Um~%f)3&=p_+=DE%nnUx{6r8)IUYbRK%o`e+oSt-!1XW?s;($9ger2r%4Hf^9>bVlr zUhu!DW#14xt@Q6t-F$1M{~EgU&#d(SpoeMr4nkare!#6^Ve#QSWeM`z|YyHowyCUARRqytc zz*ym1=l_}-n7)oCus<_P*ZIFaO1m$b+p_6DhrTul@t5^-_Mczx|EX4ri~U>vlQr|U zoYC_Cw^xfKa__w3e})#sxw#E~O{>inkAL7lT#Kee`vd=Jbk~mU_|McT_vO+Z|75<| zD?jxAiNfFih;E)aPh9*F-OS27F`M_sd{N;&eaQce_B7l3Z}hLwG8ys7M(Q>EkT{`B zOPHOT)AjF4pR=;L;>Z58H2O9qUmyM+t<-&Aw~1Hx{8bfS_?bVVeAegwuZtgjPH!!b ze@-oS%FXz~za=fv3m;7c-kqS8-V%}R11&ATUR<_AU_RaS{dWv3rlnc5ccepG+&wX{ zL`!WDzuhS?U#q<@CQhQ$W+(T`q`(X>uhHl39H3Em#ou-fOd0p;M33jF1U-yaSM+uc z96q+&eakcMpv!L8#09$q_7T6>B`{XYe9Y&jZ1FlZwz+Xrn7agy(9BO{eB7H9|Nfm6 zr~5u@m%tQpc=01D^e8<6i{Lq0elO@$Vw&w{(|NY&vZzarCi)z4yzn ze%mwdCGSd#eEti~vzqqQSZ2`QTlhzNjbd+$=&^xAsgL5Z)Cc{R!?S^+8)@5Z)<5@g zF~zQ??H;lBkEoCMn*Xqm^M54!Nd71=^wpnGA1kQFD%yIqxv%3V_Y8Q>qV4i~#K_|U zd+pb)QzzAd|NTOKd|Y7P@%K?C|M1LQO#6w#JSH$vod08*&AG<~cKRP1y!XE~7&<<% z?c{mX#Ur#Wp-m0`eA%gI)RwacJO|PC-Pz)t;{ykdI)i-nY%%Njz>cG?B;PPwJb8TJ z5bgHaV#D!)?YFGjbaA(goI!u-p>^xW0sa8VzjEUNe_h%7(z$I<2)w?vZp>Qm8Fz=* zd~dwdZ`;`quXlbmh5Z`(7DGSzEuCg+KiG8Q=kqf~KWcCK>GMAQm^9K&_tRdc*Bbp~ zR`Da`@$8|XPTW35#yx63C}P8bzfS$#7o%i+jK}%)zImO~Y@dcRUUh7oIl?(1f@cLL zPMX#~J>;6ide`nyQlWM$98WvW z8LzM3Ui~rS{B7lV-J=3gC*UzBIsiGNeSf}Tp|L2xtT@8NhIzGvDd`kaVP3*Ms&K0ZUANP;# z{-1B?uZ?m5>ijUDr~W;!z3W`TcKs2r-`BZ z+wJVR^~u2YdV9Uof%E)%JYzp_j-A(o$Fqy;_#oG@(Z9ms{w-9u)KIsyfA7tY=#8n8 zYzjb8d^4%?f>jMdaEI%m^nCN&FYHVX~PVw;7`5BZJnpF`1msn&SarO|Mn zEUqX|ocu4&RQ_E`d-D@(P%Aoj(@s3~+!?b1=XfVfsyK5=|2$Fj0ctUJ_?r#PICEj=$qe<{!RJx#uY`=TV7)?k`7pg0|!-|3x(BQ*^>PEvF~- z7*)Ts3w;`qrzXGVoTA^^%bzlzG9KjNd{4YGJFv5N5An(Dz*lyuzUVX@*KZh-H8NcO z58~itV6R=DbiMqVvc*H(;+5CM`N_bZyZpTB6xpI*Br2Oc%uRGLKNlkBXK9#5Q48CgEH_QhN01SVw2k*DObo7~&g9MHbY zV||?KzPDCveQ#h-?`Sdg-oRJ151to4x;HRs=xx{h7UW2t;EZ!!vu4SDc!k0a{~u?^+Q}Iau~QXx-qVvYOcccpc{*+ z$FaYD))~S81(s0Y_lsOl$1|?uZJ(nAUQ?a-5Rc~~SLxeUI2F~~-3nKMSvVgwmhwff z?>Pz1d%efAZYO7=ckfU1m&d_}IHBg9G_-k(`8zwugZ&Km@pJ0Dxbem*6DM7Ekkfo} zzxjJdJI4o#6*Hzx)N{K#hkNu-@AN(A_@MrA<%iC(di(qPUe58J{quF#@yVw-=Z~kw zpEWLdJHaiJvO_k0Zr<6 z_z*_q1Rh_Jt3N>NsQxR}vfuFT_ng^M@1-~O-#eYpl=M;D^;-D;TTXlRUVPDjGiKFs zW0Z63e3mEkCXF!G+k@9*vc7W|0AvEbJrxk z;CfSYKaVxnP5i9o%z=8VozfpL|I;V(=M&eYeT>H?Xum*na^Ju^%bgPHRrG}Gnts|p zc3OEn3tZ>txSsg?onzgjUJ?(w8Z2@Z$hywo=9=`oUB`1=#~s%Ntd+-f{pyO|a5Xr> z^_t48bgoT(OnBTiprx(>FLNCq<*IiopXd2kQ+9ekK^;Hk>fmPA6+PfO-UctNp!wo| zc++&JGu7pPc-Q{#Zkq18hX3rY{oma*{r}fp`@g$sx@VKS)?Q6_?U|8(aV;NzbS*cN zTr1k&v4A-*=DKS&d9>x+UiIofc$0kj`tP}(O!s;gaSdpk?G&WHH_D&;>drC!gIw}w z>o=TZ^-0&gy#3SqH_27-XxE#}4A+~=C9d~?FV{0?0Q&$;es!`1x))xFc5?m5sk;}cy2 zaIfzj*CXke-FiE{_lFDVwg=Hr{2^+ylUx^10ztX)09g=^_49`g^Uz?Sp{mybUl z{bt#Ts4q%y;Vs6wi0`|e@-?qI?bUa{w_V3?e7QQxhuCw9>zZzIeQ=1luHjd%_Upea zC`Z(G9e?OL-U2t(>ECmY>t%Gj>xw>c75J&^`~$B14XznF&2^K$Q1$x#d(Lnb9MPY0 z^%gtUb-dB_4)v+)czax-bBnfi<-gNEK0)2n39bfrx^BT2t_}wJSKvH5^w$E_UYv1X zVB+uZ!yB5@zjw2b_VgQ1*B$(`>kag;uJd8naZDYHyBE-_csJMOW?lE=cdq%r$aTDv z>*}9$w8`&XW4GvSzHnT+-Z@rZ4+dT5pY1y5>9?cKQ@r5&&cmR-AO5QU zsZ0IBBcnOz)h`Z4^?$3PmWdU6I_K5*&EOYK2kPVh1@Ak@>if;F-*t|+Qy+!@jDRz% z*SU^Mt^wTPI)6idB~+i?PoC%uNc}$e&2>(P>do_tnsYo(y^13$(7&r6x)MUJE12gR zz~lYTvFb&6p=$uAxMpPQrZWItyK0UF~=4 zcc}VX;9P)C|E`Vm^StYd=D2>rTyh;B;d-ds?Rn za#w*jT*ueH;!L6X0QABbr$hCn_gL2euW`-T7hI3;zZ$@ut_C}}p7JMMSGe}emyw*p znXY>-TmwANbqjW)FPQTAQv-+}=v=`*{af<(D(4E-m!GU_fWr0A9^jhdZ@M~s&^5sJ zgb~j3ziYq4j_Zo5u0Ja5?V6E0T(|7@51j$4-&-8%8c^ERe(I>NZT^s)hu3kiyMflW z$LXKubADcZWGOGQ)j&NuMvtbI6EkJ+Vd;K!3zRA9&(%Oy}=o*$MaGD#j0)${hKw9cWAh^ zG2$2Wrslm?+{n9WVgc`tmAgsD)i-}$)ev;?9=Dnw~OX#ZMAzxz+ET-Nj;?h4dH0YX4QDmTGlL`-!9I zG+lz+eOsJIM_Oi-Fc;EnKI`l!ePgp<>v%lscjw<0D>(TVa;Fuyz4ht9j$c{m`Wu~k z-Ok=g98Bl6r=7j`T=9#iDS10_BkvBCyRXDuzmZh$JWuQ+EKYvK*?TV&?@`vI+?35< zNov&_BX(azMGtg#-x0^tk(N7D7>lUJT4z7$*C|gVbCP1f0|K?=P62 z(M_Lprt4+481Dr^n;T61-dg9*tF`;8WzMmBoYdTZ|5N9g;J@K~&WV56{40m&T>5Y- zU$N?GP%B5a{|gn$v^jH<`!6s_tVO~27u4V^^|E=z^_+1R{PS;n5Z^QR-A1pt*1}D$ z*)-mv0d!nz*F~rsv}J?8BH&E(&#+d|e}<7N>_PuTuKbzjTIIMaISHfaV!7p{{J&_y zsno!{k{djPt9MFnGFqD(OnvR&UXGKXKKQ6Rr1LGhiZi>eC32nX)111uo8BQ#oV3U_ z=(msS`Y3xvnRaN{NLV_T53>bX2nCeAf#8Wv9+W zsPCp~B6uFI;Vwq>S2wi;{0E8lH9BYJU7vK^nQ8_%?ebbmob;6Iu5S2p25s5kP}kel zG9=Ld%Oh3T<8(EHAGz-TufKd4ZEiW~IoCVaCJoH%_$sz_U4Q1;TT6i*H=AH?H)$Cb z2WLVv`1%x#Ur!DEYDgdBYTON-WA#~j(_6>|rhfSc$NtBA_e)y+LlK)!=nXu!U0m02 zF+P(9ZEi4iwd+CqvVk)u^)kVjCeh;&;mk4pZ%yj$Wjk@eGqjeXA-$Bj-K1~1Zdn68 z2F>YQ=sg6SE_ZPi{ud9ZEfcSDtv8$~7CjT#{@a_*!weoo4bO?Y5Bh(dqy`sw`=1Nc z9|(7mS2I9YBR`|)IwsCtz&ZX`gS?Ti?)rZ*NKR4Hrq=sShaBa^{WiUIygL3T^CB}> zy55}JPmAhulUrrZ1$h})WGP&{p0p0D87XSbN delta 544668 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 >;i`jmqoj4(!cuZrF)BsG`=BH{S}Js9RD+ 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

    4ej+`Qof*(9nzt6 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 rather than a failed invocation. + golem.Implement(Orders, Refund, func(ctx *golem.Context[OrderState], in RefundIn) Order { + // An expected, typed outcome: a *value*, not a failure — the caller sees + // result on a successful invocation, not an aborted one. if ctx.State.order.State != StatePaid { ctx.State.order.Refund = golem.Some(golem.Err[Money, string]("order is not paid")) - return ctx.State.order, nil + return ctx.State.order } ctx.State.order.Refund = golem.Some(golem.Ok[Money, string](in.Amount)) ctx.State.order.State = StateRefunded - return ctx.State.order, nil + return ctx.State.order }) } @@ -157,39 +157,30 @@ func init() { func (s *OrderState) snapshot() Order { return s.order } func init() { - golem.Implement(Orders, Audit, func(ctx *golem.Context[OrderState], _ golem.Unit) ([]Money, error) { + golem.Implement(Orders, Audit, func(ctx *golem.Context[OrderState], _ golem.Unit) []Money { regions := []string{"eu-west", "eu-central", "us-east"} // Fan out. CallAsync returns immediately, so all three are in flight; // a goroutine blocked in Get yields to the component-model event loop. // (Concurrency is across DIFFERENT targets — one agent instance still - // handles a single invocation at a time.) + // handles a single invocation at a time.) golem.Must turns the inner + // (value, error) calls into a panic-on-error, aborting the invocation. futures := make([]*golem.Future[Money], 0, len(regions)) for _, region := range regions { - client, err := golem.ClientFor(Ledger, LedgerId{Region: region}) - if err != nil { - return nil, err - } - f, err := Record.CallAsync(client, RefundIn{Amount: Money{Amount: 1, Currency: "EUR"}}) - if err != nil { - return nil, err - } + client := golem.Must(golem.ClientFor(Ledger, LedgerId{Region: region})) + f := golem.Must(Record.CallAsync(client, RefundIn{Amount: Money{Amount: 1, Currency: "EUR"}})) futures = append(futures, f) } totals := make([]Money, 0, len(futures)) for _, f := range futures { - total, err := f.Get() - if err != nil { - return nil, fmt.Errorf("ledger fan-out failed: %w", err) - } - totals = append(totals, total) + totals = append(totals, golem.Must(f.Get())) } - return totals, nil + return totals }) - // The blocking form, for the single-call case. - golem.Implement(Orders, Get, golem.Bind0NoErr((*OrderState).snapshot)) + // A plain Go method bound via a method expression. + golem.Implement(Orders, Get, golem.Bind0((*OrderState).snapshot)) } func main() {} diff --git a/sdks/go/examples/orders/orders.wasm b/sdks/go/examples/orders/orders.wasm index c14df8ffa73a3d2f475631dd9ce912b37e8ab1e1..658bcbcb2d9225979cfd227280255a496cc01a08 100644 GIT binary patch delta 745645 zcmb5XXFyd)^EjL{=iGMgxsBchdl$R0M7YM@AZj$Rx2VxaMPo@~6f_EIq9E$p1$!4I zx^@A32YVMZDt3vz;eYm=y%+L4zxTuYg>z?TXY1_j?9A-4d}9(^Se^uFayi(zH(4oH zuEU5Xb!vXueq@&}^}ZX{azx+OF@1+eRU0$vn-*jG$Mhc2GOAUJ5yLtRZaJV%wYK4{ zhWD$|xl8|MKi6s2^Ounwhy2{STF*8^st*jWGveDZZDPLeU-SEct(uNbpHeQOG$cJp zKH7SPCGp{_FIHC&jbWlQ@nQPUZT5M=&Qr->_O1;t4<`@reF|1zAj7W9sXPC85?Z;C<5{|x;F zKD{H^3#~!P(}uaz)87t@5Fjptq>jT(-^N72-E@*V(-@R~FeVism^k&&_aYGg zYj#I+?45EXoh9wKV>1bh(vLoF86c#P$Qrs}TFoFV3ga!O56TN^Iu}5z3Uwq`i>bM$ z&=cHHLT#a25f17LZzLC)Z)0J)yNryl1xHc7XDy1CF{HK7q6l}ky-=>GeBW<`5k=7I zjzXuRoB`hn(eB!&b{EF!T~(LrC!`eR%Nr=nE-E8=ut4?h_75B(c#AHwg`ei5g+ikC`{62~1f1DG%&Ub-F8u1%!d|#MmHx0sxF)$We!mej zeoUvoZWNw+3P;J0nL>z=L8fM6a{g=bY^7gq_RY%_e1vTBmL)&u$@pc-Bq399kTF?; z4c>ALei2iS++&HcZ`4w-#krY+FZm%0b9Xv`hy;#E&=408;jo8&p-5(Ps1PdF6^+iL zT9z_L-@N`}HB0)!nR4*`7ptAIvGXPi3|zy(gOdf4)VyK|61vdCcg}E!L=wPBJ>AlYEPe;EICP?t|7Ky872qK;zg=%nfmnv{buaAPi?Pl?grzMhvk3xC4 za+rj+wFHsVABCp>or9MAB(!kXN)tW{4P`g1whVKRT)057v1MP+2&&V?s z#4k!h)W(uxR8uJ;(hIrE(`ttKNILIXH;grqfuTFSN)cFt9?Kr(3wAF6KzC|dSECe<3lZ!r5N+0+

      7x7SN>BBRc~l7qPpsi2B({fjCN6tfo|^9 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%0A5rA|>mO3Tx=8 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

      v9_XhIwEo*`XnL?}l!8qo3#d;dx0 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�t+tIr=YrbQ27A+E}X>YKFuuG-( zz#4k~n2k18S!xgS*kohYW0+bt+Zs@rKZ`$RuRU~&t-cb>aZJ`nWhOc%q`&9R#01(i zKR0`zW6b+DKgEg6lw4$OwFRrJ?6h%?evX2%xfu`AWLIosMaM9DeP9b<3E#y9czkGM zrN`_6VISE7l?Z2y>6e!GfMe=}Z8mlj0-Zj#g{X2Y$VkCxL#^$YTYVmyPmj@Q>5k8A;mV}cR31w{QKpLd@;Jtzm(Rupd!Dd0 zW{XasWt==4XZ85p#ulEiN4EXKZG)&W>=yICG-uL2t;`n2x>dx5IlpoTTZoLBTHu&K zJAtp+J3}_l?UR$?m{RVJk$^zgJ&h34f=2#i?jEuUoi}U3!scf)FY>4wesRZG zc!zu*j9<|iBRaPW@VsCPWPU%!1*TjyTLjiYVx3|OP!%OXc=jb*!>ZXB?y#!CoFv39 z!;$en#syifut&bMhX-9XhmF?Kzp?pW+8YM`?)Ir4Mvp;Rndy!{Sjm_6&`#IfeQcN` zKli%LM`^_t=ufkMX?)I0$-Tk+%Ix7C{&Jh1nku_GhM2$IzPhr7(Kp#6W%l4Mw`^fb zi;KZkLxsMEaY=$Ei{auaU-nL!Jt%CtuWM*?$y0-!;mb||KXj(AE2OS+G?-bw%=asM zSm)WkuCC!K#+8ti+&R96-YZr2ag8E#eOcO9_8`xveS_H1pW=dopYe5#KiO${A~w(Z z2D3}e+xUBTN8ftRmz8{F59u_|sF0eoTF}h*4Rr?smkDwbGcg8>SS|2nb-%U;g)THY z!&?aUM~<9DzAXN0d)PgTeO)ty9B~xD^TrbLkFSzQ{Ssd`|7&~j{V({2yOvJM4z7U@ zT1$Q1+fh|YlTS~KkKGHV6foZgE@|#_*fQThG&)BU-J4nFj2zT`>&QWg-97&gPyPxw delta 743913 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�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 Date: Fri, 24 Jul 2026 20:04:09 +0200 Subject: [PATCH 021/149] go sdk: net/http RoundTripper over wasi:http/client, auto-installed --- sdks/go/golem/http.go | 259 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 259 insertions(+) create mode 100644 sdks/go/golem/http.go diff --git a/sdks/go/golem/http.go b/sdks/go/golem/http.go new file mode 100644 index 0000000000..ebbd978852 --- /dev/null +++ b/sdks/go/golem/http.go @@ -0,0 +1,259 @@ +// Copyright 2024-2026 Golem Cloud +// +// Licensed under the Golem Source License v1.1 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://license.golem.cloud/LICENSE +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package golem + +import ( + "fmt" + "io" + "net/http" + "strings" + + httpclient "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_http_0_3_0_client" + httptypes "github.com/golemcloud/golem/sdks/go/golem/internal/wit/wasi_http_0_3_0_types" + witTypes "go.bytecodealliance.org/pkg/wit/types" +) + +// Outgoing HTTP. +// +// On this target Go's default transport is inert: wasip1 has no sockets, so +// net.Dial never connects. This RoundTripper routes net/http through +// wasi:http/client@0.3.0 instead, and the SDK installs it as +// http.DefaultTransport in init() — so http.Get, http.DefaultClient, and any +// library built on them work with no wiring from the user. +// +// Durability (idempotency keys, retries, trace propagation, accounting) is the +// host's responsibility; this transport only marshals request/response. +// +// Not supported: anything that bypasses the transport and opens a raw socket — +// net.Dial, most SQL drivers, custom gRPC transports. Those cannot work in a +// component; use the SDK's typed host wrappers instead. + +// Transport is an http.RoundTripper backed by wasi:http/client@0.3.0. +// The zero value is ready to use; the SDK installs one as http.DefaultTransport. +type Transport struct{} + +// RoundTrip implements http.RoundTripper. +func (Transport) RoundTrip(req *http.Request) (*http.Response, error) { + headers := httptypes.MakeFields() + for name, values := range req.Header { + for _, v := range values { + if r := headers.Append(name, []byte(v)); r.IsErr() { + return nil, fmt.Errorf("golem/http: invalid header %q: %v", name, headerErr(r.Err())) + } + } + } + // Host expects a Host header via the authority; don't duplicate it here. + headers.GetAndDelete("Host") + + contents := requestBody(req) + + // No request trailers. The future write blocks until the host consumes it, + // and only the blocking Send below drives the event loop — so resolve it + // from a goroutine, exactly like the request body stream. + trailersW, trailersR := httptypes.MakeFutureResultOptionFieldsErrorCode() + go trailersW.Write(witTypes.Ok[witTypes.Option[*httptypes.Fields], httptypes.ErrorCode]( + witTypes.None[*httptypes.Fields]())) + + request, _ := httptypes.RequestNew( + headers, + contents, + trailersR, + witTypes.None[*httptypes.RequestOptions](), + ) + + request.SetMethod(methodOf(req.Method)) + if req.URL != nil { + request.SetScheme(witTypes.Some(schemeOf(req.URL.Scheme))) + if req.URL.Host != "" { + request.SetAuthority(witTypes.Some(req.URL.Host)) + } + request.SetPathWithQuery(witTypes.Some(req.URL.RequestURI())) + } + + // Blocking from Go's view; a goroutine writing the request body yields to + // the component-model event loop while the host drains the stream. + res := httpclient.Send(request) + if res.IsErr() { + return nil, fmt.Errorf("golem/http: %s %s: %s", req.Method, req.URL, errorCodeString(res.Err())) + } + resp := res.Ok() + + header := http.Header{} + for _, kv := range resp.GetHeaders().CopyAll() { + header.Add(kv.F0, string(kv.F1)) + } + + status := int(resp.GetStatusCode()) + + // Consume the response body as a stream wrapped in an io.ReadCloser. The + // "handled ok" future is resolved from a goroutine for the same reason as + // the trailers future — its write blocks until the host consumes it, which + // happens while we read the body stream below. + doneW, doneR := httptypes.MakeFutureResultUnitErrorCode() + go doneW.Write(witTypes.Ok[witTypes.Unit, httptypes.ErrorCode](witTypes.Unit{})) + bodyStream, _ := httptypes.ResponseConsumeBody(resp, doneR) + + return &http.Response{ + StatusCode: status, + Status: fmt.Sprintf("%d %s", status, http.StatusText(status)), + Proto: "HTTP/1.1", + ProtoMajor: 1, + ProtoMinor: 1, + Header: header, + Body: &responseBody{stream: bodyStream}, + ContentLength: contentLength(header), + Request: req, + }, nil +} + +// requestBody turns req.Body into an optional stream the host reads from. A +// goroutine copies the body into the stream writer; it runs concurrently with +// the blocking Send because a goroutine blocked on WriteAll yields via +// wasiOnIdle. +func requestBody(req *http.Request) witTypes.Option[*witTypes.StreamReader[uint8]] { + if req.Body == nil || req.Body == http.NoBody { + return witTypes.None[*witTypes.StreamReader[uint8]]() + } + w, r := httptypes.MakeStreamU8() + go func() { + defer req.Body.Close() + defer w.Drop() + buf := make([]byte, 16*1024) + for { + n, err := req.Body.Read(buf) + if n > 0 { + w.WriteAll(buf[:n]) + } + if err != nil { + return + } + } + }() + return witTypes.Some(r) +} + +// responseBody adapts a wasi stream to io.ReadCloser. +type responseBody struct { + stream *witTypes.StreamReader[uint8] + buf []byte // leftover bytes from the last stream read +} + +func (b *responseBody) Read(p []byte) (int, error) { + if len(b.buf) == 0 { + chunk := make([]byte, len(p)) + n := b.stream.Read(chunk) + if n == 0 { + if b.stream.WriterDropped() { + return 0, io.EOF + } + return 0, nil + } + b.buf = chunk[:n] + } + n := copy(p, b.buf) + b.buf = b.buf[n:] + return n, nil +} + +func (b *responseBody) Close() error { + b.stream.Drop() + return nil +} + +func methodOf(m string) httptypes.Method { + switch strings.ToUpper(m) { + case "", "GET": + return httptypes.MakeMethodGet() + case "HEAD": + return httptypes.MakeMethodHead() + case "POST": + return httptypes.MakeMethodPost() + case "PUT": + return httptypes.MakeMethodPut() + case "DELETE": + return httptypes.MakeMethodDelete() + case "CONNECT": + return httptypes.MakeMethodConnect() + case "OPTIONS": + return httptypes.MakeMethodOptions() + case "TRACE": + return httptypes.MakeMethodTrace() + case "PATCH": + return httptypes.MakeMethodPatch() + default: + return httptypes.MakeMethodOther(m) + } +} + +func schemeOf(s string) httptypes.Scheme { + switch strings.ToLower(s) { + case "http": + return httptypes.MakeSchemeHttp() + case "https", "": + return httptypes.MakeSchemeHttps() + default: + return httptypes.MakeSchemeOther(s) + } +} + +func contentLength(h http.Header) int64 { + if cl := h.Get("Content-Length"); cl != "" { + var n int64 + if _, err := fmt.Sscan(cl, &n); err == nil { + return n + } + } + return -1 +} + +func headerErr(e httptypes.HeaderError) string { + switch e.Tag() { + case httptypes.HeaderErrorInvalidSyntax: + return "invalid syntax" + case httptypes.HeaderErrorForbidden: + return "forbidden" + case httptypes.HeaderErrorImmutable: + return "immutable" + default: + return fmt.Sprintf("header error (tag %d)", e.Tag()) + } +} + +// errorCodeString renders the wasi:http error-code enough for a Go error. +func errorCodeString(e httptypes.ErrorCode) string { + switch e.Tag() { + case httptypes.ErrorCodeDestinationNotFound: + return "destination not found" + case httptypes.ErrorCodeDestinationUnavailable: + return "destination unavailable" + case httptypes.ErrorCodeConnectionRefused: + return "connection refused" + case httptypes.ErrorCodeConnectionTerminated: + return "connection terminated" + case httptypes.ErrorCodeConnectionTimeout: + return "connection timeout" + case httptypes.ErrorCodeInternalError: + return "internal error" + default: + return fmt.Sprintf("http error (tag %d)", e.Tag()) + } +} + +func init() { + // Route net/http through wasi:http/client. The default transport can't dial + // on this target, so any code using http.DefaultClient depends on this. + http.DefaultClient.Transport = Transport{} + http.DefaultTransport = Transport{} +} From 02156199c02983be16e359a91bb41781765f01eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Fri, 24 Jul 2026 20:05:25 +0200 Subject: [PATCH 022/149] go sdk: add Must2 for (value, extra, error) client APIs --- sdks/go/golem/types.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sdks/go/golem/types.go b/sdks/go/golem/types.go index 3a80198569..a4fa658d36 100644 --- a/sdks/go/golem/types.go +++ b/sdks/go/golem/types.go @@ -268,3 +268,15 @@ func ResultOf[T any](v T, err error) Result[T, string] { } return Ok[T, string](v) } + +// Must2 is Must for the common (value, extra, error) shape — e.g. Go API +// clients that return (result, *http.Response, error). It returns the first two +// values, or panics if err is non-nil: +// +// repo, _ := golem.Must2(gh.Repositories.Get(ctx, "owner", "name")) +func Must2[A any, B any](a A, b B, err error) (A, B) { + if err != nil { + panic(err) + } + return a, b +} From 149f1fda264185239fb0093ebdb163fe1d899d74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Da=CC=81vid=20Istva=CC=81n=20Bi=CC=81r=C3=B3?= Date: Mon, 27 Jul 2026 11:06:42 +0200 Subject: [PATCH 023/149] go examples: stop tracking built .wasm; ignore build outputs --- sdks/go/examples/.gitignore | 3 +++ sdks/go/examples/counter/counter.wasm | Bin 3981740 -> 0 bytes sdks/go/examples/orders/orders.wasm | Bin 4477397 -> 0 bytes 3 files changed, 3 insertions(+) create mode 100644 sdks/go/examples/.gitignore delete mode 100644 sdks/go/examples/counter/counter.wasm delete mode 100644 sdks/go/examples/orders/orders.wasm diff --git a/sdks/go/examples/.gitignore b/sdks/go/examples/.gitignore new file mode 100644 index 0000000000..dcb46b116a --- /dev/null +++ b/sdks/go/examples/.gitignore @@ -0,0 +1,3 @@ +# Build outputs — components are built into place by componentize-go / golem build. +*.wasm +golem-temp/ diff --git a/sdks/go/examples/counter/counter.wasm b/sdks/go/examples/counter/counter.wasm deleted file mode 100644 index 5a872273b2850e1686b215c60be2fe3eedc4e075..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3981740 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\?W`L@SPLQ?RC2wZCk7u9fr--+;?P(-{k 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 <_C4coFvY)yG#s*U{2-4^3;GGLm~RUqct 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

      FErQ^h>&V>ux^GsV_#2jt<2{|z7X%00(}6&7pF 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 IW@9=DS;-ozl!qZ9G-@TQ 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Ï{Z!Xnm(xY8`y86$>;pgd`>VRZwh_kwRWDG| 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≥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%0DI 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

    RC7ocf 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%0AC+AD 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 z )h8VA6>v)9MP3IYh_kjRWfv3UeH!bHC} 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 z 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

  • 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%0AD`#@rDrp7>TMmlhg*xyOlp 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 Me^&FVzxnt70R#i$`v3p{ literal 0 HcmV?d00001 diff --git a/sdks/go/examples/counter/go.mod b/sdks/go/examples/counter/go.mod index ada2bb5581..ef96460ec3 100644 --- a/sdks/go/examples/counter/go.mod +++ b/sdks/go/examples/counter/go.mod @@ -2,7 +2,7 @@ module counter go 1.25.5 -require github.com/golemcloud/golem/sdks/go v0.0.0 +require github.com/golemcloud/golem/sdks/go/golem v0.0.0 require ( github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 // indirect @@ -12,6 +12,6 @@ require ( golang.org/x/sys v0.37.0 // indirect ) -replace github.com/golemcloud/golem/sdks/go => ../.. +replace github.com/golemcloud/golem/sdks/go/golem => ../../golem tool github.com/bytecodealliance/componentize-go diff --git a/sdks/go/examples/orders/go.mod b/sdks/go/examples/orders/go.mod index e28c071996..aa941b8cc0 100644 --- a/sdks/go/examples/orders/go.mod +++ b/sdks/go/examples/orders/go.mod @@ -2,7 +2,7 @@ module orders go 1.25.5 -require github.com/golemcloud/golem/sdks/go v0.0.0 +require github.com/golemcloud/golem/sdks/go/golem v0.0.0 require ( github.com/apparentlymart/go-userdirs v0.0.0-20200915174352-b0c018a67c13 // indirect @@ -12,6 +12,6 @@ require ( golang.org/x/sys v0.37.0 // indirect ) -replace github.com/golemcloud/golem/sdks/go => ../.. +replace github.com/golemcloud/golem/sdks/go/golem => ../../golem tool github.com/bytecodealliance/componentize-go diff --git a/sdks/go/examples/orders/orders.go b/sdks/go/examples/orders/orders.go index 0cd5f3cb4f..056fd339b8 100644 --- a/sdks/go/examples/orders/orders.go +++ b/sdks/go/examples/orders/orders.go @@ -7,7 +7,7 @@ import ( "fmt" "time" - golem "github.com/golemcloud/golem/sdks/go" + "github.com/golemcloud/golem/sdks/go/golem" ) // --- domain types ----------------------------------------------------------- diff --git a/sdks/go/examples/orders/orders.wasm b/sdks/go/examples/orders/orders.wasm new file mode 100644 index 0000000000000000000000000000000000000000..c14df8ffa73a3d2f475631dd9ce912b37e8ab1e1 GIT binary patch literal 4478627 zcmeFa2b>jEmOoy%@~e8GUW15XoY$ZuI@5}onQ=z??ar*Tvw@kN-C@^trG*Asn(nq= zqcDrmlEi>w#*BfW0%Ar*1w}$v8Iw)PRt z4J~aWn#UWOF2)$5Q#XeXT-S9rmmLuw#p`ZiB7{E3;48@ zN=@Uf((tC%=D(QZ+FH6wrj|W&9KGpM12MF12xwhRqe|xC?IR`tX1!3dy3uV#haoy9 ziw;+`2+^X6BkR4x+uK_e1Se~5X^^^}q@_xG?XPYo;%1+{)y-dUv;V&8X1wN(3#%NX zrN%{7{u?(@l?k|ssvNDQMn-Rr!cFvMoaPN5-4x=pOG}r!I$PRCsjf;|x)UJo9HH*F z(=ufwBy7!VZW}jNy`G@?BU=Fxb-TUhca7_4ZH_8?tt};mda<1rjBFX-JfflO8PgpT zq1Zu7w|B&70^wmSF{KGl^I}R887-Zp6A@@$M^o2m)pZHL=nO$#(y}3asMmFPQbrS^ zx7Mp1-^^d4kLD+kEcyam%!#U<9ksdyr#6gkY8%noEPkY!TD~-Vbo1CIS&rK>w4Fr9 zk3mCz%)h0A+1cLS1zIXE-__X+Qm#kg)aaH`qZ47BMrOMGODe4gdnnMQ`bjp-bl!VF0L<*#sD+GVsmH9@P@=9vvSpI!XW~fH8w>H!GPZq0Q>&)s zF@~?t}eV?_IK-)U-X zfq*LwbeqRFjRl>R26`i!J3z4D{t-S`+6$l@+uYRzgf~H+9o5|0-hr0(#?;KVrm@YE zc^llY%s!B(^n66a$d=|-3=k7Cw0*^xhNwm;Pxnt&%7<)0B3IQqfFx9NYx7vh(FVJ< zxouR}Xb7iVg6vBj&BG1t=OjrWejB9tZGZqH@he~c5-;`kG5Z^ky8A;FC?1e6ehM-fNR$l*a#8|^>Y3mr*Ww(#(qCcpQD~L|!#1SpP3{i`r{RTzNku9ywDfzG+ zYNn|Tut{;rF;HWM_IEU^sM6h|+>)aV(=sTnj5iaaQ6Oakh6fMPDJ z$-LNHIw%u97~Nj#q8b4SiSk+fUX1BO138@V%Bmm;Yn8^0Bvh6L5|ccj5tlqboD>NT z+4Vo6Yfn-WQ=HS<($(DA)Cx58l8;BUl!kY@*C0t8P;vy}ZXhx^4CGn6JK4?0;1hPW`DBQC48#>1kFZ~gdinUimrmV~(AV9@5 zV2HF7d53p4wGAI_XnztNk7>}Vu6)p3dK`UtvW%SZpD|-lLR)iZgG;n!0V|H?`&Hoa#Ozf3C4s3u%LI zpCsT&mC5%{YvnlShtHzW$Z@10WUu=(K%1KsjP?h;1xlY%d8jPdUs@BWj!m(b%BZ)j zBpJzuHeA4-bGRyL&1MKby=BB}8fyff+kgztCA)x5HMCKp;}uPGYykBe9#^OKN^fW; zUYFh^HPzmQnrT&YRA*BM7-kHy17E+bNeSPNtYD0MM1v|R&2DWhc!E{=&S+$K``C{5 zHqsq5$aXYR_GqK#!k*^0m`!wTXh$X*@tTGYhd!50l)N2;)@Kw{>DXVurfc4lhEN*3 z_Z|cH7-(tEPel=iDp}#7hJ)CT)B(CEwKa8=M#DVOgtwj0ddrrYI$HK5`8jy6J@!L8 z!s#W7x;UDQa77pfNMJ{yZF_W6spS{LTib_^DXFdp?y(Q5==L}VWokmC5|%YgjG78w zPxhVwj+TIkvoSA<|EU|gfWcL}cX6bZX=wv?T1GUmYJ)({h7TYjN4Jk485}+#fZ{#~ z??VJpnc?F~UF~BVpvBueg#Zcr@-06gmkqWJ2$&eplvDzXx38oUSrX!ZWQ(%Q;j_`e z;nP(Rn;Vm6at(aHSxUP1L{Rrq@(3@1PDR^|5aV5y-(zuR})|TcG;N!A_ zu&&Xx)Gbm(8=6l&TD7da485^yn_BSGOlfM_vZ1ssi9Q?Ym;k^?7+vJFb<~L?1uXbZ z=mluYlITU_VH7ByF|^+7Vamq)_+UgRQFa(gen%&mr>kLfOIuf;vRd05Fk>{$9sw(^i*yW7&;~%_N($E!%+#*Vrr~&J0dvDg zqp(CYP>xxR?&|7jkaS{b+ljHdCp#y!X5{5jm>mojk~b4dUCrc5!AC!wbo36SBEwr& zk>KmXsCDPIg z7h@N^j*Ksi5_Hj4A`XBsD>W#Dkmu4-5FPzQ$IfERPeiAkM8fvIoE=+kyZQ0ROS^l~ zXi7gV>-cA7?GHc{g|XV)Hlm{)^c9Z})``wu5{RG#;KKFG0-zab4M$|VCozjtCLi~L zo94E)Hw*FUp}~^cLyXy9bUKnN%NQq9Hnjsb!$;+_8kmYY8bo+w#T3&0 z&qc>C;IpNO=p`v6`|P8{f$L+0AxHLgWaZK?F$dWiJUf8Axs9fNAUMe(^#V3YHFv*`&-Q2f)Z_NRZ&1RDyJ=5YY4^lZ(*eI zh8hSFStysXY9pG5w?f=X2kl_d0oQURjGcR7?D##Pu9Q>Od*pj=9+&9|hb_&e`!o|F zf#!p}7_j%3&-E_IQdW6u0EL9$G_-#dVxwNgE-jvd@s3z%+k~<0^9=jJz->y zZEsUHplAQigdtWd_7p~#jB=~R=+QuN&a_0a9`J$HH@2a(V>rdFdn>D+m|{#bdD>tc zLl96XD3LUV8)VE&r+4Wnz-7{HrqXt@=_wI(&(@L)VHx43lxrE$4C5NHg5eVy5O@KC zd&P`O3Y!B)hUQVs7B#~szAa~f5$)7en$R{p!QTx>w?JEkB@HbD<1q_Eq^o^6qP^1Y zgF6oq28x8HPPM^V7)jAK+-w7tjPam3(rQg{`8xGNl9Fu2A+!RdvQb0Ji7}SwNKtTk zu&IbHA#4+J)$l^8*D@ln#I)qGI;|Hp+aZavhlZFFy~Sv>Y?!6y){)!zQZh?HF5^9h z2H@{{hz4QUyGt6+VxUNbYRAs2Aa*G zUy2;IbhfvVNhH`($2&L;8G6^$ISQfEwyu&ey@JqoP;O4ko{36>2kx==9((O=1ow6MZzX$`WZKCBkn zY24`^u&aiTkv5pfl3#p;Miq7LFU_$yLV8Yv_p(FnCfI-zc~je?_WQ%h7bZJ^3o?t0 zY#mn`E%NaI(fZC?s4eT%#dQFSAJ?uE1EUu+LWp>YfKrJ2K6V}$N|j;387PYEb8cIS z9uPC6BsfBcSR#%nb&Y6g6Nb0F(6)()nIDE7^tJ1#gUEo2sO zqLG!q4J-f1*_JEkqStansJ*k$eq3E!z7DJJWcLCTGZkHv5Mzz_W0);b!*Wy-j$?Gf z76m;Blu;3hHnWF;m*KBq_eRgz%5gh`Ro77bmG2aIqrQ7p_Kmqg9MzsTI>+m9-u<@F zd;jmyJ0W^Ay(cifvz@`*6Y_AT5XB5dyd1>lyWmvNRLcWkY{u+TCc#X?0R+0y)_$~r zEMuW`^yua`Ec=r!6pAg-6E`YY*iivUKcFry5XRX=%G*_F{S?)3m<_fa?2k4q>v7yI z1mI7c14Pk;VG}N(ADvtx$2v@60X@`%JWk!~C$t|WdpH`aA?1zlY99bAG8HP0aw$^9 z^oG_e>daZ{i6Xnl@Up}Dni#u_4Rg7#1! zX@WZfZ%DRUyqsV`x0brHwBCdiiuMM$Iis4lX=!b39tC!#6|RO7f(|eSn|&-l44 z_iRGKlI@z1qvy2F0GEe!K0*i-+H3E`;B9o#)ioiDKc#WQDWJk5prTj=KAM|^ejeL` zh{_1Fqot!c_U54iWc0Jt+&l)-1eqHQM*?$tcxQVFz~JWK(*RiQo$zTX#12)^CmN=l zDb#{A6i_rq7>tuP+ay$4tOc(*D4<*m7-jj(UxfO*`_x_BWYW^edNeeb61LN`+lK85>Ids z!g|9|Elr9tVBNQ5(8La+MiV=lTK^hNNZcpd_)%yEZL6V5WI82!ZR(&vQnKHj(5XY6 zhQ0_i=Z-ZxBaOv0BnqgJOV)tGi;TcTU##PR6VVS9`XnnrM{Qf93j(LuS$Rl<1ugpT zqWuJ(8I!9F5XXEbcJ=Cowj;~qxInbH!Y;?pYz$QEonSfVKzKPsLs+UxJXQ+2UDx6L z02r{$fohsT$jFG=2rJgmi5?LI@$lvIJ>{QJPwgqbynB|eA%Y+@{5lcn_{HJlT3Sc6jM!B8yY>QK7k>A*zbN$E zXY`=M_x}0shyHx*_8ZV_W!pd_HXIu z6*h^}#WuslWHEV|hX2H5ZJ0ip?u^Nk=#M!WKfdKZc&80Z(X+{uCr!e&7hO{+N8aH% z*VE7nRZxZKCEiTJPfQwS$UlOvHTn-d^9wOiOw!-*cV?^iurM}w7%*^DOY_lt`4mJM zao7aPUeQDkg%A^JAAT6QoSNQ45f@6bbQmzE89kK9atV?zTPVk-$6+KuxIMFn_I%|p zZ?@BXSZK@rx+6y%#^OP0gu*^#l)%jDYG`Xd`cQb%{Hj;^D+2YQno;xJh|czo zL&GL>alIq326HIF6x?2p;#X{>kf<3L^%Fm*5#YHRTJ{iF(OpfYF%7Eu9#+SZ@>d35zsCZ@YY1@k85Q-c&?Xg1tiVC%2W<6FekBVuonnUHFYR3b$ zR1d|!Z3s~FdT5~G5E(P11h39RL-kl|W)uz7j9m_C9#1yzp>Zlgsp%-tnOZTCISKhg z7{y4K9@p7+C>7BB8Z{|Ldb2gDfR_GoMV}l-A4R69jG}K_)*Dt?yIPPw@Rw#Sv!$B7 zDr!=UT+0}<>rSpC?e{%@SzF6tVe)&n@_*I;4+8%Of&YWR|1t;!TRWb-`qk+g3D>&1 zUcGy7Z5#hr{{KG^u>Mz1Mc9@N)oo+#QU6~((EpjinON=CPTt!xgtn)>n>$%FYW^fq z+|2*Dh;y-(^AAf{WYhgULW8qq!~Ddj-YV4$|ImCYe`!i?7!tcYSvs5 zAe9fJL;MqaS%z!VbG8il>so3xmJJ)b3;xMN5IOIPM z{jbA@H61=2;21T!<%lt@W82z0j_fRTjXUb-@e}^?-xH6SG`U+GE2fC4Vw#vPW{Bg& zOmVz8L7XT~60^j~;uJAkoGMO3?CT71rZ`KSE#`=G#JS=;alW`fTqrIQbH&Bt5^<@x zOw1GW#R9QVTrRE+SxK3OzZV)$$W#T4rv$#bp7q^Pr#O-2* zSSjuhcZyZwE^)WGN30h2iu=UboMuy{l~DjpM$izmdB;wka8ct$)c zo)gcD7sPt;qIgNXEM5_>ir2*JVuN@?yeZxiZ;N-tyW%~uQM@lc5Fd(<#K+QnTo`ZRsIK0`lFpQ#_OpP-+ppQO*yPu5S-XX~fxr|GBb zXXt0@XX$6_bM$lcbM^D|^Ysh#3-ycix%$QWCHkfMW%@jQzP>eye_)e!IRxU#Z`r->I+C@6zwq@6lK5 z_v-iQ_v>r)2lNN^wfZ{!A^lDl<~CjjPb1TobkNzg0bFs(Rj&t*?7fx)p*T# z-PmBfVZ3R)WxQ>?W4vp;XKXayH$E^vG(IvuHa;;vH9j*wH@+~wG`=#vHoh@78Qtcw z<`i?PInA7I&M=QNXPU>GCzvOiCz-R%lg(4i+2*O{Y3AwX8RnVhS?1a19P=FWT=P8h zeDebHLh~YXu6eO}iFv7cnK{p#Z!RzwnwOhbm{*#M%*Eys^D1+xd9`_sd98V!dA)gq zd84_^yve-Tyv1B@-fG@v-fpfiSDJU2cbcoryUe@Id(745z2<%9{pK3;0rNp~t+~#8 z$b8s*#C+6z%zWH@!hF(v%6!^<#(dU%&V1f{!CY^?Xuf2=Y`$W?YQAQ^Zf-E&FyA!a zGT%1eG2b=cGdG&=n;)1Tnje`To1d7UnxC1Un_rk;nqQe;o8Oq5%x>#gYl=11nr2P6 zW?08rGp*yT6RZ=hldM_R$<`^>Z0l6(H0yNh4C_qmEbDA*j&+W8u63SuzIB0hp>>fp z*Sgrc#JbeF%$jG-w-#6nt;?+|tShZW)?#akb(OW$y4t$Ny4JeRy573My3tx@-DKTt z-C`}bZnbW+ZnsugE3G@MJFQjLUDn;!J=SXLUh6*Vert{Ofc2oY)>>yhWIb#>Vm)d- zW<72_VLfR*Wj$>@V?ApDUBSZ`WyS#MkKSnpcz zSsShQtq-gZt&gmatxv2^to%SmGF8gl#9(%QYuYI3=zrDtOz<$tPYp=5(vLCh|u^+V`vmdvgu%EP_ zvY)n}v7fb{v!AzLu-Dr!+ArBJ+ppNK+OOHK+Z*gR>^JSV?6>WA?04<=?2Y#O_6PQd z_DA-|_9ynI_Gk9z_80b-_E+}T_BZw>yW2U|nc_@!ra9A{8P0LeOy_v#1m{HOBxja$ zvU7?v+d0)a%{kpU!#UGA%Q@SbzwDD?_A(q=v?H?buM-;aV~W(bLKhoodwQ9 z=W^!?=SpXhv)EbUT;(ivu6C|*u63?+u6J&5ZgiG8H#s*uw>Zn4Tb)z+y@2+tla36Hny6fDB+=tyq+(+HV+{fJ~+$Y_q+^5}V+-KeA+~?gF-1Y8@ z?n~~=?kn!A?rZMr?gsY__f7XL_igtb_g(irccc5h`+@tR`;q&x`-%Ih``-S_Z z`<45(`;EKF?M@w=nv$BDnwFZLnvps#H8XX5>V(vZsgqK(QYWWQNzG23nmR3Ydg_eS znW?iVnjTsf$u`Qx~T$NnM({EHy7RKeZsWFm-wAiqw^W0*fsb#5~Qa7h=Ni9#^nz}7@dul~$W$KR9ovBr+yHaVedQskNzfsfSVzryfZ?ntCktcKIUG81sUFj|I z7JEy)tGuP&)!sGUwcd5!_1+EMjovcvChunN7H_$Ct9P4sySKty>D}So>80V|5E=lf1W?zU*IqFFZZwTuk;uBi~S}3RsK@{ zYX2JlTK_u#djAIhMt_-qlYg^+i@)5z)xXWZ-CyCa^zZQR^jG`sDN}>DlR1)2F3RPoI%KGksS2?DU-U zIq7rL=cUh2Uy!~qeNlRD`r`B@=}Xg>rRSyRrx&CbrY}!lk-jp$D7`qnBz;wSY5MB) zHR)^9*QKvd-;lmBy)1oG`sVa4>E-EL)3>E>Pp?R?Oy7~dGrcN(SNiVsJ?Yiyd(-!& z?@zBuKahSfy*9lr{ZRVh^dsp<(~qSePd|}GU({XVcH6pHIJ#UY~w3{Zjhn z^egFC)32ppPj5)Sk$yA%R{HJqJLz}R@1-}U-%o##{xJPf`s4H`=}*(2r9V%9k^VCM zRr>4nH|b63?#!{7DVeF6X_@Jn8JXiUGc(6$PRN{?IVm$Mb8_aC%(Sc4kiIoXokI^D^gWF34P%xhOL?b8+U9%%z#jGV?O?GYc{cGnZ$s$XuCOlv$iv zlDR6gG;?+4n#{GC>oV78Zphr2S(dpeb93gF%<{~wncFhAXI5lZX70$`nOT*&D|2_| zp3LgZy_x$m_h;5*9>_eHS({mxc_{O6=8?>!na47ZXP(GBnRzPnbmp1Nvzg~I&u3o9 ztk1ldc`5U9=9SE=nb$I}XEtQs$h?_(EAw{doy@zL_c9wZ?`J;9e3p zGM{I@$b6akD)V*bo6M$6clOxql}lE4vu9+_%$}7!J3A+PPWIgFdD-)`7i2HYUX-1iy*PVG_R{QS*?HOd*#+5!*~_z6 zWUtIF$}Y|>$zGLRn!P%EP4?RCb=m8)H)L}}cGvn#SIvv*|g z%&yAbmAyNAPj+?o-t2wZ`?G7Z4`d(AuFbB?K9qep`$+cD>|@!-vrlB7%s!QUI{Qra z+3a)K=d&+l*JoeMzLb4A`%3oJ>}%QAvm3H+WZ%rbm3=$=PWIjGd)bZI_p={lKg@oV z{W$wc_S5WV+0V0IWWUUQmHj&VO?FeZJ9lhuN^WXyT5fu7M(()W%-r$06LKf!PRh;7 zot!%*H#>J~?zG(LxifNS=FZBUotu+8CwFe{yxjS@3vw6cF3Qc#U7WilcWLgj+`QcU z+=AS~+~v6|a#!XS}-8*(@1mgR2B-JH86w>)=i?zY_R zxfQvUxjS-q=2qqI%H5s2C$~CxZ|=U_{kb){2XYVQ*5=mb9?CtOdnEU0?y=nCxhHZ@ z=AOzuoqHztZ0@<-^SKvt>vJ#WUdp|kdnNa3?zPJ3a$n}Y%6*;tCbucq9UL1>38n_qg6YAG;J9FBaC~q= zaAI&$Fe^AYI3<`JoEn@KoF1GJoEe-IoE^*w&I!&9&I`^DE(k6RE(+!b7YCOFmj;&w z^Md)of?#2Ad2mH=Ww0n%94ra03YG>}2iFAG2G<4G2R8&a2Frq*f}4X|g5|-j!EM3q z!HQsIa7S=wuqwDKxI4HfSRLFO+!x#*tO*_n9t_q7>w<@Zhl59gM}xGf13X+|9Sq4{FnK!@?Yn_$#2Sc*Bx6orEY57w7ThaGwP13n^|{! z-3fIk)}2&03#+ZC)XlCtweGaK)9cQtJG1Vry0h!%)SXjzZryox=ht0OcVXQ{b#v=3 zuDhh}(z?s)=GD!wTTr*K?((`T>aMI?RJXWpN!?X-OY5$#^FI4@u{gQT)DWEdk^)F#g3H+-TNoX~*{q#*oEBeuH}p_crcL)X?g6{)?J4mjdRZ z^F$UG2jJR}lL~lJWwR@w`Jy>vVn3Z*F$(n8MQf@RSyQ$mTWqY=3Ie{WJ9pv&bsf)t zMm+!77SG@CeF4Ze3jddYtx&Kn!v`9Y^TJ5_M)N5{%*X^Lxh~S?7@L^Fka83p+dVr( z!7Mohy$tIM_R_X3{&?zvS|#!^#H9%JM`Mif56pY$kAJ|wFPMBP`kmH&Mn%6C`o;KE zhZ6AuNXY+zkeUKgO&~QvkO0GAiNBaA)%yt25w%L7-fL}!Vw2RnxogbtSJC{0t`mt{ zw(U5sn@V|}=lkhQCY#OXazT*KW7Q7JcH7|Br_Z+d_3gXe_C0}QP6bGIj6l-6D5mz) zBcL#ydjQD}zF!25H|~k+?V{3zv8ZgZ_fP`hj$FbAKBGa=8C3!v#x~qU zJ??X16C0x%8P!JAXquYXma7avm2_AoD&SFp?V^DLD{^Y_C`i`OWCvoPC_H3wKZD_V zAlf5&qA%D-*!6~hU?BkRkH-)z0Jp&)|0V8CDz%^P)|&#-$mE6;g@$5=STqzCBz~00 z>4{{Srz4?(3O$kXH6(mP0TDAFvwJoqPfZAtz?f(c^7s6Z;*|U)QQcTz`O9oOpn`3u zcSkjpxS$%l83U@=wl{-54Io((^aF@r>vc4{7$6VjaATo{?3Gql@P>ZC0N}tx|jzjG~xWZ$M`iok{f;X)-*R2q0?x?BXVEYP};04zsWW6;iPN zOcYp$MpJ0jDOfY;VR41_ryWq+E_P3r{B9R4qC&G^^XP0;a8bc53dTl&dr8@QX?pPm z?GKB=<;3_FOObHA1-)v#38j5T_uPyWVhtpF@R4KVLm0cION0yWFfTn%VL zSk#1eHXMD#Jm9=)=J{@rC&5PeB*^!3zBTN9R56M=Ff9b(81ezQ(8y@n7A-<1p(*{C zg83&rA%RTTtsy_mYBd)d5odK@7UJVmml=aloIu!|sshZBaSP|g1*$OmC}~XhTd+*b zJmD3vyN41)B!*&E0)p`)RY}@1oyq1%PeM&@)01Lc7|u`$ooyvy5Wf_4r5J~Rm;q%b zd{T{lY7j~m&wGa;{%a7*Ptif$))5Mc$UKeJAl4<_0urgWm_on+;9W2@{u24vxP`!Q zKuk91N(u~@1x88~QY4}gbF2k)4DnOi} zadeg-T1yh`Pw*OSAc@u@q9yfBR9=H+Xho zvzxI@{27>CqXD(Q1hS*&tNHmo^!yhR<&SESh+SL^Z`eh;FZm|CA>B{S_tPbrvr#{Y zi3gQI{V)nh^GK2}SZtORo#RMBGL7p63-(B(j}aVz5$GV}X)IDbqD9iV`}>V|(E#@& z#_|3{TJsKhU)2o{W;G24)Ln10cHM_dVY~%99E?r;XBV7kFkn747>5Sa8@=tF7>tc> z@tCygUVh^W>U;sJP_yf`2jsFvKJGgZYFlGzPa&f&&JXJOlhcpSG zOCD?o7?#Tv+yk}43hn}$=?-XoPYeZCz{G+xk$5;&5PNCsaM<0ndXHUz2J}r&>b-(q zpQ3?y2WtO?KdA$ZnE*+#dp1S}XK!&4jwU_jYYGC$>zG9^=#J=Vsr24|#*P11(Iu<^ z)iVVK3D=prL?3%;4~Ydk;FUC}$$7(@(6U=AkD0W;wG^sZn5 zC_JB~z%7q_SG4yN9(m|S5HisEQVN%Z(l#^;LJN6*)xdX24ty`|Fhny5F#DqU{&KiD zhK$C{vp4{c`z2>FTO0$YljlLu=aEzS4h-L-i}3`1C?$}b3HXD8CCyqqi-Bmbo@W7) z8Ya;&8h@Y}<^W1W#~^mTPhtl|pO_>#0xx5#yQ*rE1)k(=At6dwqM?nJAe|%RNQc$K zQNbvAqWfWBJ7Hjqg7L=`k5SlIjWGdJz(`1I1v{K7y+bI8iEKAx1xC$tBvAf{=P31^ zWE=FqB8jO=61%o)64KSD!DBXyi%$yRTe*r0MNJne$)=T*a6{bwS<*(|j>ky2Q?OM8 zHB$~VhVQbfsvH%F!e%|yySb_!#|k1N3-uyvJS5oVaUB)^;^+a%#*iS2UIqSduc`y% z2}HEHIxDN{aEKu(7OMJLRaJ)!qcTxaRp;)iI&2%2!QiyDc{Mx8)Zz~6nxX_rq9Mn> zTZUXY##lUSb)bsEcP@rOgb zO4yNAamQl!DG6vR%7`iG{oxK zf~h@5)0qNj3PWs!6re=r;0wPJpl*)Qk3i28k>F)phZqYU$fV^qOqQ3#{QgnJd|bAiXf^*S5(MnznS`8=^yA;WTi zEjTZ)m;=$)|28EOOg9QBxlp11zylAE(y;v%fAwU)DsEl(YwioOdZZJ3yTMTHAK_fO9eCu5XAXlk7 zA%m)-BWprdRMC+(ly00Uqa%dZ(8GXBVKf>b|5kVua5gwj5o$H^p~fJZhmeBVct3gn zEq-w_2k;O>BQ;6Ui_u^lgX4TQ3R;a6mmJA4KK4&Oqk1Drl}i8C;HRI^(`Kqko)~;$ zn;c(wDz@?{VeObjlcLKyN)AU!og<_#YkySF4p+}aabxtXNj=kxA4kuIsb@xUkFe@t za#BX)S{lZoG%0db$eE)!1`NWX z!T`iUwSvbm;Z{;n)MOaoWBg%pzZ84HKSp~))kL-8dr~IshKGMv4@L1^GLSfq@Na%2 zz4})MF-rh>8^SnI{ZCpsPv~XQ+$z2HtEwvf7M0?;FOA>dBj^4b zyhoHoh9HI_$ViO&H#9`FjnE5upo5c5ToX5;U{0lrUw)N@LVd+#u8k`xm=~!F^xRPn zg)m(rg!y$<6&tCy%|qe(s!D@VDTcxg@p}b@gYdoz3crfzR6__>kIB+#q-YvK(>l_1 zV1*dO+hj;0+lS=mYNAvGrVBcvSx6CLULJ&J6qF`6CqMv)-fY*;;&&Vn{yAQn6^q%o z#v@gh_|H*@xNiaa;cA0WjboBSCC<8mIkF!p#zY>UsQ^5xhj6Ia7htz z3cO15a45tJfqt)Q;NBfqRlwbwfLpL&!Eqf##Yw%^h;5l9|K*YwW86Uxdk}JIiGXC| z&qyj$Mo@#_crTFy0?({8ppl?-xDqX8QFIvuBrE-jD)q(F-TlS~s1l;OaV4EAJxk9A zBtsxr>mHS-WMNvElIvRRlw-^xRPR)oluD<%O#^=Y^C^rp{nAK zsJG1vzV%g=C}B!WL2dcF<<3y;@aG#%^VZ zPeP+IRQ!5X9mH)zEE92K;fD}d$ttADu+kltL<&^IDen?7P*k>>Q!0tbK_!RQ%QjFQ zN(5uE8b*I9!pYhl} ztg6Fn+EE~@RzDxdbxxBe1IJ3qs*Ye#+0UnO9W^#~Q{fNO{#$i4?fcK@mCbep#1sT#9#dnqyFWVesBO#VmTzA(O8u68i;!_4-6o(_b6;VBorU#$!(hN*!YJ>eM zc?tVOCdLNw8<-sfDy0EQVO4LtU6x)Sp@)S zRfqU4q|(Z;B**0>d+w+AX4K2*VU;*j237gEX>)@d?pDd6uPR0G%SAsUD_fD$O z3lXH^K&b*lqc7qj2KQFYW_FE!68g0#n%k;A&iHP9{AKGPHm61}5s&Yy2P#7YDp!vg zT3uJN)K+$Veh*y(dc;l1t`%d^qD5`&ZDrSUf55Jf-a3F^)Vr9Km#^Umd;gK2$EruV!SX|L#^C4wd z%B-y#{i>~Qewj!}hpj;4>WZF1G=gie7@^jMiETDxgYEmhY_RV}ertLd_g|0vzME;g zu7`2{)lJ*)2G&P=817#WtXstwPgV>s=IT(ee=oLsw#Vjw5UyUo)y;2}9rsF&=6`5g zal_{OfYhkzh;P+A-rjs4AVpRpm6+a2%WPwfUPwV;3T!6)746ZFdgwZ2vP9QgG?I3W z#6Igcz&6xDPdPsnGeOuT&9~_{}XnRsi*+oS5~ji$wR1MK8@Z~ z={r1X5pK6vdQq9w#llRvLKEssM9pcC^c*`k3;HBnQA)$4iAWy6B{mIAnn=4FCLwh} zs@sWpu1G*lj+#^!Ydp^=1e|a$4-{wz0e1QiJ4ele20sSD?*+jIZBakkTSIS-si*Cr z#mPk^cOao-2W&^#A*cEODD=q%-JEP7Lh&xWk8kNI2F(i+7P^i~_L#E}J){y)aTNfT&oKSgjdVj)wn2o#(_RR~^Zzn_vh5@9CI|BY5a zFIdPciky#u=om6xVj_t176knt2`fcJa0(i&BH|hSLCmWtj;YtvnvXA+5A3P$;7#uK zK&?>T?Oru1^cS?|7uCSHll=6JAZUqtlOsBMqxN@zm)2+;iK`>c!5F&MKm-15MpwWJ zi(o-CESI5_TqA=BPrU#fWfilZK@ivL1qi0`*eTQ8)~FZb_wo%jKLCQtEcMeHyHRHR zk@8Oooo)L1%cGAt5-XY*k14S>5j4_h{5~VnSQP-Vad*_CpoLHB9nZrt8#Lw!;lQ(y zBcufq47DJLSbmd`JIq3GCL1(HE>5C(hrtX^1MA5&!()I-yv~#Fl=fg{Ap|?19X;$g6IBplUI!EshtYoMluSG#BbLKQfB}Nk^hIM9i zM|IAXx%mB22aCZK!NlX@aw?dp%5n6PV!~9bTNK@)poqO8X4OU^JThh!oo=}us#}m) zru?sZPy-wUXJS92=t1Z~uJC+wcvnE2ni7*}Kl@I8QD9qYfwDX%95aJ*$_(s$m_{cm zn6ad%?b5W(Mm9p*v3I1qqKB3E#vkE!dnBY4jBZ+mq=(=Qv_gZSO-S3LtVJ0Gn8Wyr znO|5nb9s)&c(C^n>@72=)!RsKi-)o^8l;0WOr8&IiKRtW6r3az`Z!N)8yb$;U9g}} zcvC)JB3qF1O6aJL-l&1GVD}Sm{ia89=L_%$kw>z7P{H_%)Ec89q#=?BN;+hiVEpm3 zdeF)Gha{aO*CeG`SGjJuB%Z0-uUE(PgJ>4h5Bf#-!x%NRtqG@efV$?;P9&ljNsSvd z)+a<`kz)COQ_KigZIR(XG9LN}NoK?bd^Ly@Iw(1XS8fTU13??c3<4@m^k6CvU?Yj4 zI|TGzT7fh&Jxr$Cpfu!K5~@<&nrhuAgK*!X-iV08-}Pl7PxK2ZaWF2-aI;uvQ(D z^gsX=;s4+&0?J{i#y=r=k&e!#kV=BK;NXZKwL`m(f4%7N0zTrW5B=zzAN=~#SwC{) zHui4suw%G;8+@g*kb~+h)8iV7)80@{X&#I}NI@Bm(k4nLxCYtA4oMwK zFhc_=bWE~7jqF_-yNim*?iye4n6D}AOzsjz(n&Yu3#EHO5ERnL$StI}ib`J|TF&1r zh9rN3)zK{34iZ-#lFt)hptpmeZ}4ZdO!^v6BjJ3#6#X5B@p29rwuYq^&bnA zf>DN3gZQWvqez;AH#C#z9wMvM<1uz5?1A~=;4WM3!?TFiEi!XtqU0~|nzFUvpHjDc zG6^mMP#rUtoq$)p3ns#W3Ls2*$_O2jBGa}o+d&{CY#soY+sp{Uc$V9B1Ky^h|K8S|aMy^?Cv#!TL@2N- z_rL_axhqN^fySz3CvH~FKN4d^sdpW3aC(ebt z$$>esrJcF@VEGS5LP1kMG7{8DVd^A6oCQc{8vz(S_=wk4XnL}@8wat`!xre^3jIC3 zJF1}s9o2xuXTE`7K+%v!+SS6$MKAW!`YAa^LXeIE62+S~yO-dEL?_Z=?zx>N~?2O*S`MHCGH~ zE~uxVgO=Acc8O_5b$_l6}mkJ@mG$OIqL{K2U8Y zd)2bN04*3Zl&?f8JTz@6uahROoCLL_QBESJ)bnEq94mOJwAGW3!b8xCSS#`dFjY>c zB0~Zo!D$d0x{&VN;^KO`3G+}l(2Y8-ZBQ+a;~A-ueY=5P7!ULV2~)ZA9p?`GH3uqZ z83_oQWpqQc43~Xt%u*(6Eg;t2aM{>ePebTXq9S5_GiT4mrs7G{ zu|7L_I%pR0zE9tK;r30FCQe20K!9$G6cXfOlktd;Dw1qd;H@^ygN1^Dcd%}i{Gbqp z)FB}I0@HiN)Xu0H9vxL61p@YoC|XxEO^^4}M`OQVKTE~6aa0hji@y|&nPkC|P0$xi zZ%@KGLzpA-~H@p5TTMVTL| z3wFD~nZ#1em?WaWt1-XNQ*Bg>s7T;|o!Is!$3;2cBt7BxV^9dxOV|zLU_T2A0v=g# zfCz_8B@A7ND*SR&0YMXBLJ4{=<5OhEkxG=Z76`?lS%RST0ZJ}NA);<@=4zCCQG?gQ z`W3vHtgIGTYE+htx;6(!{Whm?>Vr4`53JlmEFAraN_uAI@WeqrTM_|Y{^6Y7_{ZCj z=_{N3QxV_o=!dXx&oW?ng$$rgD9K=NWyo<#cT__O0jhzJQ!E5xlvGQB8kH4xsgaq2 zPbX6z$pCWXzmrtx1;UYs5)CA&V6s#gSTG?KsG9*4sSSn0{wPbnqaeWr1Ct!i3h8iG z)tu$#m~L`g5UL`&qDd2pTe5{vK;S^ski45|YK-tCYfFfEJr$KZ0|9~A?6D{jQQL}Hpc<(b5#$20 zO%jR-IxL0v^6=nEa*71kv+YMqH4P{RXBAUr9MCMwb$=+gR9dncWGuB7#q;_?9{!_F zd}fdhi<)H_Rlvz$Y`27nOUfoxpkZ!SIMF#=6!%UFCyqBu(+WIP%cO}2rAox#6pvmp z7F<|vyiDa0vG8Wl#@ER;;$25INcN7Z)}+0yNOp5nYBH6QISb79g<`OnN-d^RY}zNd zNh;-i*U}lrq~R7uAeNYmQL`={&TA4i*<@5gVgmX|DTz3GA$L1LORrA!COCn81$zukHC-7)I0YzKVK&VApeZMbhy-1jq zp>&LEa00HFnU+-4&&R`3aCNr`*Y(u8^iBa+W((zop`&WJCc@?+T!$&R4laXhMA`)M zzHIlvz@eJ~ywpHCg6>FD(E7Gw?k)37@zSU3Vo6ZkuL1@eVi?SlULRpy#_pA-ugQ#3 zq2El$S?M)m@KDg(YVt>vPr5m@v`HTKU{bHBP^aW4H4adV0a#b4&@5BCqY8@YsRGIY zMuT~|Oq$bD6c?pfj;ZpvxcXa?tq|ry^??=L93Pic-5^UM-fbh<4`MaRegUY2^IM5` z3fwB*vzRZlz1wxACzP^h45Q&$AVJZo*{8{c+pH?*}`rLxCAR+D~rUz6DQi;1~ zT;R^BfxDheFW_{5MqX1G@L*@D%wJNG51i?O!S{gVRTW64rO3t&;Q~3+c!FL7bq)AN zh9~V$40CzHm7*!#QM+mZPJVo#qXKSI<8ra00Ma``^k7p8xh#Y?$d1KDd^JFNWgIr3 zT~)|1K|}$9oc_AJcF-S>ImRN(gA)2-VNdQpS0}WSlS76I#?wgODN(_dN(=Gis`0^1 zWV?$vf9NDQO&oJ&Q2;fIGs)pe;UMVHP;yDbC1b7>^*{(w1zCwhhyn+|Wa2ikG%%5x zw6Lm?RM`%<1AS!{9M&j1p&jxAtE?(=*f^?5BdiVpT~swAoKPtBKHw}NF9Sem2l9Dy z(VvS|Th(?Gg&wK3!HG6#e(F|*X2M8K0XW6mq5L+M2$#e|ogyPOatU<+@i@s8gHcCf zB3$|^lP#-a=L8E=&i6xkis>~>Sw!*HkRK?RQQK3QrJAeexa}2CF!z3thtn(c zAOnm7l>I{3sjw`aRgE(Z07ey-C4UpEbSz&a>6amW9f!)PY zg+u^Io39oB%jw7be@+a$sgnQk5gc&%0G8w&v7t3kmBTZLqb2=0&P+;-=czg%fD$Sb zedD&Wzw_h%KGphb$m^mn2r%S8YD`T9^v7;WJj#pWS}L;(8cBj1|JPtZs9T~+qDazC ztZueIk(a~`D~cq&5w*-@4n#9b8wXaiKF_#SeC1;;f%xxGGE! znlLzzi{vmj5By8_NU8}8t`ewA;vPSfK#js~%)f-tP})KfA<795QC=IbAJv{0>nk^b zTS-VUPOgnRtvd5{Ey=UisCDZ4I5{pV|y zBxt?1VwkVms8$Rzw-C}d3}I1}n~&-S?4;dAfCGNGlNflh5nC44g7{0gTP)E?M5v`s zrIj&kvTB2mlZMa$biinXsD@nB`1pIdSV@Sih9S;*3%NkiG+Ey$O5a?FGFd4_k|iT` z$@-*B+{aXoxvydmL*>XfD|rytK3N0?R2mu2c=`l=kE zoM#Nj39f|>Pj#|PqFh%q)(6p3tzo3++D*#{Ka_DD``Qh^O zEYZhVklPm~_wlD$0I442>$(s$D!p%a6vdHtk+Ub>RH}=UtEM9>le*AgI?JRh`gn@U zFCR)?snJLlAz9~g@hXY|Yyd@t@u}4{D1}B^IfT=zhCmIIP)ZJg(kRH{XSSD9mO~+9 zp*#q4c2$FLIauVX>5$J%z5pFcxNWh(nFZ<x$@VI+f) zJxTJ=vjLUhy*6%AftM6;6?my(juHJ&f>&zbn{;U4Fzz2}P-smPI+G7`>OluSTA>5U ztc`MJ2o{4SvqaFH(j8S*J5d(RURSKl%tv4>)+T0tck76N@aBs~=OkqY6r1Nc}!AWQ@eOwJY`Gv|4qEqu2xm zwmD&ekB=e z3}Ss3GaQD!0aT8cp%SYI1nXLwxNK%@AhSV5Mi$%9=qXFu1HKtat$#W zybUQ7Ic^MD6oIZ9C|4(1kYO7{ifLZT`336`7Q?hH`V1RHCoOf$lr4%XJGA3p!h&n! zJtc90X=H6|u`^@^)TYEGb_)t}YZcrO8LFm!;`PoXht+_ilunNki*5ePrC>2^0ZsfW zSZs?7=5B_=p50mwiz<8v4y#f3hvl$?iA;!Ew#Z>*ITMG`*AYSIkxV_ayK<1=Fv(U9 zk<=t`8IJsCwj!!Z5nI`XR0Ug6*;8=B~ z)K7jR7%q3unrwXqpOF!Y?`}pOb!FoElvuMJxw}QH^RU1Nb(7As+rI z5)Tmcdf8eA#oG8o$l*tj@o{kZ!!BEFucf73c@9INP^hn$A4Kk1LcCHTAqJ3yNF2sc znSC*(JF1~11l1_Z&*dE%Ks_Q4H8KaM)oP$pmdvPC2xK@D8}4aw7J+7N8#kOEOSazt zEV`?0tzq0Qls+;m9Ki^rhSb{}3EYK8&FOX3E5x&^y8nrcS}Ci1JP(3AU^yn9>*lgD zPEie3F9pyzLcdiyYXm+b-pa7VX;p*Th4Yz+tti-yV5i0j$YcRyivo-QQkj&FEI;B* z%gTr-Vv_*9FpKU?FqciS5{M4F=<=Ze{ZWX*i#Sn7Orb zI`G%H?oDuJ0n1xMVO54u2Ne+10sJzk6SVPcbXC6Gk{Gm#v$3=}scKv@eu+48xMD|VMX2QHEe%X4RMB?FZ$FI;<2WSL zl|(O`qXq&3Tu8$4rdNnFinYSmvST{qNAMuP)WnE`jSx|$;OfhV#ME91z@sXl89eJ z6IN?uTjV*^r@JBqE4} zSO+N)gWxg5TezKWD|X${c*aZVjqeIt9JWHbEcWa{RYB3=!{Z#@S79rP>(f$qUxlTCgHNJ6b=0Or;|tDBcY- zbSOu0SpU%A)rZ5Y1fcqKNz4bA#6wg9P%aZFK?B|$fXVR+0mT#9A-+%W}|5-$T6M(r(xm6P`Vf}DH(rA zrr&R<=@vzZsM@l!G=`3%Rme0Zw@M!h6N%RHBPR;Fa0^b<&4~_@PSoI@AYDylD-%tG zUexA@489|XOvM3hA}<_l0R3Hsu7^kfMs8F=(%BG2XE14~(iTuh*nqJ^f69qw2wQyY z{z#k>R}7QG=3ohQYm64`9OHlzcIqU8kcQfHfpl23Ps!m4FN(1)l>rjhtE0J6#?I<# zZ-hQrryxm6)7bfe%LB6QAz1%*g#ZMJh{l47a1__Snqkc!v)q*KsD?TzPG&F+{8R z7swUkxbc~B<5gLB7uZmF;YpnaP_U(cK+*16_yZ~9Cw)~cy>PCb3{>%%f!WO|v5gft zWF;m~d!QLtMyaNDM-|F+7)7a=b@vh2@x2L~w3Q|r06k>P?8jeAB(DvW*_W^q+NQC& z5<}|vxD&PaMH!YA3iZUeoEnU@6@gk(F3f#{L&V_|apm8jp>z;7BWWxHX|j~F9E1a} zh?8($XL+1tAZbFbMlA&DQUC(K5=42RH4K>52X9LgbPIo?=fk+6!)H&&7Pf*2`^%-NKzV2|}x^)9cf7axCe zQtDd;cO}z+HGUg%hD?$IXGFi~JOwfdnOSI=l7BMR8ybh3KP2U&3bvswMVrq@jcO=T zm76xn9N>j7A|V(ylwRu4xs>1#I_f~8Gz*;2F+ezIfDmTU`k_uN7UGZjN+ke5UqPc( zu*&T2%KoKGMEzs`7FP)gMUJBU*akBGAf8zeLi=elrdY72(>V#zN+`vIr(<0c(x`Gd zl#idJ?8YeHP95wUv;75CV}wPn&3mW7xgDy|}(#~~{4nL|C86gc#dC6_~tz>+Hre#+CmV*TlmhD8-wq4~4R{LiRP{q;8|&vL_1n zl)TEmVz#CHHQ|tJvzRvM&37hdC`{nifrZzYof-g3#^H9_|aWo5)RVppelSw zF9}he3Y#Q=1DQ}E{gYLTdfa}(uw4{GRqb(Cr(#9eih5%pVeZ^TnD;Fgbs#g8VVCG)UVtf+>eRXIqUs6#A6%eKnY>e2-5YMI+Oz?DQShT~)T%a@9z+?IpK+Lc%9)FQt^jP|!Ytwl1+ms<8lkTh#z*(TCR` z)E`o$(blIB`mvUbwmz}7OYMJf7sO4=kL^Y4$_Q`?`Elg_kAHKZ9!x1kygX*1G; zOf_3PPv}YMnp6Sn33^U`JrDL^o{c0GgtBS?j0Oc~pQg&^10f21%RsK@+nE{}Zfsax_-b21xeyuy-rEJejtHQUARY{N9y5t;~+H<==1M|5i#3dP3Gq`2= zT};4BRa8c_uNb^2-p^A&3nZ%!GjY)#)(;y1OzC2StD)A(vi4w-gtVS9m|UJ4*~vvV zHG-Kjioi~x#8p1=Y^vtl=fbRve-kxUzd$)rP$ z-u#%0>V$w$Z10uzD+i}Bb94ue;jPEMk6>}$b1v0~==$!!f1UL~)H{xi1rwp-jX~c$ zi6@;Pzl(J8X?Ai<>|{DSVY|}DSUM>jwaEb#o{Pd+oNvtye{K%vn8hYl@9*g-gnl`l z{>id5J&2thgar#Ih>#w8Ui^Z<8X*>5J;8%@g(o;ugB5ZSLOB;Tm`kGxtK!#}L>eSh z#cJyT^8i0%U9tn-ksB}svAp4yM7EPw4;KgvDNHs$ie$xulYmWezp^plQ7u+fr};r# zjxlGrT!=f)JXIZB6cf)X0Gm5G*ZsYcm4K(&6)J#;jW#jIQ}n2O%13yW`sgIi#)6BA z>+H_e;d!`eSoEF2Y6rJWu-ZKX&`{v8(Q$uTGB7=?OG+Sc6qy+5f=qXaJQW?^5TFCq z5e*@-k~C!|gs*bYv>`N`?DPm$UTA#OhhTisgq6I|_*ko=DhY^zPLWHy1Qg=ARJ2oq z%wB6CFECP^k{}QYjF`E{IS7+-hE=s)s#a0R-gWVMs##!Jh8cb<2cyO&)8dy8;rmWe zX^|Ur`j(+q7rW;^kd|14cyi5&<-F8=1F`lq>Qy0DT7|S=r>lcS(?CCH(~`_ zOmlLgG?SKDOxO^S9n_A#<_L?F7q2e_SPY3AiZ|lH3l|dcthX(d5zZI)Ej|;s9mp2X zu$Gh3Ys1DHB1N?K-;}tDL9I}^cA_%Y66R;;av)KnQN!Euq5s(ecuIr zC94WD%b*af4rpUmFo&k5lc#5>WNNkvFWfr6rv8Dp2D@>?srQ^ zmk_-GCW6?BA@Y7Yn8~!PakDln8E39}EXVROZcGh7czMs0+F;_(Od z=b&@8NIX@HrE7BIF|)I1*-I{zKd?QBtCCGD22-%$ausRP7If|}Uhsk! zF2d(UFMi2OU-oi-UJ*Wv&p-eCSH9}iuYUDweoH^EUGm$n3!e*K|N7tgo!|XE{VaXM z@BhIY|L~9g7?h`y0P{?|teF`$8XGg*^GzsT-&KwW<#uOtwy*Xo#-3Q^`08%Ci;W2$ zaDaoWmuzYo1u5)TgNRtgBZh1Kv9duaJ_`FpNlsrdj_i-Zn}JIG9tvD<3=PjO@k|37 zs)0k}o16&X?KN*?2epn>5C(8y123`sQWsi@0|{MW-9j7Qipyk24b})UykNY;NnXk> z8wb*is!MX?j^HU|*pdxiz<(%UdjozZAH6Z1V)@w2rg3GeQH{f7CE!1AO37~U450eG zfHC1Q*t;m=tcXLyaUndyzO}qr4qM@y{_-G)VbsP_Wh%|uQwRx$%h$A+^6z5%yM$BC zI5bQF{`L=M!;)`E4OX?$*F&#oQK&(1FAE_&O8NT&&MICkQnF#Pkk{FxAt;4ZHpQte zK{zM}-%hxNC)exExn5tVy>>y1XSYI2G>ZJTbisye(^jp5e>5lOG7{{y#5n`$a8Iki z7?8Z88OiEwP+1WO7t`79vI-ao?xvwt5^FB9q2`V~ZOsAx8tx{rs$lrC9H?uHNsUoz zpCaO39f0GcAO;pEo@#QN%JemZOl}}|pS{XZxmdBw+fZMLN7ESIHZ4VF(Bs)iAN={v zOJO_**(>#Oy~Rjr&$(nRH7d%9D|JcpM9cXCA2jJ@N|ez2QKmV4Z`fy56WASs|%Bi_e}c^SIu0$N}X3G>~P!RoGDpD*pL^`K5y za*@b=Ut~is5e%l~Qb_+0MD@6d+ACbIxZm4cUlyVC#h~7pwG;#)UXT~DQLcL>PoPw& zle51BN;Sg#sYW57834RM;qTAU>u&GMHij3HUdgkSBP`0T&CeEA0Z)jR=2f9$<0@&K zZ-fmFckB_QQ3zS28*;Xs-ouQsFR*!C6qlyd6H4LAZO;w^ChBbJ`GPK(zh&x(x|)1P z#xtQlqOAT1@$x*ZAe34PyA{c!qt@M&GaI3DAPbz319K4yv`Q%f5hF@tJmcH@Dm$sm z>|@5az0(K&cp;Rcc7Au`m*2>LlTDIg>TJ%DPEPi|63e7aBR-&P>NUm2G^Zg%8%#h8lnM<_6=rN z{dbCra@89zO+} z8qMw+i(=Zyc2A@40BnF)h^}8HVY&GVm>nUtD_DaLEKsP-ehqhac9DbWwJz{f$zv`< zMw|^IG8Ao+qXd?+gnArz)UR{m=k?aFW1FXd|6@a}@+_;)WL9s#;o>Mu8~;Nc)W9Sl zjR}sv*lge=1+NCK(khOP1G`7B?;gDXLoOf2-N7=Tx3Tk+F(AEB*A)3hgS{D&+mh@3 zBwX8zF2nBe9yUb(6lg_)ow?sG!LRgQg3#Hxm*{PozL(tUJ*?Ng-5Zx}sDk3|401SRkHL#sVYa#nj3= zch)4hlC)OXf*v_HW{ybVz|3{mlY|dwnqp6ix&JePo~!h_6aocjuUhMAV(vVJ4kI*Q z=ml$5DaG6w+CyaUXsICM18kQE&LgEx50v_0zJi;qLxwwjm69y>6s1w@U`ukM>D{a& z+33lcx0458GB;0Yd)S=i2>=av-QH$<*lybc?%5U6WTz4~*k*f(BUaJERwPtGy)dIu z!AN*<7#9qV^RG;%Q_h#=gR3*DO(LBJp=0r5y?%r!;N@PrKC`i{_dEUC`h>F%Y(UoM zpsY$9c$8HMv;P_hcJbm22D9R>3m$0KnAXp+D+WbdEkN;M}E~B%9|rOs$h-;nMvRehW{8xY|aj0PC|BioNoH*QyMZN>@V4g7<9P>36+EBcTR~%*)$4c5|vPS z)Xp|MYNzoiVuW~C_c#8w;Za!;b~Tw252bS2o*EHWt+YR^z)Bm^X;w!oseiC=c9rlE z&mX3;g}-l8#==KGR9k;vtYFKZ73f8x<)OTO5SBKC6oFkg^f+B7Fhhqan3nj6BGz8QjB>tk-745e(3qtP{jpLXQ zTtGsJ#GS<%V;hI!<7z*O#@gy znQI@+NVIwSL7KgE0&!PIm(%MEs9|^q;b@9iPRjszwsK*A z*vVi4Svk;yU(|GZDO1hx-DHNy%snhHLj>ZZQJpcdRDO{^l{f%aMxgkzIlYMtT2a%M z6xF3JQ&v6K5lbwp(L)$ph9mnSa$}ObP)~NE5?r7Q>4Xo5qv4SjbiJd#SyKp^86Y&_QV@ zjyrt}tDO^4=fWC9`znQ`mjWM;GINM1M>5UjUS*SS?>z_~BG}~%OZZ^_vX7s?v+R$4 zpoM|CAt}rp{b>F-B!5HtH(;y<2i=_Epu9zQ0uCCh7(KAcY30qx@xr6^f+oosB>okN z-zRIO9SbOm(?Pj2=+-NUJm)}N#JG4IVr2nj!H&bYLw5P$%U!=x*QU6@wH>81=GD!XxZ zC`(|lk|+Z30tcgneiOJWSll#m>q7@X`VT?LH10B3ayV2iDiM#sOGu%Jv)~}gF#Di< z(FBBqS1wjE`m5<|FVAW-P*A)HVCsz8TOLlH;3qgrCU?kUPKyeWi_A?ks;FG7OM!3` zeoMu;9Qy)$VT6^;eOs35gCj@Lt%I{B!6DS^5W|?U(1V%KDO@DUolvRoV?aIh_ci__UgF0KYEaB(KzWpeA5_9`gF zETHzPkVQY5t7Hlo&nXIzm`{)vyNQd_Wip*Elj${eneg-?xp>sBW#X1${$O4Zu9&0g zf6ZYHB*iZCTzqG%q9WHfaq(ae<617};vccbT61wBFqN@LF_AwQyAB(|ed&@g+povih$*lg|PSB36tf@X5r7(iU*(97cIB*W57kCpl$zGD{? z%Lr#Id+DQ~95t&r@j%X&Wu~|128Px+Fh+P*8KJV<_BR4^)kMv39MV%gD5U^){96XU;*1smz{fo87Ng8 z@(5z~CB?KxS&oO?iKb z=AN60J*G4;i}1~=%@AU^hmcSSVX>u3GDKi)CgQ(aBXDwP)|92_4Ysy1x$xG&{R(^K z4#Zs#Cp8Ref#|b*Cy{*#GnkI^cPURGWRVr{yXsU zEl&|I2S?z{wB_azmPv8*g3?a`H_!Iko|_kxJ}7Rk?fn{X^X$N$FmCP*x8UY_(lA6C z7cuP|&zZQ&|L5~9`8@f1iroiInuj+-ilHZH5}t}(fZYEn8IA4{J9xyp@1W)VN=^f4 z{RFzfhO!uQL^a^Wn9v2Vb6fT#o~M2~L#+{P&2;^#k0kELU77MZ@+f?2sm}mEapaT1@hieX59$Xcv0x*b1?5KNAcbaIpi`JzJ1yoXgo%PA46_HG9)_n9iZY4buJ+!3sJ#s} z_r{eAAO||?)JKkKHwKNvOxyY(QrlF!z3)cv@u%7&8#Uyzw-}m&zy}#6PZ06cHe^*X zWKTeRH+cs}d`C+MkVvhg*j>1`T@#y|nX)i>EjkZgh^YDjQW`gvJ^KLP>iv(Ym6^xB zF+fEn=Fu=3v@vE?H2rS~L&cGAu@%yu&r{hD#M8>3*><1^Ma?f8?(uGiz{EOBvx9t6 zs`){Oq1~x-&A@c@)rJ4M@n28<;}q}_8xnLE21tu}z)snSQD_>XGW?Ww{VbG$NH&vx z3wbV+Cd!LOcK~sVfIqkeMy7zq5BVV0DjI3&Ehdi2-P^6D`!xfYm^7X^Tbqg zat7lE9Ni(kl4%rHSUPlQfW?g(u=xQM(E0EaQOfGAQfCfLj+g~Wa*k$eGk6qmMoQNl zn2BX=`03?hX6RXIa8_;Ry1|)HJ8Lsjs^}V&2I^;~b;^O60a}f_!>QC+&F@)*21-eC zLmTf*s*k9LZ(_|f#WDGXni0;xI2otGX&eVKV4>d~ zpw}Ziaa0<;IXKx#5DB6P(GVmg*Fi0GQ`*`(MV1^E%ODyrzYz8*4hlZ zMNNX_h)Sdv5X-k}FAVeMg$N8$=Axu^jO=waH$obOh4bJ@=mebS;)}D}9%#u) z7WPWEt{qIC^(5OL{b5N+3f>TbYaQXD8cy)L5S|l?h*u_hUdX7F8#{Aa?;z%qxvgfr zMY&LNf`o&33(PH3$Y4w@B#dnt2}9y7`lEm`WbjW1_!2gurUJK7@`aq-CDw+T_sN?5 zlthE$$*@@zV#0^@joAB-bYGz_vEH9QPE`EVf*)uto>7Q{*79He&9B&6d`D&;es$L3 z2+5@E3k9Whg=(y{PzCuzJ8LmLwN2Jyb2exI4#+BJEzb7Z-o8*!Iwf*8S&RE87CARJ zw7tB@`IK9Wvjcm=>y|MlO3O>cjS*z{x!!4Z~8G3tWS zPXVLO_S&9N7nD9IMy>7r8ZheYz@9Kh?G3kJ)Dv5Ea~x*kD!&p#@UI~YC+k-GhdB9u z#a7>`F?e&`hh6B&gI(GGZNG^&-bovI55~rOS7u9jGHtxEuVx$XFm1dH4-+{Aw!@6T zy}scUCu8F+D4pWtO*URr3iaSianRDG)_b0hKczO_IH;$@#v6NkGHkqYs@=+PqfhbA zR2P53ZM<3C59ZlEh$5Qz zVGixNvukrC{O3QL?YVsiX3yoe@S9@K^);pv@voshH-eb6=ic{JOG&VLUQ&jc*g|9v zzz=RRlDWf=#D^|%d};&uzzMD&KqsR%2B6oN}@sy~9 z0i^uldrA{qCoeVF^TN`}7(zfvOOH6*eNra6#07$sPy8hDtwy1T{20WQ5mlX1WJ(4>33+Iuvq>9|af>d(d2qrPz@N+|1q3&&F6 z9glPG$lt9iP#n{a^ydUyLy_W^g_`50lCN{3?@FI9lCud zbdfWh7cuW?54pt3>p?+H0ulX=dc6cayN-w4Z zPyr(=p5Oy&5v-!%Rpv3jc-j-e0Fo91K4_j8V%&tdUiSwPNXQ*7Va5YcpNQoIuQ!iAsAGJ?fjh>>9LAg=^>c=u zAAGu4h({NcQb&mF>=1(m{bM=I^_-BM_KXLHkg!z(33=`lA6(87FE(p?dgy~0c}M)g z8F|O{PM)N*^Fy**yK|mz>;O>^g&32<#E^D^NGkLrH8~y+;IZ*VNE))K$1~mG0h8`@ zk;HS7&sZaZ+~kjFA^BWdRQ#YMpN-aHUh+|=gAP^qV?-p#eq64FV>}GGhhB_5O4Fh8 zjA`6do6qr(MSyXbq=Hm*A*zdQGn8XV?v&(>xzRF9jqF`uA3Ur#s!?9q^F2K51-4$+ z?%GHx04GkCxz9C0QtB}EEe^$hsieZDL-1Z)l5^1~cLBWF;`gN%AHugXi60OumNX_f zpY(Qz%p@EhSk?Z+`K028t;_`dw{}>_Ho&8|2zeWlDY5fPLbsClKqJZ0#s!??1#tVg zNSF#iPkz?A)*;uXA7R1`4?Mu6aeGa{VbeLA$U$WbX`ov#B-XepwhG!DoSxAv-k(B| zY8IFxJxn#-&OJ>pIQN9jkV{@}|LW^!togKgw5babc(5`+0un33PHwR=RSrW25jnWnawBk2q^XnoLhv>)GDs77xIDev z2l`E=Qf4}rlt6YjiKG^lpd$vBNVKaZ0UXucct~Rlhjlk*j65WSEPCrO>}azOI>@#%dZ7QHiQRTEhU#|5wFdY}pV^A;e6>-_rI@@JlV)muPCohM zQ}i=0e1?bT^BRpa&K!YIp|RG5H(1=8*;${1;`P)G77xLWZF=1ns>Wwg8auxFP~MWw zB+nD6@oO8gKjU6!s&prUJ=)!)E`OJT_67wnca_HaR9m{3&k)cgjbxE&+q;g%QyVNs zlrn7to|JOaDh@zf%x|y@QaEa9+FoXOjHYdYAZ6NSO6al{O2Gmo?N%hYh`P~HVWw>c zZ7{9Bnzp6ov}xP?5%N4`+7@TTqX6!DykObJ6{AsXAxn}HEH^M_@#W8SB2#D&S#AnWf9g{M4A3YgkH}w_5 zhg&-GC&MB%CfB0HVD=X6b%~k|S{)F(kIEU&L#55%1Ih)q6KSmuh{3`?OB35kGCDse zb~hX3EvJ)5=?8pPEnGmax-UQ}Q45QyY4u>Tp|(DXKNvEuA`mTgx!|%7nlSCp1t-TwicXFR;@oD>b7Q?cH->~EF@?z* z(~+B0e<5KGq%N)mTBgPmwnmjdn_K*W()!;vh(AJyBs!?wxA_oTq|)_jZI-h_-&>F2_i>gWeq|Yn3WpH!0cMD z0MLgxgjuydO_wrD_`L#Bn<;jKM+q-(hR0L@nKaG!$*q00S!cp`TVoB_K zmDXioG-0VT6@O%3P33|U*TfnUu;k?oZciC4#JSAXGCFw8`?dlW*mTQ=7&0W_YbpDb zZ!q%16M>_UA}1P+(FG|%t8jE6WkI+YgjlG*h0q`?j#FfGv@p1Y*O=h8U!Xg8ALTV# z6IIEA8!X3}1M28xnP4mgGt5H6k{^?|@_C*SfSU^c*HLGKQoxwwazYE1l)8h53?=W) zfgCbKGnqq%a?3$HWQeTw6K!g5z1Vqp+M5!Fy;(N5{5ivY6KraEcgiiCi32-lc&h`M zbEh2qIm2BUx%a6(XBc}wh;xQJ`k(@JKPf5@l$*aSg|nLUF(Dm=5I{@wT%{%OsgkN_Xmmsi$J1p+#Z!8T zj3Zt-9epa?b&A!J%dNq@TB7@c`kjCGh@b-q7IMLy zK>!2VPD3vuIvvQ!^%!~zEYqB#rgxWvWSaryr3p-ubo@Yx8GWkUXmtyRC9Ybz&F=Go z*n}dycG7OMZ&N@;zCfl~q-2B$4~oO||KV$`iy0{JZ5d@O`l4jL@;VIs8Vw09;Jym} zH3`3FWNZC(EIc~*dYG(mvcV+E}8y#n6 zKRs6tQmW<7 za#6;WDcDORp_;u^t>IAO)7v6Z8zjz*y%gqgNKP6Y47)aP0qM|#uJZY_g1xj+WG{`- z*oKc5o9v~FRL*T>FO@wS!SZQ)sbqpPCrOdL^c>9Ei8Q;ZnSq&}Vrngs)~+U_IYCX8 z$GfRgau28SSk-!Ed*)6~VG8C-h9;rMZJ-3b6l8)#S3^bSO7Zq&&6RGcq>T@eN*dDB zWLoU4|B(A8H9#FbmS4_H`Pmc+DqkDY%N$Ecrq#J#@@X|iCJoL)iYqk)Qj%rrtK+be z1HvVinObExvUMXhAoH-L1}$m&e=OHEj1OV)@g zW1|$`nEea#S#2i9tZO4jsC?WoD|8I%6$i2soXQeTV_I*F5*P(rnQ+O-7)PLjG)LD#=11Tt*FfwCLsn)UY|Hql!95B z_6qvk%mGNZs3V>PcALMpZq3En^%3;IoP@WoRnaKnHSId+6&bqbLgGqGlpCy({H}ux zcg+%>n8Yn!6`LXzu5y#YWjyk7E+$bKIZd*C7OPmwrBNownK$~-e%dX1sb$ZX)=aWA z7;=&&?gEBYHAt3s5E@$3b#JcJ<$)-G8U?5Ge<7t}Cje&kgV>HMIAxrm1H=x7yX(N3 zplituo#=%}MD$Yfo7t7zjVNvEpnbb}vk&Sq9n>LBf%CH8Kt2#f(r_t8Up2v_BN*L* zEvD{NyF2vnWzE6xW3rd4C3=|$!|PtNJhYW|y3;04twCpqE0sx{-$5G*9&sK7SEJ@tqj^*UX|X>kEs<^wTTx42*NDB|t^NcJk+rog>pXu`_YrQgMlI~D0F%-P^g+(NG z5OF$o1I1#3LHG&Y!f=A5zx)#4(r$u>eA^e^_QkidM)Ylec-tS}O7t|}^4ckB8DHXC zn_9jd2yX}CTQhF(?O=F27~gUM2vqY+M~AmZ$G07PD?!rw4q5ZGG`^faZWj*<^6Mo! zCZ%Y|58oAE0M++0r=%{6sbTuGvTPb0JikJUuT>*_hVee$5T=0POMGh>=UZW8Y@s8* zjTpzpWntu<@omI7Iu2v^xr`Xk%_TEeMvOz<40Zd@#|38Mr|1w{d_WfUUhw0(BdZ-2 z$EN{{)k)fXK)JKQY?!H2Nf)jjblZaC?8$H(ZjkAVg-FXP&<@F0pNN?lvbmd?^-zY) zGD^OD%Y%3zGCmaYWicgRzLo6``#By$FVSMdG7)^sw6S=|i*KO3@GZW?w?+VbcvdKO zR(xv&z?N0=u+~$oEAkT_8ZdSeIpSC&V#S>PG;_v71GFC!M57gU)8{DaBh%8+@S+{r z&@t1RlP0i5_9_mb6kEJB*Q;7BEz}_NYE;HvhrHJz?{#=ey>86)s?1n>1?}>}x2n_b z2zjy6ZowS{%3QA@xpoS5?V`{MT70M@I(cz|(9` zLl9e@zcFn$?(eHjAHa?|tyYyg{Q6Lz%c2AK7!f*T*zU#=nZ+x4VIb49GZ{QqMsnl( z9(#cQJ+s!y$HX(2L}$`-A%Y!v>J*iDU!7b?%Dr6Hgz?(8a7_yMNfoMW1!(jog4ji+ zpjz=uBugg9hvGR|qT-&(=s}!GBYZA0(D_34n@NC5hP;SXL z+hGKB`IAFIlm~x^vzTz7sHfoFuTAl8+#<(o)D(3gl?a-BNBkih_R^Gj!d)A6Qe8pF-2 zD>qwnX7h40SReE()*iHx2-i6U4Vbxn1xyGsZWW~%l0l2P$X}bhnjqjLynL>_tjh1> z@%uUWEfcy3e~1$FhJBI5LBy;{hiuD?+j{0!DW&AMtJya=UTl*-E8qpQBf9}%l)!c! zKbu*ktrVePGH9Ay8Fr+m4Pc%w6#Pb@ok#(#hVz!(a8Az-=SU3aG-A=FQ^lFW>5OIC zOu0fS>k8&4of8AnV2%M91Ud+;fi7=xfQ>GPBWUa%0tD!D66kJI20$f^D-rb<1gK=^ zjYnydQCQpNaF|kla-g(OD<|N+%j;aPM&=WxPOv96kKbu--0NMf^^TuZz4v&%Osf!tpk5EJsOYLq6BhLV&BKFu+GV?~gfR?A^Dy-!)>&2WFY1g&$^#o zBb5sY5gp529HMkd1jPK(nUn+Omllx6OICOOX*gHs&&70cbdhcK*!VxgR>khCAq+T` zoaS5NkfFI(dLrY3$R(H%Lpu$(xKLdlNQ?jjpv76T1b=u#2nKqgIlk3qO*M4N1q!TK8+YTb&BrFwDBgsE5DBUYl&c zO%_%srXPC>L}xH|ooFY8p2(zyA=t76@a!})JVY-L9$jW$ZAzVo@AssU`9$$A+;W(P`=9 ziEK+5pD(N3UdPyh7&GX~Ygy;BUdLFE7%`gsvDtne^g7m$i0@6~$=3OT*Rg)8y}{V_ zqaKLfy^}OwR7R)r4+8VNl6+wBsM6#idSiju44D}rBovsjpj!ySk7op7x+-z-&bB;o z8>pXYKDW9NYnXfZI9w(KVw9yTIkg~I>DBL)anUuC>#O*fT(hRpg^2oTxV{EU6%Gyr zhf|iLeoGHz6*XA~*S?nrrq^fSF_={qS}g3l<5=;~4KKtJ$CC|UmC!N~p!IA7k#+KU zCsbN(uNM_%Lx@3TOVOlV`y`ShPUlp^HX#?9lcVY`(;>SI1xX&#=~kf8DYqNIN@ezl z-ulV-Ll0bS`Z<-k@y^&Fj*p@q)yCOt0Q59V^FY~}iDqzZk8oRFccpB*`<%)Uno4iR z?d&Eu_#_xp#qk{#Kqv?TNGcxYk+X@h;5uAu#@VvqI$(ttG0kNd-h#>ycb1NUt~!G# zc=gnHvLCkRkU(Ttfe>Arp|jX2IOA>dcCT*bSL6?>@1iJ1W;_K3BMnijLG^x`pgz!`$cI$3InWy4mv1eBRvPN zvg)dJPpt1$12bN&e77C1ey7)I;=5@PD$7If@H&&`yYKcoIllWA=B=7`z(& zg1a(X70eQ_vEq75nkI0eyV%n=rt6okJ1eSF{9NjhSld#sbBX zEhl3i4VSD(P3bD{>f;J61+e3*HDVe{0z`9RDi!4)$+lK7U+WDS%rKb7V8Z0~cL%Q^ z8ch!6V#)<_T;FmqeZ6%8psWMdX4n(=3+WI_I6V=T?-L}hK|CJ`)&mj@O@yrxzBvax zJXnPYe{)M12^_G+u#FU^RnSuo=`?b)_xE|lI?kN}WQe^O+7IH;hVeU2+IS* z-9sGu?#rHTKRM9pqIQY2(VOgB{bMeTuEDB#f4To)k%kxG^VkZ+CeAM%>mhP5{Gaj% zryiSM2LuzufF}Fdlg`>*-cYx&xAB&}G57_%vS@R2LVJ&Q^fomzV7n}?R_d*ndw*2M?hvl~Q<)nazq_O# zaDCKn!ON9u>!rTWYrp^lcIthyU7`j!iiaum7e*-@U53Mk#L6=-Y06k*D*|oX+*HYw zqq~kA#SBJ~uWj%;w!&oKeR*^p?6{Q?Jvrl!ZMPnGX7|}(j1lmBNjXc~ao^>x_{wN? zG_7S}-n&Yra;4J#ddHt*0Dwu7R4eVW-K}jaX-!(xfg^-EE9fQ8R*q*?PZO z>#Z1axP-XcXdy~I_mAoQ=CH#3X1z6$-}NQdq3D`O^<`etnUbO6DmlbfN$OAA1=Co| zcr8rS7g7sGF$e0#g2^m{b&Xgfk^>QZil_w1@Ou6@S$_=458SK`kt3^dmM+Q;kTuJvo>!$17iI-Lw{>;3-pKfcDnx1-cHjW+S{r6Lwm!X zX1&eV$LZeA)JNo|;~d;(eCPRhnL8{Wsck=DjWaRTSKif5LGREFlFR{= zCPlYd%dEB~e6O8Txeeco)`Bq3ofCw($=0E9C#|=RwV9P55pIEpEN1_cQJlJbXh{!qDS0+pHl zyaUXvV-gA>HiRR%Ayhl$6V8w`O|kf-dwG7bg>W#InPCdc^_@Y{6LWxV;qg24{`eh1 za`AgVF|lX>j>3Uzy^6uITfT(=TV0PuAlfwSUy@S+Lai8HIQMEyg$ZdyJhTu*vy#S! zMg-I-3r6#bOsD3iP%!GXpCfb=bK1fjm0Nh1dAl~D=$ykyEj<0MlZ)?R;o@d$Gx7DVySh-A~wY$(@w9UCoWUeMAO8dvz`w#onx($qSZj1Nu|BMU8b z+?Qz~q7e*I9^y=CffA+xOJ;IZh^UWQiy^8`qs@&0QWaI@%DqZ`|IDp4gveG#D-4UB zR^q2D@H4mvq!Q)2iyIpQDH+Vl!uqx*U)y*0Wnb9%)*X+iEQm;+=4T)%dG_sH7vK2R z%WvFt+L^%*UtuOeFRY!^#sBN@>l@j=o6hVv*Eb1tW zFR8~o#vlv^Us8`(Ab$@FuSh?{p%WaB;;EHX$z@w{a0(BXr5`TcihNXfxHSE6$<`Y7 zFPOR04;OE(%`pfUZLLkSucHw6?CS`)s(l?&R)8jmCVG2xPvcH6k)Pa$kXk&$WY#;b zoxN9+%6c+)cpZW#1`D8q%+!3+Srd5@iv|otp1|$FLxNlQWLTbnjne6drC6cqjn#m5 z9wFSsN3c=x5l~L^`4}JV(MLcx-3ARlLNW!G0l5IYiM@~(KiR2I=HLl5z{Pm7Tc1z{1D+P)2@Z&`9eXm0 zC;RjXv;c|^BiODm)sQ4R-mcQ_%%io?_ul(&rW;4E@fn#(0I}-`U z_;*%qw)~x4>yy8IwK?(^KvD)^5k!j0U$}$hFChW-4=1u6klWX|poRz32qwm#9R+7w zFthL;Rcdo;m33Q_zO8>dJ}?K=JBKIyx{*b0Ycd1R2D{-H$2Ktszq`E5Aj;s$bUx{Z z$B;>_u={t0mZpK^r*TGlYO_L12(ef>h*F^?Ei;HRp`{);u6kF(fmW?e4=q)(PH_4R z#}R9@LrX|v!O+%fXi3WqqD*LseySPFL;+7(XsH8>3v=0rb=wzOngPG%AWDUnw9FvN zgqCJt2!a8Y5iE58qK=j5jc^N&Sc1v~=izX!7;i2X1)am3Ndyp;hHgynN_0lBrJ+;_ zLv}0y*V_yoHW4WGr(wFLt;AFiSgD^XA@x%wKx!aH4wh(>`c+I)btNW%Q)!be=tv

    ;ln_vX*M;EV<3!>n?zLL(ThfI2TD{KqKpfxTF!$Wj=B>U~AwJ7!6|trWob_ za9W&iJ*Av#OzYE1_^5GUI{k-q9=4v`w`3-lhm6d?Tu%1F|FiY^Y_C+>chOmpgLlK( z1uT`|%>c*$$`8dy2%fK55U3BzQ55b8UCHJjs}C_yb*cGGD)ze)^&DUrq8xTWh?LN% zw3=vv&E4(Gc1Lrj5Sezj<-od=Y6aaj_GCuK1t>JB-EBLt?xb2lcbl@^kx+z$wY%*H z)}2%<=x$54JF1aU?&(T)99VZ!t)RQ@+3pxdEd~`G-TnjXPO52lI~nB;Ki}qc6ql1- z_VZr(Nt(`U{HiRUY)sUaPg!(i^GI8?rBvksyi)I_VC-_7F)&uFxGL9M>m_zuW{IVI zI5jxIzXD0HWa56ZI~R4kx)JMJ)NKXcbJ12lFm+hA6~R)o@C&ZMHoOk9AmDVX!RkhA z?UQP3Clcr)mNnh4#cO%I3-CXsQ!H(xa4SVSWZuzk002KDuCH#y3MQ`Wk#}w-A_Q{( z5WZ6@oB1c|T`4{iR>ZkFRw5vA7(mS~pAVjrZdpj}{C(2_x_e!i_6UPdq_?okSUjV++aI10XX}fY7 z|N3p_GaTF`w z*^DFPYMC^SvTaNSN57boh%QcTY~C6M5YFGWrnQ|JJc^J$V!Jk?YIB=jtYCO#1(f5a zhd>ZbqQ_&f6xNHwL)JC2ZNR(4qW!q&L~}DTBAMrCnf2?iqy`5C zG;IF5#iR*yjdNh7#ps&2%;ETaH@U4GX7{Kq=v5e0c6%wzSD^@iih*^PhDcXS z%x%*emdkUnaQ{3YSVAQXT?bqUv4QCed6Pr%%`U-4I?98jF2evuILhe!gCRM2?>~ju z4eG5boXI8`aZv*|$a0RWyu(Rk5Q$CEa-D7JYH#Whok`uU0S@5>?9H-pZt&N51G%Iy zErfVbNB$ghsrT)aJ%f#eTptow+CP@{EM45#6;_}vDDnny-ps;V)1qA0)?p3HHiUDf zNPRx%k9?{Rk&(Ae8O{eL31@M+uC1q*WhNq=zpNUdcmbzOwH2gyOc~PMlZ3RmT-Vmq zVc!*c#~jy!Lr;;4SLQ%!f!EF8y(uMb!r6atlCTz)Q&fUjx=7{`Q5_D6JU) z#x95?suT$E<%#s644C8%MMPR$PT;fMlAz*vvf9FUN=A+)=@`UN(}xmWl5vH~LCT&b zvyoMsRb-wj)*sFcr`4J(Dwo1KbQ{GwzFd$?sUz!bs*vrOBxFV9QjkGpSIF??4aJbX zZ;F)q=p-R4Dwl$+8D|8t3*si#L;={oUogHVJJW*BsRF%sl0X-gO99=CP6ZkpQFu&u zsvx=;=&w@~D9-#7^l@E$wCA?4ls_H@V)CwpZ3gQ~k#Qncux&-1w8NQgWo@IloLVkK zzGadcN;b^hWEwj&gn&hg-+()7g*4XC(d47TRfW>Nh4X-$=&n-KGZ>W|&#~l0g+&O(Xiklc*qo~3bnj=U4dfK3M@YNH+g_kr{R`TigAK6UY_w=iy+5BE z_0r3gqTZr&DzPPFDez{BA%f?x20NNe4H;7ePK~K!l51qjRIaz7VS8;whX+gIS9((iM&g^ifgFjireqhi{XBbC&B`3+t?9WT zjzm9LBEA+qiIwc9pPVXFu&q&Lf(L~e+TcW44T~FuGL6DR4@JI6SU+z1=F^O!fR!e9 z!zT{G%!vypRRRc`dc^i4N|_hf;012dBS4-QVr%y#x2W`@2WIA~$_YcIevtT~gDC?w z`9sK<)*5ST1IQ*3*ufY8R9 zZ29WXvUGF3mwZh7q97pxze%-hd^i{Bc!SroxnR98)Qk}o#KWmb0(b}7Ht?`tCwzszp z_}wD3-|Qv7u4q?ht4%Q~H6Bcp8YxA|M5G|I-TDyT>h1kwRY-<$#*+6LH)B>@eB+;q;Ud&)J{|9CisT?>e1!9INGeF6aaYSVGx#+6hfuMTd&Stg_o}LCw1u zkOP0E>|m^Ko05cTf$Is|4Y%ZZ@@_+1OvQ~V071#fVhz8a}GaGdm2;T%IDBSk@mBni9aWk z!Dv&&k*=ZRi29gi18h9EwZ$67PFaJY?qG+x)7fhq1*J{x!g5DmfhE}Pb~1z4v5+&m z#0mEd<_Y4RHphUwfs-M)9%nESe9ir_(Z{#+$w|f|5u51(JX$&7@>&&FUBF<}A;-7| zaJNjY+K@J0Jx)Ur8j~W-O@M|LqAIf6C7XCqqgG|xd?fkpP*ihe@`>I!j`j)UofyO8h+Fh}48(-etGs)iM_=UZ|$NlFB|(Xp~w7mQv@2|`Y7Wus^U;3`?i zXr2+Fa^MVTRFxiX={D5+v-Wi03z;xu+?MDjvXFa|6&kN(yt1y58o+ zjTR4W8gCWMk-cNy)zy0(2CEmCU}zXDw>L$EF6MZsT z=0-tplN{WF_QaoF_Is09Gdng;cCf0Y!9XzE+ENQkRpu_d#xtn z<+>Zv!ppG=S>zRW=W4m|vdMR7-KVe%Rk<@`p!K0tl%=c=mBERVJa39_jjZgnx^ZpT zcs`*JXXE;8Zq!K7 z{Y=@ZkI);kYfLye7Z+3>Hzc3qk7uTCPt$!SKDdt(pXX-Nb-(z`H2@9V<9Bm5kk^W)ZPR13;#y zPrz2NiPo7{Zd4>==hZj*2rttSjtU&5!3qJ8ZAKzXkrjO}b|(|!mr=eB93-yOw|QeG z!JiWbMbwBz<_DCYBgH^I@n%yPfQn|WB*+d>(W>Kt&76Z z7x`W?bNhrb5#w2~RuFs?UY6$sP+{SzfCB8?1@_~r>EF%SC!3?46#{BHF%&X0vqd#n1 zy1R~sjYRhqp52oK^Vl#^cyTyHInwtt5w}6{9Ohg-)8HP2nk$ zB|K=SQaUjF#d+FPM96}5ieFgT(M0jG6qdpgyg=6)d86*xlFEF*S0k35a8IB+-^!jbCu zT~ri%jwNc(Pb>E$C9_g3))FX3Rdq#-P#jAthfh(}e>k{5R$ZN`P(!zNhBmI2;rI$G zO-_dH;czVPJ3!_1@j3;q5!xxC9l+FTXMWUSu$`H1ipikIQX4lKZxJb;m2gI1mKt{x zU_n8d5Fw@@NPAWoZs1*)o4(S6bzNoe=vRm7UbTQ@s5MxMS97otj<^vA_Lc?Un z?+iJ{4K4DVY$Nz(irB_C9b{u0^gAS9-_w_BIGg1Caj#^$oH>;-#X%C@$8m`MntbDf zX~j^lQ*@+#C)b!9`^>1JjW#4g>eAm<_bsaMOnM?YCkxkoFb{0CL6yQH78D6cIn?MlRMX%}m+^8a9I&k2;P zjr38=1WMGZs63zA!W=&vyh7Sau6d`q--zm~r!$dk^SZ9oaH=vK9aOvjW5ChViPZLX zCz_^ScKs99VoYZXTxN&B%zW8?lDrL0z4Tz|dV|WCRb~oy{5}A2Js? zxYg23tLt;E5@eK{tGpkLV-Y%X$EAVsD9jA%YVXemMOPreB#uMFwRXtA)>_CTUtNXST$R`5dhE`Pupc87t^)%& z0C7R4zu6$25<@ZCkm}FSj07_>5c25-VN64IZiq>VjYByd-Rz*5>Q1j4k-`51htvrn zPRjm_)mH_jq;LI z7`7UR(gvOW!hPTpZ_ErjVoK6`Gc}5E82C2fr0~QqAQXC(FjHjc#*`(H^o2C#nUVOR zAaTnM!p9KmWpwx|ni!vr=o6JiqR*@^8Dc~O_0$I`7Xk9YvdBiz* zXT$CZGShP?AT+ktV&&YCAt_2J(E<+aWq2u$>4yqNQmjBTRn9`d*zpjyyCB+Taf`E>w!{#!>qT7Qi`e zYHx$Lx4KuBMOz#G!OX+1a6*0r!q8)o$|h5PNMs z4*~IJzzEagZ999~(1`6#W**)?JGCC#vEr~+4)ib9*c-^mMG}>JmY5C}A7q5JkUNQ7 zc>2>r=)yDL6tOEyd1q_UE3y9^kAMrGy6Y8sE-R!^RAJ@xpF}wQDLQGij2)Axp^06E439e@t*835Q?O{ zNO~}8${OE-FED7>D_iwZPe+S9m&lZ^lr05g1^$K`9DMUP%tdKoE9i{=1~HD!#|XqW z#%_kipxPg;u#BYOMTOc4rX?*%XLqJIdxy3&A@;-5JV|eib>LNo#`B!hHjB+%YgS0a zW+|^$b--Yd&qZ5^|KQyDq}}2`nE1#$uE=5e{}PS${1w_NiO(h7!0q0EF|KFlM!{{A z_Yq>6XsD&t*-h-VX7O0I3ANHfB(-x^>C_9S_Fn$JcG0?L_6w>DDd%weH)2CXeN?T$2 ztW82pmsxuHKI9G9^v%gl9|MO(zvT3dwx2#B_~z*|ArAYIgdoj|CYF&5vhQ_ROlq3d zTbCOuAwp-}WA}Ms16)og5N}(EBR%Jj_^TblQ~5xSx&+Y!Sv-T$&I)Isx!*f5MMos& zH1{D)b+HN4OjRL|fO7{_E^GH=WOkA&Pc>&w<`y+IW_i;^O~iqo3aOpxilCOV)iXzqB5|k5(L$Qaz@@Nuro~A=hb*6 zDnWr3D`7oXLeBUN3F~Pu1cRhEl%1lZe9NF*iN-~k&$IA(Hezxq)`pu!kKyN7h_e)B z@i_^xKKRU=H#~p-{8LXmeZhhSXIRM3a~Cc=`|NYh9UZMF&*SI$&p+=4FI@DZ7bE27 z<*!(L{wrVg>eu|%YnS}?>n?bGTu(TllZyblH_VS|QooDR^-UfDwAmwo8fC1C-%)vK zb3Ov-^+jUw1uULy-jx=M=Vcbgx<&-T#NyYbI`Kux({4-nCc7we&a^Ra(N^VaS#N%6 z8)J%?G>qr-USlyk6rf(kX2C*oO>Ok1KBpASqC)%#LT3bzwoAc6Ly34}-}wTjw3i&7 z6??AqCO@Xjb#Z8tDM$g`FS)tB!rRCo>?&`-V0w9IAOyzK)blbnz+KTqRK_X2)ElMr z)4Y;x|8)8FTJOk&Xo<~g@(7M6ccucSHWdU+MFiy{r+7gGBDExPiuTv@G6LAm-oFW8 z=gE)+@AyWMNnD|un#AO7k%8?b$q>!}?R62OUnWdEvc@u{41*ySB!zRW-USyU{8Kasu z&&4=SkNBY2%osPpS{zbIEw!y^=pF~bXy{ZlQ8eYY>9$^a8b|p6XK&bjuvw!0M6Sbm z-l3YGC$rX}&*p;kR-~1pPkKKVq<6C528%i)zkSL}n*4^6s=YyR4$Db`Tws&on^ctE zvaFu?IgXzOmnKDVvHbKfz2=ZK<%p_rEzX2BVLF$oI>{+zNk(UJuAu|sR*1}C9?T6U zACL8K1aU~|W(BA|9X&^=)!ZxbSp2y-1ea-tcml=Wu4TwX6fWZ$$&F)0VQ?AuKp2}L zJHpPH4=9vDbAUqo2usqEXp242Q4s4vRNZjc9|(YgaURjai7BDGlu3zN&JpQiTdBc$YO# zAwo`|)x*x<2;guI`7a#ue^bSS*eifMDBZ2VPMv3%%>Hdk5=eSANm{HR*6ZYj01_WY zBWQ@Eu)UK(+O`T5fYYh#)d0lZ@qU z!XUC(%LE?o7HxybVg(Zt#lF%ii0q$wp8!`MY#R$o_>|@Rv0Ss#%@4ydX5dneSv=Du z2axHlY)X0IB*iU+f@l#}#6kEC6yWOp9<&fSw+f>&E8#Lt&9jfleXHj)q z+(L6>fR^nea?cO@E`UzKDc0L=aL`O|(?Q4+V zP-e2;p6f9mse_2}Q}8ky&_PG}#a1Wd`njco{U)TS3KnzhAG5fB@B^0vwh?+OT5JptW;O;1 z^l9hui4|-aX~0##kb{cA{Vfy?m2O-B8*9Y2OwrJkCnSnmW=1!9+0;I)(V%9YDe&ls z&*T0!ZkHBFc_@Pv;x9&_5xn8%Edg9dgfR+WL55>M7)t8q;e%e?h>d?jw+9LoM$!`RM{mthiWufVwh1D6XE+CR%Gr~?LTQx>Ua=<0r{4-4I=#Y(E z3W~T=mETSLP-K0T@WZ!n-oDO4Ccmu0bD9X3&i+m)ZK#z1G`#NS7|PL6IVZ!>a;7 zESMOmlech`i=mCnr6_`)EwD^j2SsIcA$(;T7Q!U2y+5kN4_O;FHhhp+keLNFMHA+w zO~Cr2nPngW>zWxi0lHv~eHHH~)UTM8XOmQj#9=xSl0A3**w%cE%3s%rZJN&uhetLt zt)tyD!23#15<*K#uZ6-vj~rNNGWO3u#_}TnKx})p1Ky2O}L^ivprtvWetoT z@$?myy~fL0yA&u-ubh;W<)9-yn`V^Q#mUo{A6!X2Sf0z7_H$D}Nw;oS5g#{r)SonnmPs+P?FJ0`zl5s8_C-=`(l5`RXcbOWMS)hkq&P~~Qt?YZ1%v!8U%`-CO~%dMq9IL}z{D*of!{_!EyToU_igOf(?JJ}+asho5p|W~n9Ix}jPVh}~ zz_ALQj`*^T;o7({8CN;u4Y)q2o$2FX?6Fx7^Hi|4Dwf_)>89PG6<|uQDOJfPtbBCP z0%?zDkR}05!xE9q6}|oL+=@oh{7~mBiZ#`@BG&p@asM}R6*uH6a)u^G_a$D>(5=%X zn^j163Aat1htNpJL?cv3@+EAE$u4H11Wd;4ovB~p4cka`6{yddM4)OQCQi1(nmCHF z)#%)D!?w8_!Lm_XYkfG+26XOrk%do1mZ^+ZMlqj<2Fk~wBSfl)Ky^weE#`Dzn4f|Z zlgXwA_$t^49nQA}%BfGYBtTC;h@_%#-uTUL$AmdA5+j zqlk_~tK8mo*YAW|eVUY@^hluxPlU%MXY(S3Ehm^&=>h|*;ZG-b z7yTRg96(!S?2T5YtO@0^Mnr*Ksleuiff|#=#Oj=i%^z|vMJftAoftagC$T{ZU=VKr zBX0W^X@fE#W$q5B;<%A~+7jaLX?VyDVOp(Ym7s@xNi-^2Bc@g*=WbXNOzn(J4GXZC3^lc>s;6`ar_W<1Y-KLW+;W0iQEVpCQ`U)_jROhjiD zWGE1twH1L0CHIC?FzFtsCZGC3-#|rf>ZB<)tn#>@ulFV`IXH{SOmMH3{oM9&ZiuW; z`w$6WDgK1c`!eVs%QdTKWd%~&W?ff|;(>KD&6Gu+El{r?C}KJK!YbL!u8mQ}AzYg4 zi#ZMrD>WU0vBYMPL@mV6LO*H_#+Wv-19Y^EIM@d7RK0}Uoj>oDl`DQAB{Y4RT=&jE zgFDTWwbYjN4*NZ((iP-nJV=6kvx`4I`f2z{MgGMANpjd z)u^B##<|>H6I}kbpn})M7SGQIk1wvabMH zfI?(TO21&mKq5x4L?^33oN_(_Dg>aEr;jWU@0SU94#pJ@hH*je8G#FK1)X!ll$?x` zz=v%#$^#V=t*QNVtuS2zIGzw=(ccJSz5e0 z*D_TQxVgP~`nnlND0wLOE_yW$4=XazUh8cZ>;}XGbx0TqAhxKer;Jq4;Zx48VBHl; z;;cXP?LfPj*QA!|^m^~qa`;oSit{e`7`DWxf^f=0Q|bO|d(zz>ndyFWu6wp$+`YWm z%*CLyF`jJU4_!jwr+I;fElqiGhxI8dJFHJx)m?^FS=E<47}lq(Y9KwVPg&Ub9X;H# zxC0hsaer=1e;V_W^Hgw~+d>!SsS}0tE?n(8;AXVT&@YrL)h~ zjo6Q^U^PSorE&N`XdJy5d%_A5>CaYBffg-x_j6OH9Uu#pOJ!M!23=Sb2Az&0Wm_oq zUUekIu-Q{Ej#fs09sXgcH;IXJ0MPw?SMh4WqzJ};CL3-QPTW>IhxH+Ty)zk~FWBAIev9DB;j`a{Fw~YM= z%D~D&+HjeNk$>e1v-zd%)xl0tFnE&pRosfOuT_!ko9*z~E2Wt(Y4;koiva&*%LZ*w zRW4P%&>(74c^ZRo!6m*I8|`@Vcu9n@M^zZJC$<8xF(*Y!#TNsvKnY{F6Wy;67`NeI zE`12wt18NjRcWd^9(}4pwWT`HN&N}`btMQP>`rD6^jPOO4qF{@qiwzR^4gBM97u$1qiC^BndX|y&wsl7I+#EbB{i{b(GV;mBw^+av? z1*{1j4;xG5H{l12*Zu|;B>&NGKQQnbFi{@plDLQGb10g3O9hX>r@*sn-OjVj&}cVP zY*MM#r|3GLqB}Lw9UG2YzI+GMC+T(bx$&;qoUX}CBg^e6Q#qbr`jdef{PU*+Gx=w9 zU>5(pX#g@tFHm^VN&pUYmPE_1>%0zz`MZMiR}ZM)R7p?S{*p++XQ9L>-DrBAh39K| zTmh6M>)~|#=J5lW(pi|&Su&-k;W2a0&ayc?0lydG_YBS#pZpwd5(9@!S85J1 zqnx~1GI`0#m^>IRI#&(MuAc#1;p{;VCb`poo*sV+be{)niOb-N=^x?EjB@hyfu6cV zqMpiLexegCk@Kf=rePYyWPsWa@0H9x}@&aj-p9@06j45%u1 zcX}E>n*I^q*qloKZ0}ts@d*uX#@nb1|5>2(C;{0n?e#- zv=qluROh?7Iuckpo`4-rNR1L{PkUM`YLv9T2$|f-ee~&0jhE0;&O(n5>748XKHfP~-k5h8ln2s4{9~#O36uu~AiO+;7zQkWpixzCewEI;TL5 zjf=D5F1g|X?y-}nM#dGjrL4;wE~7@Zg0-XI%X4+a)Wrx9v1M^(W_ABfxjGtX)UM9e zxjK@FAPI^rSBif3Rex=+j`$`bi)S5`p1jWWxjOEd`0f!M^pBQTl~*1Ovt(s7>q)MR z{&)Qcwfb*LDXltOAsKxse)pCh?oVIhfeSpcmv=;!IG*DFo!|YvrEmECKX~IG{?Q*V zd()r%>7V`iU;O3rzxwO{0h(=Lr&$|RMpKvnCyHVdjsBSxF>dZV+=BlGOb=^p1r9^^ zL5IHf_M5)eDH}8;(Eov#mE@Lx*}1PO&lu?Z*YfO|_k91Ziaet)@~`CCS1;f5Pa3Sj zWA@9TDmSi1kQ5ph{X#bGztrv;JbW#V8b+cF0mA4Q8EeE5d`x-&UvPnz7gUBayTm14 z@>5#!&pFoE(xv|XK7IdZz4h;N(0{^V$q*c}KOwwVW#N5Og!if7VW&py#{e1y9@5#8%OMY6>_l72LaT8}~$-rG|;3AoXQH`VbcZuHXvhZ43 z36R4HAO{Ir8)5n~`a}|Vu2WBI=~3YB%+R-ug6S@5zXreWbu%<$fZ^*S5Y5)SL0dvCi_7YNnaB|`YSc7EoU9Wqp=14GV7piZ-{bEM+!q?S z=Mh|Cp^o13h~De7@XDn_r1GsNVxh{3-LtBrX?Wk~y%@aD6L?RojtYf4`tI_Q4=6b# zP4NDszc+a62Jg9q_oo}~-_k9td^dR`Z9bLcx~)IDX1YAQmk(+9sU%;%{hJq0myz)X z6j*(dMveo~_M;P#qMOC(fqlTiv4Jt^1S>7hOvDGhq)o(gng;eEe{Taj%Lazb4>ks$ zh%*UqZX(Wz@TPdp+%&v*doKnr3^T%O=4N@zN4%)b1dKK*Lchn~8^EU-!1D?4#y3BF zzn&=i1d$GdOtLe_GHH%c1g9uxSRc{Zn|eBu?)yIP+lDbuhH+wbIL$Fntd3;JYnN9v zhIvZUpg!*JZBQrMpibnVguHwfPUN6++w2K(P|X3VPUN5TUJU%>1$;z^W~k;4qiE}FFYs( z@1k@sU-DiIUfKspYl|{S|FV}fco|0I@ILJC4c=!Nya=(WBzL{@+DCc?-menr(A<-q zS7z}maWw+(um8Bds3sl13!YXoB}Y{k_2p-x=EX(7MBTm64h<*ke!=szgS|41KnSz`}7^#It6nKQ)=tru6D z`x#lEJvW|d&P{%YrKMmSF%C{ za`0hA0btA77Q6yv`5jo+a8(b3L3GKE_jxj342vwIL!K~c*_HZ0)qUP{d4)bGGo+Yd zxR+Z2VKCRyBD#@J(9tFxV-Dy`b3mhp1u++CtsA|(E&I!e74AgKn>ovH2A`LEO3{-?B^xS9($7%wy8Q&pwuBNp@T%cCg878CV-ws~!tn z*7vSe%AUgI^5Al9J*3BoJ_3rk0(d%Dic8*Zh8N#OQ+uW5r=BSUYG z+Z%GVRR7d1uqV(FkgZg2Ej23CW$yxBK<0mJP@hT2u6d^NHh15B@K zPsKNTJBDf2-q{;GYsJ z?UDYExk@nK0_l0p@1MM+A^lBkzCF_a*((`LwBPz*cldil`X3w8{}AO`6Y~4Lp5gS5 zh|`p+)nrZkpcglsviV66@`t>l!4GTkL^%D|T%|v--mnzpoPRjd&1q9tJKQ*@LexyNT%~)0wjOW zD;Z2@p^_u{`~KdLJYq;b1Lay1?hn15;glYZG)|lBwmwiv@YJRcQtN{h#Cq%t=R$Z9WcSU=hDFoATj#w*$gPa;~{ zV|{I|(uvaB36-2%YMmD~x6}!2zdhR5dnE&k4i_io4gTKHK4fS=7Uf!#@+Dr+ka`@E zO1BjZ{%1>REPXo@;OBa;WCNg^XA-ktHcDG>`mPXUh+mS`5CqF z!>yD;?3?|)A@(ps>@%9my~WEJQuuxn6Ws=57Aopoa6Q z&C=T9#PB^cG?BTp>Gv2LU&&E5G<85LkFm0<(+?Y#~Py8L;fQ^P7PGY*>=@o56 z+(~NXz$eVnm3OAU%PW3T3AG0m9lv+@dqYLHp#s@3+MwdyUe8bg&zo#jA8@t`qrQez z742Tzy#>Psdz=I=?(~X=i_Rik6zogy^_qr^X-&v@pT9R`s9&y8aNCUfhOhMZh9sf+;+!;1NFdA^<@zdb>}usE9+iE|GY%m0QFd`m?KhUvbFq~0 z(G+-=|87!2(es9f=VJ!!9Pt0;?oHtBuBvHNtyIzl; zo;0|~$9|`t0AonkmdwV5v9tOPfIw5g(rC>X5cIW~a0&a75=7`9<;1tnAHmZEtR_iqdu>ULanqS<7%T5YB2G1%bml9u=0LvHYpG?D9{93+FhR z1qKa533YdbOfH0!w3Y0p%Y3w!dw?2GTp?LeTiuxgV%B?8mdI%w^ROw%+!)Hr+i#GX zPJYwT&R8=UD9@|+)8d*P&%`SXu}8>RlaH#|czDEkGd`+iM~6pxPcoKdE0#&Xg|mjX zoZGQ(**QXixq#cG#10%AR4Ux;n?jB;UF4ly$ zY`B&}fH8o&tR)YN%K^NOwS30|`L#U0b1io!Yq>4;uV3$jvbB80^IgjuyeV5tYF9P| zSvw{$$Atq;Bx;l2N8z{KH2_G~n0tV0IiIV<1W|{eEFV>MdHKjL0pJ>~$d((n@8sej zyV;p*n{{0r9BW5J1=2gMt6F*|=4*-RMffuNWXwFmR4qhemkz9Qt3*~x-| zvh3iGe1E%GxM4M);E(l|vnG!<+^ztE6(bSI9|KPhHQnMXYl&nI79_F5ud?CC<3ZRs zHm7>d4Q}!VLoknD=Ow__m^W~nH(*x>YkIE$kg`rUdmT$M7qeIi8(b{JXFrEh>Jr|hIKP~8d1UMX`!1ty&Kzu6hfaDJ>B9>*&cim z_E0B{QiOAezQ^krbP)E4Isq{aI-66{ahKOK=*%tj1*jJ4{ZpZyC2lQ|5-(4rL@r%xYmgEd1)an1 zKo^PKDH^P7$ELQb>`1*LcmIYkNp3Id6y9hg6W*xIzRKp(f-;%>!5+5o~2T%r?$mhjZD@!Fp>D^B_%W7E&fU$ITen79cd> zKC(S_R6DQY(w$z5tfN6VY_F;=x1-A3H~KOZBuQrKao(zi=t5xzO=5v@uO}=YjuJPY z)`dQ;_bDQwX{*M+m|hEY=T?NgVOL>D)@bKrqq#9^k`jlTLm`JDLj|}Ui-{0Uz7!Wu zcu&B0;YxvIknh;BUF1KMI><_EcXw~?lCw>Co`!jXzLIl=A8b4R5S|v^2)DDFDazV4 zYsVqjK7%hnE-GxY8}r$re)bAit%#I_(GeFtIPYsy7E#jn-Qa z5fn7F6+v-*0Tc!@bn!w@9n?a>Bx4=mI0u^jtHzLlONU4ceQ}7J3PZH1u<$Yn{3h`e zr~)qQrN^qQ0^q4cNO4gxOs61p`CFko+9$Bgeud9|Q=|1NvMAekc|#mz`mp{0V_G1K z6WCUmfK4=vU{(XhqUJhp_Juz6f{*mJs*e=2UUvkaLPVdR64elum(-&;xevmJ+3+^0l!34C2B@&l`j>N0en`IFv^qt zLW3_N^SaswMW3QA4e5DU z5OR&MOx#4e+(eFv>}(^oi=v2P+m_g~lr4r|s zLmf6KsKYOUI{YH2!!Lq5{2~~`FM=`r0*sLciB#6$EK%oIK1oBJ!J+I~BMyo=C8`ka zry%|;LDvTp*X{d3#;p1LCC04z{Xk>Z{JuYt!O9N{v*yzm2WHJ52jphKqVPLuUx(%T zdPT0Um*@I=S+1``a(#`&zFwN|>rn5jpBoKm&V4NVZINv~rCsXIDVU?ri?WQtZ(u0f zvls9?DmSMib8|W(H>bmMbDD<%2Y8H;bQo+#b8~Gv0pV+4xWey*TwllM`Z_Mx*Ri?2 zj>+|Pbgr-YxxU6@Uj_J0&H{c{7vM*qQcuz)a?C`w*htqBxGm@>rrT1ma*~8>LJ67V zzJg;3>)O9s*c@^ans6F4`D^nxz||)8Kd2Q4RyseJP0x$}u1f@Y>VK`K$nhZHK;wkI ztZv5|Mqe=Qz?k6431Ytr2IJTmLJQdvz6%w!?-jvqJ|(SLwaNsQF>F)n41MfJg!<9YE_3m z_5v-=#=TygSYwupBT|GdNRP$g%)?s7Wh1wXKga{)5AqdJTd<5=OVpmgx7n{{oJRMx ze0WxCnKrcdYk5x}bpCEvHgVfw)4jA(k$cE^6B+Lz<3(ih!Cf}oPkI}u08zc;Jj5xv z#sJp8!>-v*pU@aGD&yj@IvqriTA-mFI@*`bp_hYKkY(fMxni;>v2=n+CcAT0`<8$* zk^8gTW;Q*y<9Zb!bxti0WqsMj6XE_(C8CVierFX%r~0@me^@&L_1bt=!@o? zR5P4v#~KDa)}Uf8hQDmxFMlG&o+yNbCzAM^Do!&z@oOEcKmk4aNka`IDy>E2Mbo>d zc&U<^i_QvJ2C|J?H4mVZ>oz{LO&F9?4;a&ND#1vVZLgrp=Mk(e4%=XNy4ny;3WF(Lq9(1OMKJ@Qv_S0 z4+4vSA+(L>49Sv}n~rIEE*V=m5;fz_u}TbhI@T~68>V!GVUI{l%s0`;SRrcFeUeZ7 zAao=bqH{PCO++fK&)M<$uwnv_efN2-_j#EepN6ui%gIP41(b-cQBa0odBeHPmp7ms zNW>rr7jy8Ff^jD6Cabi#xJrl(6SP8y6o}>f(qthv_<(I8)YP&xODKcS@p`ZFh!RS* zlyGzn;4bs#GMHjmky-|gNd_#$NMIJJwMJ2d_6VC6zf6!8b{3V#au;j1u`21K>F;Jr zOgcismct?;5f~mNwA2TEYhlnDE+&H};*(3)s7W``{?Jg1ArtC@ks=mNMnGz3DO2&T z?kIGXYsb4Hm>7p)tWdzz6$qeDMR5z5!C@OZmYEse<3q7zqLQ$4rfPQ;s)?&EdJoW* zefL@aQ=yJWhyAo(mjos=X6yvD$F<#%+Ub7NtMGs!UFi6o2_2XCK$YIHXORWX0h8UF zcfQ#VAN$I7Y|D17A_p#)!RFiax{7?B{S|Um0d?zgc^KBTo(-&dzr6g5#~y3lOv%g^X7m7nWSJG&SUsm=yx7!3(Db5=beE88Sk=$tp!zh+5hm^7$laS$O z=mB^S6BqujSiWXeZnEsJkF&)P`*eQfDz%~3ApTU%<$BXB|WLGa0TFn}7ij>(Z6tt@Cl_?$iuaSfmV+ zAl`gIpR7dgv%`gQVu_2%O)r7`d^{N+OIWl7Z$w*m$yM#dK;8@+2t`Q|6&8Oy2w|~* zFa3%j6!VBN)bQb~r{+O_yDec+p4y(lI<2iC2vD?Ot$UIKdulh3QespGzAxpz?wpuRDr@Uoz>5=C@)HbnyFhj z5VqbL#PkdF5LuB1~@r2Z4VL@Cw-|N}TQBTDzMf++P z0q>d0+U*bC5eP1EKu8i!`xrC=*G5b>u%GH6y(5usk&yx6mdKo(NMGt>_+eG_GuFbA zl`zIYnHX!E7dzK`8#WIx4Nx}%T)d`qtuk<@&dt>)RFKQpkINVb;CvI=hVk2QOJl?$ ztpa?UG>XY;sJT&|9gaEWd*5KaXT#H*Mk}pKv$B7sA~P|Hq{6|tZhQ#T5-Ki7DZ@-+bg13nGk#d125WI#h?>wIYLeO7YeNJix%*KG@Hcuh`QV-G z#(4V{Yo!_gZz|Msnc#Y|hVJ16*x(0af9F18WDwqf;dT)Twk4aIF)pp)sM(Dq=&-UK zD;PRhP)t&8RhM!jTy-P)Am03i`*u4~Zf%#kEZrDOU0)ZLm97gD=_}_TL<`fspcH|h z47BzGa!|Nv4lHlh$VLXpLtu~Sk1S(skb@m<;7X;Y#2rxQAse6o5Bz!&eu~T&qrbT; zRr7J=y23~MRYhc4P{F}u0~0z8^el=_Yq(^aVr_~~l`Fh^1n4oemt3JX`EUOp5cQ&J zL{qRM5nzNF;VS1jh-4u%+V@2-La@p(?mr8b3R)`|qjJze2Om6wn3I?CbLgRximo|2 zIu>p~JLcG9nTqZN99h6;0W;EhK04lch7Yej(b;ds?Lpf3=1yz`WlpxpZ*z<6 z45{Mg;}(bnfmeDJ+a#>Qf`Y-RX1}_uI1_ptnBm?uxjjupS0Sae<{>kM2-Q@$ev@2< z9;(Bpc+Hv=%np<=XJ&){O`*&$mfu9!-;m$?i)2DJ@+SPQQR;w%&F0=nLjGcTeVqK{ zYY=OD{d&GWKwk5P+t*8NgsW-g*Rn8f{Ij1K3m+t1Ga@IGu3sXR$MCx)m7k5pCE0Oo z3poku*}+nn;oHnxodN%$*(>e=(XtY5y zCsq68P|4uw)gyH<*~s!y@UJE!s(Aze7o$~1=i>jN7E?PTxd4VdK^i3&x}2^2ZyiKq zzMw@3e-O9Ste#Xol1=k?1sjC0iu*xoJORK+CRjV>*p+f}Wf8M2>+JTyi+zN_%SrrK z%3Khj4ON~u*~l>y7}gMG0bncy8=eE!AHDtB<}DfC3$twQF}D-`DAEg4zUj@{et)?@OQSJZdnuzgze5y2 z&?o3$t@Q)`U~&S!E^M#wdW*UdSQ1`yA0Hc(n^h1G>J9Q>3Crk?$sso?Z%Fs>v)+l_ zovr6maPR^FJ7RhjYK)nY(PHggB{c76UR+_Q8gCb3!bM2rpI>+bCjV#v;r1%w1EGeJ3b!#fr0m=_@pM0| z2e;KK{-9+NOtx9$a;?-Sx?J*FHaW;w#bCt3(}4v5dt|5P>G;%nQHrxAV-upr$0b8g za>D{n^vlZ8z@$5u%^MbM$-=2Eahy;PEZe~O3#&+lFi__KYke>sHs){^iaabmQE+~t zjw%~Lc}5*dA4yLadaVuV0pv%hPWH`GUx3VhXoa6D9062a6wK|3 z^ehMACp2ONIG8>Ak)InWjJb7Jw_~L#Jw36XoU_=m=O<~=X)kIfJ9UsWqP30!vp7GD z6{^XoCMV8?0@O(bASiY{Sl6tHshRS!SP+O^BdmZ;1SF&c2R2)f z9oPBTY#RWhC@$f~z<&ACW>_)>>471HWtGC>N^fMf!h*+%S`(#6hvgqeq_C0qCWa@5 zu>>iu_9lOz1`gFho1C^t0K=R)_$9rD!hB$0AsoagKZ5bXXif84)r{7ktO1p3rKkkN z835MMMBN=n9!zkAL5wj9BHQ&?x*1lsV-54*A|Nd%AEcxcJG&pl<&LR~qAl{1er=NJ z>(_CDuP%JLX@3z9gln82g-1%GRL3{-Dj$m-3>0fG5o37xr*d#;%46_&hc&!pIj|K(iac!?)`02fc zVXUxsFtqb;k!`PP$A-GX&=y8mXMi7J8Q~}5FNr5W>qK_7H*FW;?iDOQn8(NZWPm3B zf{Hc-Cn?lmeY#N4ClZ*-&J7gwr0O`lS@o%`T@$s7B!fQbjh{s#|M*hejzU=w0=wa- z76AoT#Z#DqNC{G9MF7WP7=VfG!53BHF^k20VM*&Sq|>VmZqe)`+I^XiTMf(Ge{JYJ z*$aBepK89qQuyUwcR+As9)cZ4CEu1M5R5~a9Ry?XP6%R9FnY`yg6H*v9`*_fRg45K zGS!tx*y6T%CVlt20`-mlNZO8r|DD^tyF zo%hnggi&rBtOx|MIb6z%n}jiKz~I zQb&^gOXC{U#Lys(=&qTGm4}_GML`CcRg;}?p#!XBCq!+xfgY)&+GxgYi@+)4^2!tZ zVK#|{WqPE;_EPWlXKKn7nc54yqfo&8)zhG4=W;;;zXg4(6Quy*E?BfX!6FJ_(Hot8 z;HtdC{m4W{SlN!X&EZ}{dIpiD2CM&eJ2?oO+-2IG$pSq z+p&USIV%`pA=-#?y-=10*&xUU2dBiEDy0fyfx~^RxBS?kAU!1#O5$izCS0~LC` z;ssvOLQyI8a7f%UO2edIudE^&%9z9&1-=Wttxr~D5K$h1QBBwfwLKn90+foFrsBoJ zRCK#74p9eaGc1%y!j{bVgeJS-(6h-JiL$Fq(O{BF>Qn7l$6%tSKZSd0@a3QXQE{ut9aaAt%25nWi z!jT>_f~|&Cv6wUl;;;jlAt-T|@=w)SLReZ!5nad+*W!LJ*<(lwBDRX&8|=Ac@nnMq zi6#L=^rujvtLXS66jrulQ@>KlK{v>V%0#4-5YYkKv{CNCq^&jHmTfjdv>aC1W#{LK z)Zs}}=X+B|q?}$}Q9>_OW9~&V_aqP#lBr;@*}=xqp-io6$2w+SB}HyEiW^jj=c?X@ zDC|y{p|H3VTPZ7`tu8zB7s*g5%SGxAT|3!AE8DSxZ6Q`*tPHKKwM_1}qf82hhaN%e zN>re<2_O`GUOVAlR3U?yzz}aJMs<+nGw@0~3CEp=i*RXHvpr8LScPV0=@FCjedry* zUtfv2-#}X|Eu52r3k$V=UF2x5rBkF;8McEvvq6qn$L!5Lk>m5diMNt&K@Q-@j0mzS z8Sab-5-XG;2*q%UbiL3cZ9ve&Fa$<$V#B;5X)o65f`8|?i$z20G4HJ$Fd$k7BKCYR z?qct$1LGdw8uIrM;|@+p!KH;-j&XNTY3;?A$(uX>!*U-MXaR@;BaAh`IJk*$@T@y| zm`+xoDOk)4&;`7>j5E|R1hAOk%4ls~O`V5~fI#k^yxPe$}F|`rQf~Q4TV~ctPfR7krfEp2kKKJ-Rr`XE((A#5-F@* z`Df0P0nS3fsSemeaLTraxNMWQE1f|l!Wz`80J)@L{l7O*R8{;ti>&fc{ez1(cJ}a8^kNRHO#%!$aW9Xw@%}bEIT7lg(UIN z4M(mOu7`?KR)iIQKHA;ZiBW^^U_X{}?>ec-F zU`32D4E#R@<&dZGvF9pH)9soQ@7}y%8(mEJ@oRFVJ zohRWKyL-G4^=$gn7BHcrCzFNACmqkV-rpBhJ3meqyhwU5pT~cc*IGW6wsnKIWdvKI z_Od6wkgxWtM7r2msKq$GX`+BE6N=kUk_EuNSz7~6rYHR)st_GVG5sTlgdHEz0n}T( z3%dt^@3a5YQ|h_ZE7=_YhqF?^&14q0d1<>8YaUBK)3XaClncAfx)|#i_hx@@*9CycHOXkt3ZpP+PWv!5{9 znnu{JY{x35b+QU0)w4Z%@PcXO=}&+##G}&?*xKjdbWjuDd1?b?w^vm`rlj@9Do06B zByTCUw%UF9#Mwbir|ggBLev7q@eQAiGD#CZAB(d3curO~XJB@L5B>%fgxIAhm15Xa z@s5_8CETqreoI;uiNlwm#O;X3Z#_&=^!Ib`sXA=L$T`7f&6-3PX9rDd93w;cMTq)6 zsj-76vEcZV=Q zm!rXHp}wZx1b-4H@D|RH-odlwl){es*nm#|6?nN=iPd(M##G!}`K6%Wa2Zm&4E`8U!{F7mmT3*J1kyMNjq`_Yk_{AE@t&c{9xEP9KoXDJz@PLUh*(bKTpJpgyoD>77oAUqfA?q2Bn@Jub9$}<53ex5ykF&sP2tFk% z{T?5=1(#8QMOTZ&doF`uEUd$H7+um?FoqGx`NmhFUmil#@zJ@Cm|`5l0eqP);x$7p zUZV7B0mx3zXso&MZG0g3WvW>mJ@6`c?W2Toj}P5W66m4B+^GON*W<|dKCg4R8b6^O zLoE5{U*!c1-9ujMUaw_hi5v;c{_*{JQTNycv>zzcQuX=To_fxQ3bkywq zrvtz!yx8$MIedcWIM|6FO^KZDPxkB%@67h>G3<+!nN**+)+c#LE|Bvw15R0Ipjc`xJi^~`M|#51A9UTrpI4<4+c!F(UP8! zyAI1-YYv75Ad(}Nr}Y%a0S%jD#&4_u?9574zs*;Yi!OSpIkZ5PgfDc8P%bl(HwF7< zkeR;bbGS(7K($-47v&lIPuQ*IsY6$UOc1Nojx1-8h0_C-qo0F^Ky7FawWqzuZ)lIy z$z}6tkDdJJ882?QjpAwo-za;7cb%M8L6pm;Y}>c@h)od`UB6rBLT1x4cj<) z$#BiEdtg=@2^QihI@(Wv%BQ>|3WJmkC~7t*r-|stt6hSFv7FOn_x~j9 zZ^|&E2`%5_kTp^%PA#t8V&D&04ggI0*CslFo-EDFD?j(zW+4#u{l=bM{)<=2sqb8p z#mV4);U#w}^%wp9;-0pW|KpW%`n#-n()=&Iq%|*^{HAZ_0j77eI_Cb$D_Qf5jbQU_ z*%6Aw{Jk{ku6f#Tj#bsgd0M$+Zm=|k~N!Dj|J9b_G)pZQC zot@hppbPHuDk2Z@VJcuI1J=0jp?%~WY!{f`lE9REzGpN|tYCzZ6$si9g#9HGL}K93 z`t9n=c#%f0v3OE;+RIuv5zTmvXIN0#S!et$<9ICq9YGG@0z2zf(uk7AF7d`J{6qv6 zb&JgDI)=*&)iiXZC{Sn6&q+Pi=}m`D#JG{D{`#i4+8eg>rHW?QKtL@M+UT5tSGXz$ z2DFZ4D0Zy=-A9?{cW+a-<+oe$JFsYe1s|Z0IeaCHPRQp*(^k%~h0%4vr_Eu-%?L#= zM=ONhVFM<@?8u(O2`$Ba24| zPG04eta&B4dBzS`d#Bk%OqT;uQa-kLk^%F7*TP}j9y$+(jq zqPXMse64h-$Wa`I+9BT6WkH&?)2j#ONB&MPo|oq??>VxKUdaFl6coUv&b=GGqybLk zx!&t?lUK6l$py;RbX?5d4DjIM(MHp+T;uW9~jMFRgw?nJ`r0a){l1>Ff9a= zxZ%tg#21_y;*Ep6ba4NWZ{8d&NZm$P%VCE#N5{q_ciWLi9(mMJM~%;)fAlfT-v)qo z;Z%19*c+!>z_sh0h;*tQD;ZHlB@G0o=^ic;#{YH+_bgV$z{y?j^`Zl0RYzuGG$k#p*;S2aHZKs*z~s;?pBp8;R4#`Y~8=7MMJm{LAt4OqGfU zS;b&yG25DUo}MkcE)VP0CqdgV$VOB55sU~=!1nF}*p6V>_=3t^RgnZ}B0pRr$+Iv2 z4NMc5FS5T-QwY{n56C@*ju8t&tKq`2{=cU~Xdv6Jp-N(I8UrO0Xe^p2ahN($R9`s{Z(!8 zP-z`-BT1XYA6ViRHfaS_Zyf{C;T7tPK{0=W~AR% zUH^(nXo;YyM7%x5+3@lMuKtKDfMjfA;wK7Bk}GDDY*1i0X6dCFounEn-1b+tR%_72?RJS%YII^}+ zd$V`c=T%0l`-=2X?EkY~(E6uB39RNa=sGj5FSk{DA-HVE@k*8V8s4z0W# zw-sEKG-~?-eli`}hi%}Kxq;)|BKt|lPCAb-`0%b)^f485600dR1r1EN?E=}P=d1+NXsto%Rn)=gS1FR1m1$&MB1{TasuLENlL%TW;MtoxF;z- zgzvN!W568}=ri8o_jGcUKV%PtlXudp27!c@W@>e}xB7i;6S;6V1Q&y9DXNNj|UncJV;2q3J2)qIP?n>#6)utPDpWIETT2*tg(jBXo-iX zOqH(VM|?cCQ^j4lpz`Nt9F&@JTUAG5aFr=t6nN0vId5nl*{*mGy}(0Wz+?r8TX|XG zW5jp6_B@ppc6enQC7pQ%SwVcsl(HoD0bpQ}9Lr64?4#bS$qKw}ijXGGQ}I5&od1h} z1evJ|{})$vOq|(+>9YqJpTp^KACvKYxer6T-t zoqYc|wjF$5S{2zTwlovp|B|xD^D=&~+X!pl#h$Ut`?81?$VI3WbS#ebK?R4e=~oMtL|p0!2>F@%)V$Ky zy^;llsJSH{MRHzR>6t<$H@AHM-&%-)`0}<&@)3gz9iZT>n)aIf=t;m~i z>GD0Ub##;h%)G-7&r2_We;3i^?nHEv6D>1YT4E*J6R0#>(WO|mtLRcJIt$T-vIy0* zU}-s_M06RX@gfmaM3$h)krPx<3ZjIH5XVqPr~aCX5ZAQRaYC>W)fH7lgy=69A&%on zdy5dbD5R_tI@4*oITa3e_8>&NuNDT}3INVHxV3p`Do>_!gP&pRjgQeIB_61Fi zkG_s8$O!NA4sD@e0OFPAkP#qkP%sk>YFHS=qc|9q1oZf3 z9GLJS_OUb>=lwp;Evi^DdWm8J;SO;vX8{<7;ZFiRXFmxO_$5w^HYO4HxjUo(jP8r$ z^Ol!~d_*Qq9nvXH?cm%^nn^4wB52W}G)pPz5%0^SBwCAP`n{zj5yv3Cbdi!oh>~RB zY;5nOq{nG?}ZpC!a#D=J7ypYpy8{f9fGB&i5Fs9Z{tRNQ+f&wSoHG%1O( zMjcX;vMMGf7E#F{B{yeA#DUQj!Whxh)6>d$P-R z6)Md_;Q6XoGAYRgo=Xn+zhbqa?FORH-zJg|0vz_va>JXA4<50P+!u6cG~&R510e`f zkQs60#-ItgDhO-ZMH<=`*sb}UPC?Od4RRMbWvU%38SbOfY^9-M)h@kUP~OW-h8&!I z?vRE~E=WU5!3iMeBFR<3nlk}NvC`VVD_C=W$Xc`k^|t0b z%VLzkW@F7M6~%5Y012Yl4Az|QvDaCMVs{kU?k0-SMl(B6j3v8>Vib7_q8J|rQH;iy z7gQ8ugB_w6tRw2)Nv%05im5fHAc_^OIT6R7pC|?@>((6jH-Kkq#(|ZwOcdK*Sg3MQ zY%zk(X`6qD2vC&8QtQnF-fV{;CLR|vJW&Dzy6K3q8%z*eOhJscu)KJ(!`m~maac!! z`v&6Ybbw+iq3mYY(_#LIg`e!qM{*W91stU+CWr$|Y+=bDq=1wSf}oo9R3dZD`jb97 z6P{F@TMTL;o*GDpi#u#n!r~<^9bHN{(LW_N62@o;A5SlX)91Wr6Qvjoj&NXE`A)l& zoHT%hDaQfo>Ua7Amy>;=8Am^nLGe_6DdQ6e`Wa0QDoU zGJ5bVG>oXjdC4CugLjRe4` zCVApY2e=r13TI9?`rwQ?jdp7G^Dq*N_#GEkG#)}Fj=&oY*#$pA+W_CV>2%Hmyr)~d zCu2t9<^dNyO(=O=3_j(_N<&)(e$QAz0g#iSK;Sk8@8~kU>op} z-|ho4c4dB}5+JujO`X9BWBH!?(w#b zBa!QNa3l)R;{Ta-qwn)ZjUkDNWkF?`xovm=ooB6x9csf91m|O6sC*xO`?u*X}Q=s&p-E9i04JP&vwEf_&7?*+ylUJ3^)>FX3}wuKnXv|2Xj(V2(mCCz|A(m7hO1z3h17l7(PDdL$JIA zjOGO}lYRJkFK0uwawd`D#ILR@=nQ3EG~#Raq*pe&!jK!-WRp(5?B%QzE7vR3Xi2)A zo*`&pzA5aduN9i_@7PaL5n(&|4Yeg}^UOI08|cEc{Z>2$XYF=g<>}t}T|0#f2oL*J zXr|FLb~9ZJ7tqG6DFSZ2QYE|l{R~0!+kT%B9_6DH$7hC?Y4eBLZLr zS^Mz}Vr14Bt>seok7pJiIf&Q5!weT!%4?t?$e1iWE+<@ks69sBMx;~6BFmcsBM_dN zO&7B}T+rSgre>KCpy73})h*e=s8f_3K+ASLjQNL1E@najDrCF)5R7@OCYyMJ+V1%l z>zzHzxB4&2AUFd9mTu9N5x=soG(JmihnV?-lKgUGv2i0{u*u1pHAa5RqEj?P-x%h2 zZMcx_=D`3RTX;DVp$CmRC(iSL&|tbuoNqygvpq6#`B%*8puRHqYIfIcKXoX+1jT_o z)oQjiJceLJlmhm^c?1m+>&}bdX)N}Ae{nmG_nw9XX7D|FA`KNMH^0|G)g-Rl!miny zn1?ClG*wO+XSId20Yr6@Vnq)ycoOpyShz*Gum$9jE`baEBSoy$8sg} zAT-qpnGWwgWLnc;` zk|g>$U~(PoCuoL-F6IapuCfa~+Z|V&p3Pa(K?KZe7P)?9s8t<$FOM+KHbX8zA%~a= zj=&CpZa4{qqd+_e)bn=OPlurvg@7_3O|@eM1CmCz^N1ym*3>|P>oAR~$jY5Yae+G$ zH`EKQ-!~_1%8u5wE7VR!xZM<$Eo}VwT~eqCEj$1PDLP2TRsI9gFX_5Li0kG}r?QTq zCh`<{Mea|K^LV2Yd*29G`-HAhO+aM@Fb0S}V>Rw1SvpR`Y71aG@nOR8fp62p^4EDU zk1BDd#h?u1v5U5TC4cliZR!SZs&MrEk-j<)H&>UFP1Yvsle$^*{{mYM7BmU*OZJx$ zOc+uZiQ$O^ON2OSNGLPWE##bsg}T-a_I!#ZS3)kYvEAf+w$OD_ml|bcQnoZ^XKg$7 z=VZN(tLNA41Ln;ym+vEy#QU#l_N~SvL=~?_R7HO_Jk20veD<3{&~kHN_3AOaT^=62 zbWPTrhGb^H??sp_Fama&Gte}@;2_iG`(V#++0-07Rj4Po{#ZRbc{*d8=Plz+Q}yhG z>Fh9^w!*hV@#0r!A_O_x{sja>*Rx}%vpv2N0llJRBSyG(@9VyQ>d$|f9skUI zH{CS6Rw7r?j~!Pi(ifA1*#oxL8bs3M?e6y}>KN%45V|rYNgNZVr$bw34Q$v zCl~Cvk)edib=dk~^Jbg7@r)2@d?LANK$;`BNn(ARpmlXF4Pp z5|kQeP>N6w*+j36-J5S&F#A_FWuvO7uodcXu@T=4hCLmk8_ngv>7 zG&xpnMN3VIWy1Yq>=ARIqwG>k<0Ge{U@Feq+ktm@&g1ox(hGiFc>t0|<@G30ZBecb zWdeQiME_BE&Lfqw(&Jr7+Xd}7ZX<0+(j3FHmDsgBo1s*w(p>$i&BtuQQc|9XN0KXorHs~Kf4OZyO$BSt59jZp-evmTiOX$1jZf+{Xo?QeaXObt zb3{VUA$rk1{PLle#DUQRE2H-Q`SUFMNz&N6|ILN|*<^?T5982%Ul#bCt+UkrVW`5n z5+V0?@5Jy=a#NT<3errV5}%~C+*E=xK~j~kEZiVphmDJs8Lg zLHg39){})=?q9x#dS8%B%A|L(D7>tqpK6uHKYl2~Q{&?)1kARJ0JA&cm|TLM`GsNy z+f1wg-9|`+sPFtLR|*3^HN)~4&KI-Lq7_qWu$WY)*6btcW-bIV%CQxZesWoFL)#6C z_DHaqowFQm)mI>CHbR`t3_(*ER68xZpfV!PS#mp=(?EZ*+nV?T0yP4=NWXaX_;4J% zjdg%iaD=2CdmsH1doS$w#7vODxP@^iU1!IWq7PVk#1Vn7q8@j+7vh2^I zS(Vtv6x+Yq3#7n%+$9XkNZLrM$c@+)pk|5~Pxw6U=L}P`O+g-FP&ONvnYbcQ`93#q z1D8%(x43HTY$hQ*)81Vkk|>yr>jE!m<5FX)=QrydM1jOzPNw^x{VV_5PLI zhX7Y_KT(NB)}_f5rrN(qK&y7=r64qCDOU0;C?)}V7Sk@{?^2k2{^T6kZkn}oz!_MM zb6d=1##fdQm*7NtRI;scUX*hOP8;s(72K^rGY6C}Rcf{b3q z3D6l#Fb6)7fzqws!S&Ypf^1UY5GC?Si}mthQwzj#%I^Z59XO849{^9;bi?pux?$Wi zO;IVx#0U5AB_TIc*md=RD_{Wszn;j zG=k<$UkIww8Gw9YVH}XTX-pD?h5W=&-@0V>+!r&FsW4t6S>8*$8B3qZ(!pXT?l!WL zQ4B>yax^SnpJX(bc{2tT&I#Jxf!Q$f9?865yXZqT35uhTrxq|xCc#b4eHn!_`PG4l z*LWA-ZOp4ciDacPQsNs8YA#Q)FRWx#aBlGWPPA2r#K_Q)T(ljqkeC~{(oX&e$eOnw zmYCN?&D{Bhp%AQj)YxHV$PjQS1G-vB+@<8>8?sPDpen_4q)YE~U9kr`u^;%9Wa(7%n>(EivN5M29AJB(PGl#z_z;M$k<5;5u*JFqhXof*_feJjvN;ws7?*ru?mL@`FLJoh zJ;Cn#2SB;^E+-8xfi;04Xb5e`YCRs7c$S!e*RLJ^PgP5QXPba{OeM1U}q ze%LM9`~aJWIVogz1+PIP9pn-ACZ;ZFG2bA`Bl~D#p!Dttc?1EH{Ht>M)@YNHxApDm zfbM1FQPQh)!h~K3KxkN#0`{%Q2Brawewic^%rudXZ~)?yTyTMD)S7zpPYvUtXam>9 z3YO(b{6Pd~4X)uyX;9I(ZebQYsOEDv9ZH)T6Vx;ZaV-Zw;)sKJnySU1R9!Y=~z;5=x? z24^$%J}?~4BS@xQRhv)G#ol=#+&0)zujG#6sR5IN@?wyr1!a~kY%4uN5OY+M=z7j+ zgr{PUSv<(nW{vnwW4olrfjI?1fa>aJ+5$vMv-n~PDSH3W5>Y(qFtMXY;Mm}CD}b5U ze7aee5U$vCqS7)LnUTaOMTk?RJ0wK)=71_DByd=Gcp5;a)v^U} zlB`Kk)A5*r&|-meBzJviv2P7L21toUf+u7S4u1S3>Vo8x%!OC0af`AT=WWLa!XP_7 zY=5qTZT~bFxZ6T3;q+im#b9!`^4dX#Ng?B+B*XH``6;Hzw3tZMxpA89JV@pyxVc=+B8e^x`X#xBB@Qj z(EouV{{ty9KG9y!RLw{l1hteO$$F?Ky5v-sl4N?v`9ZQ~esH);4t6#5Gs;YedXS!n zx^Sjzd_Iyl^DzDKC-5}=NhjgDOx~0UD$!b3jdq#MvNJczzZ7MG^nZ}S>h z4r69B>W8HHuU4YDp~|~;Y6#8W56YR0hd1A~;sBpPrU+XFQnQ)jLJC%3w z)UvNtC@Wwff#v7a)HwfFi~1vW`7LM3gP^ul+(wvYzC7PHQV zsw@OugA&K^?};N$XBMD;brX~Fs6wyLy^+e_LY;~;iW zG?4HKE@a*TgP&W&Jv_8#$vP*z;@#fxt*ZZy3%p?Qiu!L;zl-h8>~&(Df=9N%ZaI+48Ek%PN02B>|T?c>)^XnUVfn-Zg+#EjC;$fwEcwV|t zEI!Q(Qa8*WYe3l6pOCp35Vc``a}HWU)reE?^)cECqUm&rwv`o{1ExeE5$fp?`1g0I zAm`l0`wsNz2VxB9@yDQW?uC(3sZh~s^&#*2HU+xon4|(4m)(|HpbnLl&pVc#D?{~_ zFCZ@v`jYqBjvj*c8EIL;xBv$^pbSkX{N6Yp3qaIIlBjAEijQzu%Bgla$tkc>i|o_p zb_ercia&tGGW@|ET-ct}^~V z_@DtMUGc%TzTku5hS;df@WH}TY{Sv4>eztQ2a_WKhHfh>|0qelq@@arjMXIuKC2Ve6ieG0bb$ZL-Ev^76V*Lx!AsKUd#u6$M-aMg6e&s0@4lF2zPQKd6 zC6=jHjA?NSdc7can-OuNq3Z7nQ~^Y~VAJ@95AH7A<~+1iiq(K+8BhPVw_rS7QzC!{ z5gH8BA`6l%GPL2S^5jhY`-I*;UAVg38Hh;dE|A~Dx^&5wL;goTG=n_slLX=}hrHy} zp-oaDzgr2`E&205T`y(JIC|A z+8&bhDHWBZDNW!EFTG>SV&J+LtGSEqWuq$+3veveRW{Wek+9>o9~mxLIF6J;HpPrRC)#9DsVt7b;x85QlGU3jN@b%ui33F9{k%}@lfv}8=K7Y)Z?=nOecH_M_`FM;*py3p;ZYe92^4?!h4%2-AH*F$)Z}P5< z@6yMj9;Ucl&qEHQ07J4T0@!p_eEjeWtN5efi+q?ri){EXv>+yqgzo|)7AwwD@B$YG zYxecu>hm!sOtMFzN=CA{j0xjv%A5z;eCv-2mwzs`ME*)aCS#O zRSCC%ZP!lxVsu@?{x$@%G`kaCE8DSx;bb`BRqg7kYnps1VR$4HSw1!Gh>k2NCR(Gep3h*eiW4Y!^k&(q7f|PQpp!p1fO7 z`3ngZJP;2hjH+xX?<9-AL?6sXqf^ zv{38pTsG1thXRC#{~mx$`*UqbZnUosse|>hS}6hnRT!KDPQs6}$(kBKQw89>_H_Y6 zY{BWCgwX>4ZH|RC*#ut5Z3pM7sNgj%*LjAO|5U87r$ zoiNy^md(K(6Cen6-cUI(4T%%uE@?UX=_ydE+a=es!sL5&I+uwTfXX3Z1BGoA095A& z$K(>WeqMWH0v#n80-cU&oJD)BFjSosln;2{U^2#y7?>Q7r`4x%Cj?}B-bw*21M%iO z5QbM!oTzkS@#FM)wu_z)f}xLE6@S)ftW_11xWGW8R0g=TFyMZqcC64FQillvP7=ud z+)mAYKpghqfi)OlxOs{WJ$OM-0d78YSrBv9moyI%Lj>z)|CAb#aeelxQ8k$X=h6{g zS!e>F4@1I$It|pp1`QrfQ3Q%dVZ9$_u+Y$~PCEeuUKKHb8$)8JC45?94(t#U472vp z`)Mds0zE7oLFC0WaA_UMOfYgErE>&aFK*EwShcKNXW(By7^34 zGLRqIBU7>A9bUs_3mK1)QtbtJ&;V{h!+8tH3xlgkF;zLbB0(8EZwg|07*L|Yj_@4jjH%lte|AS=8tx?AYYfvdU!M3rsiJK#8s z2XvSZ;C?pbhG&~wYL0KN?A#_sI~SV^E^KhE#VZ)JZ!63Wfh%)WDV%B!uHrtox}*Kr%RFtu#Z5K!JIdPW-vq-0 zmBz|cv$hJ=#P$RFERzKNNHz-{@aL`uEM&6qV24qsy=^V@2C@b!6uKfKMd#dbf@d(I z1ZrCrK>`h98W2MW01-k#h~Mu`lYf;>eRB~HLK*q6#+Nn)}YwVEBW#?Oak8}YG!Y*r3Q3f zLfD8X7$rd-wFH>DNP~9EY?<76yVkW|X z*fI}v{*p-s5>b@pf%p0pta)`g6~@OB=0;fICg*0KTpZj1GSb!rWa|nbWBeU1ROTWR zJ|fNlS~6#}8Ry(%y=D)cYW9(ymm}lK)quDK9qP$_K{Y~pkePI-+T`BU0Y!kxa=11yXU0vCZ1?`IG`79XGe5&xC&av#O zc+3^sqj1c1l~=MmnvX&yZiPjO%(2=_?o^-pksaNy@%MHI^AUItlB=F%I!t-kI5*&F zuVE7sA6T5w`TpK+eIDzme}TWZ9_bf?S5bSU00r+(7eD7kUfD<)?&`o%&Dv>|Z(;t~ z(@*EknP()xxWsE40*e2~7h|0lu(>hEWOn0I`NM#(NLqb|SF*(j$B5IQnajMSEe3C( z&wln$(6qSLsq=EZSF+~mHzCB*}i`8&LlHBaNDp7iXkyB|6Tsx`mPVP=ArMZ8F)U~n6+}7 z=WO6vla<_uGNPP^gNAE4q};=kfvym8Fm`TH#{G;8Btpgm!M^ zHr4W1w(kyH&d4pCnAGwaF@tr2?Pk1S8dy_OsVaIV6%x`diO}S?MHJjrZo;2QXm*v+ zMvG@^Fzg1+$IvpNJc-wq_bW;8q?`$$3xnnp9@=4)c6D?P#8aBu>WHo2TblT|4I9W4 ziB{EsnN=n3C(&-NEDRYtkF7#6wxco9B$ESBrj+Xe5MMxVXcK=xbf7j-HA0|Aa}J{> z2c^P%RG^3{Fq_W_&6V#kh9krYI;PBws3I0n$I}~pL}umYZh|_ai`P`acU&d90vHL@ z26Q+485zZn((cFRg46cl0#b}a!U%>EFx={$+H#|A8mO|VtkBS=<{Y2}V^CTI668*3 zl3}(R<})5chk=|Z723Dmg~gX%!I%e%^%`kx;V2#euS0MTGEgkb;{ zLm?h#p9B`$yl;aA2t^7DTpgC|4;0$RVbPqMwEDp=73M1NfbC#iFsll-QUNXtEL8*P zGy6O*nv$n4#qXdvZ>Ufg<>9*+c20wuxG03uz$MF%I%OsDoS}|#%k#m0N1_OQyZjL8 zSuxkFT!_Xj=2(%lIB!id(3ZHlg+PX})M-mk=V++VaUcT(g*G!e%3(11Hum(`Md3TiM2W)SM7P@X0pFvKM_DPCI`4dgxA zM?iT2OcKyqYZR5?`EEcfl{9Qs7>4+>3SuZvEGC1#Y~C;n^B74VPNs0n3qWkk^Sf;M zIe6c(?HN)iNyTYOBN1(!QF|HwfO;;*AJBqD_!BHGL0rAvhi@c7Q>!dgy4V?Z<&Y&3 zG-1W7zOwc*rHhM6s>y*s5_G_0BnhzWbtMURdEd7B5FJyJ@K0rhdXa>Cx>N`xK>`M7 zSt&<`QvANx+x&K8UIphc)k7cfTLC+1BD zbCz_USLzU0=Oa`s83}Gl3Ph$|Ue{WJHy;j*T&(8z<@T61Rp%gkb z6<71w+`lPbYkpGeqlH?Y&*r@ToISUfWd^*1iOZ{bOC|=~#eDL?FibO_P}PYU39&CB zry|D`|0P9I>?D;?{Z&*xQ*8W{N*m-8OS z;jqU9j(hOK6Ce6{6%KyjbLtS}0#VxOoY1l%Yx<#he8gVk&4~T>tmZp~;tgL1oq+CM`V&^sJ`I*4y`9bl#A5>U=myqQCEq5E|%%F)rP zM}$|Q`W!*2IfhA9k%@#}jt{ly;DvEIU7vp}%m`-hblP{96%t6M00d4znQI6*U^gH* z1{JyH5*$#v6)I56<%E=;CTUU5Jp#@Uy8Q-;9D)Wl%GYqdN&^s%5v+mbJ`H7Q3I|+; z=s!Rx$z@DLN{GJALArYsD%hE#=0NGKndt191F5JWkFY#=n61DHot-*LpOSuX7nSCt zgmy6itO&U&8%?C!)IB8EC-bl_k2Oh#R9J=iUCP4li?viFhFDHS23pJJldBG?81y&i ztigEah^xFgmp*QI$Z08&45|?S1ER}$7oMWUpoze_IFqTg5$sFR1t1s$gmaBTK}Jv4 z_S1#6g((+nI4Elf6$jf6`x7YL2#W`lZqViSDZ=cx9rqrt&NOC=!LV(xxTqiF?<0ur2*&DU-6;aIYrupI(7@1BfZld z6S0DO1xZjregoA-k3vg!aX54%4gmh7s!+F5h&|)o8ci3=j$BCAg$T%WG5x36yl`+e z$}1bs#o!b=`(B|l2%pTJAU3fzt7vV*YR!?=nxi|;sHyRjKHG61x7K$KA976#TuH_=t~EaB988aCWpNWHw)OMXL35`Z+|ioiE);7AQQ(_YPB2d4k*H}_PK zXANPtSj4TM=2-8rWU?f@aITUkW*2)ipQ?zdpsx8@OXlk9u@4KrB(8jhq^p!7_M2kuag>ofAF7#($EFE{-T9q8 zkp8mm)pL|cDQ<*NTqAhd1wOtHDrVBNoo)PDLDjy{OFpBgA!)vpRypw$cQ5kd22B=+ zV$Hd$g2S(Gr-3xU80>i(v0T~0wIZ-0iv!YH3}g>h1n@l2A=fW*qKM6+DRu;ZaFlPH zI{;D+(!h{d3K_Azkm#V7`>-qptX_;fp7jeoq`6a$4Z>xGP$Au)Jik58F-NLJb5`K6 z0hCu3n%1L(izPD?WZzP-Ztz;)P_XKa$e0;{1^f9qvct2@o#|~;%fhwZj!i5?fMu1_ zt8Zs(2n6FGQp9kAc7wO^0YwHn&T~twS`kmS(#@1xWMj%x{ z*fVNN@I$j`IRv7{LUx1=l1+MhO3s*4$T1`jZ%(7(~gevd{RXe^mR zf0*;11gAl-iV-`?%#a+TCr zA~vDyb3F(6u3Rm>{z62;?EaqS+dB%i)TR^Q%>kMeXd`p|JYh(59qflR17Y6*qbCa{+N4PeHS zY~N|!@F4l{v24+N3J`LU;E4I>ap9rT0NmcoGX>@kGFk+ln@3ZJ)Koi;>W7M&2QvA^ zmh4E%J_{;KAz|B3`e>vNgt&A_9ojNCu@N`!0r;dl82$O)(X`SMdQL=;RT8cHmj@&@ z))Na1(pgUJCh~NHZv2;uVd4(IFz+7S4T} zG!Zei!CzXa$czYuez{csx!jMqm^u70|;MDx}$o(Ii)R zdq%A2_P`CZLCAO+mIxTHv|3(}kB`)=$FQR*4F+DGtZ zMHOl%4BTL0Olw5j;SaWTwys6m%(dRk?aDErumVk(8%|nMs#Z>HWyZOcEs&V&z4diU zVw9ToCb#d*)lwR${*m6bZYPigLn`4H17p%wx~` z1rlNSf~01QdxvZ{AZ~7DwFsk+h-4C}KseD>*r`&GxH=nraHg;*;ewnOEF`G4$N<1; z3o`T1L<~i15g%!PlPxe}f3a3&;J(ItH1t8u$O;RJ&$V9M&qIBg#2)nA@Fli0^)aiJI0;3>p^r%k9w#eE|Nh}ioMaB zG79cg^-}{768G*r0I2E9EBb+@N998m5as&Jp0_DK5nyBH0E$MrM784uYe1}E%ZQ8) zL7`E?b4Kkzf^S@{Fx==+NS*ikhQdXOq4S3-Vt^q<;|dC9BvR^%7ur^Jz?{Sm2Ul5Ap0y3|`ROOlvR zOA@6Lwx#F-4>puBhs_nl}?&5Ws6e8W2zG8_D&ujgLJCi=14x=IQ}enpF2+<3lrr z@eMH87Vcwzz1Z#RkkRx|@@qN%h*}qWBX%D<-^Xwg^vmxw#zW18{Gusi7;oL;Xi3bL z;Sb0=xO;~>k(yrCdr#XNLf$6X0Qy>%qb2y6>U@`bMZ0bNOm@8`JDfnVP?vFjhoaj- zd9a7_cBCcs4x3Y7U+JWv7(l}H~l$q04y5z#3 z5twN^zs_}jls>joQf#2<4M{kG35pFgmA(@F`Sfn_@fbGneJ^YPQeYALPOHp=ctkm0 zBRx=yI5DX>(Z(|O#Em<>-}@CePGk${*@Ee!VPi5Oty{dNAqRs%q-r5y(0jb>hm;4N zfTF=#5f_gk0SxDWLOpM^F6)O#43yi5yIsOAEKjb*Ng^dNQ>fg}B{+sx+;!|ohBY4@ z*Pu^=3C7X7ufh9$l(q(ZUs!`?O@oG)>M;i7--eA_T*%V%kpcy14^+vq64a(tmrziq zyK}quYAbLAdS$<7ckWKLEctLh;uUQH4wvD|xKeZf176rj<2*GGpGXG@bvFt*a;qX@ zzvamUtZMc6bX2A#sz@J>^6C!3=97I~pF)gIauW7o@6iqq!?S`}EftxTVzy`{OVRg4 zIFLIn#7x&)$|}y4FM0N{_vYj0R4#JxJmUQu7pA8M16ahM5>5U0huk-EF|8z4ClZP3 zJ1ko=CNawOr`iQUG#dEC1(y2P`A1=Riwky275DyE`&5|w06eZm|2mQp321PnfD zg*g&<&*n8s&0HPOyl3vYX@)K|POTPa#2 ztsbR>1dDcg`S&QbCF0Avom2&r%GE4{IXvZcjZTmnfUv@3KyT(ZIBrJCVD$if{Cidh z!!Dh5&BU#u0s;u`3^uTH@Q^EhP2AhhJJSi{Z4~n;n@Olze&3=|W9Ow6>sfC^DE}R&+aC zc0X=gmehf!KQ+ zm~e3v>%F**g5Cg*f}V=!Ka4BAT^mMYNQOaWJ6@%ygVzVXj-or{7jc6(X4Fozyp=>9 zLA1Z=g8ZS1!xKt)t+!Rs#CPU{mFknV!hhIQnlvZuDom!!Ci;4^iD)8e`6f!SVP!j3 zuys%yDRW#QQX^->#y$v&Dl^A1j!d-Fx-;e&B$Ow;!iWm~$2H!s`5%cV1^**=j5u=0 zu$tI8!nbn!Y}(r~uaYh_vl{`Onz{<53nrIr1yR1VghdX>Y>I^QLhrgjICspnqP0n^ z>0Bq1#QrWTx;t4>ay*Ma%XWoJ8EV-41V4E2W+WCCt2Nu?6cD2vq?BO^p8(^{wq0<5 zYV`(GJ~$l3^Y}m2*1ogh=}n`RR;5|lzfuvcT{r8nhDHO<4GOY#u(xKNfrd3*wrr0L z&j+`igKOY5Ip41}xV2pe$EFb$(rs{zuY?sWdu031EASDkELsw^rh$atsaC7!a?Z8M z&Yg+%8?g05e_ht@JIUJ7I2doh3%D2UFe}@!{CO&^5}6lN8l?O5L%=&}!={;oO_do= zvwyxKuZh|OMwzy$;3O)CmN$jv-}Alg{!Oh0WA3mF_$61mBeZ!!FtVRbCjos zy8!mt1hCXMbGKZj0ee&JSi#5~D9tFhb0pc+^bE?Ts z7g~iTiv|~3&Sy}}wjRi3x>-?X@rWV1kd&jTftd+LDca&`d#vCjy0p*hf(e)s!bjyZCeZ&Y>aATEWSg(#8gz7pIjRFgxe41! z^u}wv^V5VZF+eZeMWkg*o1R6H4$=?kC41-w@A(}XZXoxHb=GPml{OYC$%$td{ciRG z=HQ?*>hEtUyr(pst$Qjjc$}K_daGA54@HQUNkzEZyyQ-u6x~DK{U(2J9tsMx{(iH+ zHxEVUNr`v)dz&7W$Ly;;Z6~*TB^y5ZACV)q0^Z>zZTR9I>YY#NPOsGA9xA#zw|Gfw zo)XIp`IO%6m2&PO2ibf4eg0JMCmzYWw1Uabe6Tui5tRsrMag<^^(JpuCPIFgUAH6O zq+0$|G$SpMHl#_-Qk+}Wy9({~b<4-~k6zTMEL>Fid|cnm^QFU*f#2=53w&u$KloBO z=;53t{|#KGS>ea{3*-93)w8OH;%p`$(S@NrmoSu^lqEs^+um!2dzA)_|3=omx*Z$X zt|F2M-tqlffB#{ResV;Z_V=rF)l_dvvp1ga)tfceiape(;T{@?wMeSc#WyPh!~QJ@Ubzb`==$B|qb8aZW6hww4S;6lCV5LS0^ za0S2q^>28?8{YWFH!i~GO>g>*-~6pN|Mu@Je#`Iv-dlhF5B_k;AN{*O{*yob_y1w( zfBdtzz3pv({^x)G7x=vW?SFaJfBLKc{9pe1zy7zg|NH;=pa1J`{`P+_`@6sYhvh5I zIk#Osue!22Rb5qGU0qXMTb-^(64cr~x9DizlaQecSiZG;$gE&`oWE6RZJqOrA;?!- zvgx^T2W`ntHwP$RtjoXHI)pdv_AjJ$zTJigR?2qbc6)*b?a2;%a(Z~M(;ftCJ{v&G z2_0YAj+6MPZjAG*)C_H~5Pii&#dD2-M#r97R$ zK`St1^2h`-tD^`$-&BdIG8&FwAA&qkf>_UG~}{Y6RV8@-Zk(f`JA z0+vr`${y44fagf{M9W6pyf+rA{#W+*nGzA%E8SG6^w-wkvuXP`dr_0?{|kzGQ@8kg zTd@D!@%~nSZwvNUct5|s8@UGbUH?ws-iUch?&?T!W>^!K*O-rVv2qyFAH_$|CAsDowui4G$5 zke9dqeiP-h&-Wx64|^q>QR4h@OwkY`;Ys3gWv1%em)pq;vIa<3mQXVK`jd2s|Gpm_i-=2O%Kq#4#fjg zp^1~{a`o2WZ;^w(mUuyyyA$gbIkI?JPpR(^hP#cq?vTqAy&7j%=8(5p1d|9NP=WLeHp%XhrXk1sHcK%Cn&h5sl_Bk%i>iI9Q37f^ba`}G zssHx#-u(wObh;(&cJkD9@(jbz^@UR|4%shyGls#8l*~TTGky1yUdb@{OjP3PtxGU? zak9g|RH%6dyL)Ge)yT*A*hhcAoNf42%q}%pNI8Snid+>Xi(Pr`otTCt%!~Zq%<8sxD-IJI_;V zm!M4HT;kUYl}?fVPOhak&ZoWP<7%RP6`OycCssV;m25f;=p-}=zxnm;b5|tT@C~nF zUjT6e{Tza;!sO2L7hOkvQ_l9zwLEx#aJi1=u3I|G6nm0ypm0k zQJp%)WNzQ}qBghV+5SB}LHIqdWbGe^Nn>*n(()<5?#8L>V>#?(oy zUsoj78>Lt$vEIDb#QK-sy%FofrQJ?qJuS~Vi8X>VefitxMWxPGmyW<0i1m41$yRp^ zmAHD-36)7r{3{DJN7-F(Vm(!;)I=qp!zzDo$i##x9L|iydbL+IVy(BI3$a#p9Y{1Y zv0mft7#Ls9dG#jNYrT?zkuFG%dt(B|%_-HGE>vaWkr{~f`Grc1vTasRuDvdyG#7YD zBi8g!&Ood$^h!1z#@%u{-H7!?Uc(5Q9Q=*j{$hV`#9A^P#P^r@dt3OI3`xdu4U8== zqT|duuWAd%Iy2DfcX%b6A-$YB!vuntc~P61I6QmP>h)g9+8;*yKIqH+z0G$&oo}bN z@=7mebL)J6mA^Nz(wphs{D17dd7K=@kuToWJ(30n@Yq~3VACUEBa9Dm8QJDgmoIs} z-o@B{X5X%D)_%Lop3l2$?_-~l-MU8yXmkL>Js>~=G$3(~IK+r^#3}CKFbw7zPLFL4 zVT1X7zY$Rt)m7Eq17rW*{;^XZP0lewlgLHKD?~cJ%RDceU@1;On+|`fKTZu ze!fM&RNdt&6tg zpT&hh#uP@QC(mrb6pRHCPwP(&`|f~W6jw?p7w%lN!Z3QiCikZ)xZR zxyUnFm*aFxERIU`pv9ijM!w9bH#gMMmUt#3&l%NuKHlG3kM2;sxQv7&%|ZG9jH`Ch#;HI=IdK7whjS=}gXG-0aI8TY@ zYi>%r$}u8%Q=n2j(PGYENA%JujAKx$AUilyP?*HTVVz3YR1nW9{wjyEL*9%Dj%|y8 z5pU%P2fQqlcDR4J^lc0(Mu($ocPZRoDDW~?3z9GuKTiB90>;G$HEfI^QmFW~qG#f0 zG)e0J!8H8XQE7>=3!->8JrV&X56opDUmlD`W{f5cMoCKgt#|0H)2Z_)?-j7{)jWYU zQNpC7<)V09qbaS%-zq%`UFijP=_I6{#E~6|J5pKCt__~cJi9c&RZXteRQI|jlga11 zMRWzO?^21mYKH>;c+MGqk=(;Z>(!ZkR6_aeLnO_)I|@aaIYu+vL5?YMoi z$caTG%rYv=1lhb}YJpxP)2ju6BKAho4FQp$8NZH&&dGU^Ux#db zVjE89K$>t8K*u@;mSgPE>D`7UPVkh-MMDtDZlS6(ZzpfwdhgB@XsgMhRq#3-_coB& zJWwv;dvEGD;9Qwv&=hu#oC^ZnxaO_bU}%jEDex{W@A)q$8qSZ9s^YWLix+nYaTl7x(I#NZlG@^MKsu3YE8 z>fFoRJZyv05(tQ`{;nvIXK+Nj*C0qO67UG&uwyhQpg?S6PemB=+IRyedVQ>!;7rCq zN!0)Wp?R*n70kj&F71uoceuuy>Y1(@lkp;2{4AOuw838%ZO*a!?*wuQDQ43o^=xO zo8Nt;Gh&`st7c)i{T>u(l`ia^o*Me;`7YuB4NX`uFiu>JeC&kS*S5knplS4qVNlS0iFw$UDn)UAWWE^0y0b=$QDy5AH^rP@QI9l4^F*-c6h% zOP>ZKFHN zPRPr|(LeGPL@l-`1LzdgSb6IJ1!k(;eYBg_(Xk?d-zo98X@=l^m^Ui2)`zM)2IYc>IUe zgzWP#5Po6xolIclbDg-|LA0|FPnnhtsVe$|$%5&5KwaR}Zq;F{7P}d#wz$aCS(meP zP^zMeVLibj0LpYz=uGFDky3RpabknphybGXE*9F96})6brfoS@FO@k;7BVAWVF7aL zR_9&`Gn~HJ;3_Y{*u^mfhP8%m1eS{M5Lqof#@%EtpIWesiwTa=1UtrsTW*H&0tdIz zOK}YyZ=l0X93BxvkGZ4C%BU=q3dANvx5nI#uP}a0X@6Zd8=*;&(;u?#`f&=6(cvd> z9Mu8eu<^lf)9eoQD2p)*romQ#qrnLEH7@*|DA)IpZ#$Zs9yGUPYR(3+79fhi*00EdbL&@3 zcuf+ulqZlhOod6Z7D_Vws8=6PnrnyN1bJ_5kU0te%RzYKCpLKnn>0KsGUi$_wLlITv(+7hQeM_JpBk#m_j zS{riV9i-07FZFDph=811RN(Pj@eQhnhDyzEJwAkBa(miexm@nhJ%UM-PvCc64h>Z@ z@}fQvKhs@en`pusXX$xKH=<`@j^^aQO@QmE4iOWq++f7L5Rptj#6K8ZRStG+@zQdE zIp7#fxzG&S!b8g2%*0);+fYH+20U&zbJF(V;S0*!%)y;++eOpW_PCUdrR;!Raom)$ zO?ij%_Pi^KCuX_JvIFvAmwgB0;3-by+-=c2bKW-xI}JMsZ$o^uxA3-|?6HJBvl3Gh zZ?wf2(S;Zi6mWYQ*es%eHe6!CHyGD|ya2}AX3iw1ZD4(l8a;GxLTzM8xfHkf?^G%K zD6oOrusS>h+6O-#AwuT}){$Rl%*5{%hIi)Y;RpTJLc9rDpY zj||cFDD26wUSOSE|+?m-2ZTLoaHGhreD$@DG* z3M(xvH63p90*o&%Zpc-x{>6Y?-0JyFf2O~Jf{K645Ld%pdBSnL$1jq}3~UwM zMwiRt9bSa7h}Ds@C@brPQf4~78e(D|?{xyU9;WUH9#dG{@9C@{ODDDpL`z`A4-8dP z_j%e9M9g-9-&Nz6Wf~OGjK=?PhWz$58oy-3LJ3opYy6!-ju9EYdk-bOCk{+C$`f8v z(tDzu^bSg&SNVnKIVrh!r0EpcwD^14^O)0v?i@t|pK5P9&$FJ#%JKEc2se%zuScNZ z>`~CaK-VHspj_UBg}_^AS=CB1DoJ-rC83;+Ba^_go9Yd-t8oVF4Jw!?>cGI@O&b*# zc#edc4$CpdBRY8$LkKceEZQ_?x~W~efYG_Zt!3zuwCZwSPuEQNb6uqU`OFtPN6TMBX} z7Me0u9+O;)<{J(dI(1um?j9`w)9xipJgId~^@O0ijdZ;!>@46zEsHMUmwHC)g`7q$ zK09_~#5P4w4|qsuA0QR|nTI0b%n<$z6DorzbI!v%Ud^gM?9>Jo11cbXqzgf0N}wfK zdUIwxkQt-FGIJ8JI|zJ5a{_5j|0crL*zkA(tEa7dR`kdlHSxrTx2Onr4 z)mNrF3D5iqn>KLig8D}GTd2lC&b1hF<&t#UTex!JrXW|O1HmL{avkHLPmGt&$5oo_ zDnT#9`yME2FlW%vp_>;Bfw(28Fj-4oAa3)@7!VY<%5w^{J3Q&RrQ%1Mi%PFGSh}#G`^`KRGjV)8hUSQ=t4XJiis9Y%?m6*;S%=I}F<2HUI5nZcy9iw9)@*`7GI_|gs_n_OZCkTTvm|g;`LK*eCkl!-z z7o3bLK>e3~mR;wVkZW|~HF|!zko*%tCn}(5fxHEWE*5pV{F+pkryz<$hfaomUq;4! zTVfI5m4L9INEw?rxfnho8a!J`7aG#Gk@Siex5rmwa<;hDbw%3$VyUMy zjxAmIn3R()Cbeg<(z9C^BCOf@;3Q9H#aOyVYv_sTH8ibsSW0G=(5GdnkE>ZiGar05 z&}hDbuIrES&>yj5t$ptuE6)1vJ62BC(RZx07s2t>m|T;N6{j0b$4YNTt@L7=bgXnS zf7p(drap#_^*ef6N`#c`qSlvB>r&l_L$;yGBF<3L6cfXd+A;34-hyhJ z#g>KR5k5TLIgud_!89Cj$&Z;Zvf5z*Kzk?@APUF=H0N4}zC}*gSiw|K5+sn(&7Nu)4|wTF4b>f+4(H*>0S*1L7bST(1zZU@NpXt9r2_ot~}K1#MhjQ$ao0lnPj`2&5Vo4 zNlC9!4i7gjA2?*R+B;yV@5GoM$u!7FN$_{=V8f+;eiy^PJYn zrEYP`xVuKmuz7T)okQ<-I|#bRcytd2 zCG&at3GrHLvbRz9C`3gWZfDEPG3(+4JE*8*{SGqHDYg^cN15EK!bhwpPd43eZ zhEq|;$;^rVRDv-TnK?a|v6DHcqa^k@iU|lU5jEmQ$a9w1>Kvys(Qj;{$39cFA^~P- z+0y4cj5Q*TLX_g@b`*(`U6$tpC=%iCCk0T}P)v?9o@;-FmHxc0S6Iv^n<>99s z;oM!lDe4v`oJGY53+xL}>+vtPXltFiW#w2YaO#p5ni$eGexa(tr92DMyjhY>WX<#i zYb6nQ>SS&HZ@8op78c!ll19TWL+ziP!o_w&{h=@r)!Bvu?c~vg2XVtgHi_+=4Uc9o z&g3aQAW277bZ5TRY1)hcsnN5b8kaJwZE~R_*j~4i)A4pYJ)O0HrGt@6V#c<{-BNT^|E$bdm)Yf?Nl_b7V$H@;gVQ9n5T3xITwpIWFOMl+to8&J?NVE%ZJN z>fYL81cKI>nOZIWvOFRxQIgpSFc8o1(3g`P2pOg}n&mD)736Vypn-%WMN$zi%_fED zU_s4?UdGxwQM=<8cK@i|<+F(a{w!jnawDz%l<4@0)u-@6FR9b~Dl_WqKii8;2)JzE zDMnDKGtb?T8r+-`ZE$nkhU*~YQ)6{rHO^$VPtq60Qz;jC%KLrFvei>88}iCn>^aTO zMcJynkSr@OROq+NDmvqbF@of0B6b(-e>RMSXI zkcp!1*JFNOHO^#B!<|L6N(>;K-CEHmka$p5isl=kFs9cF3!R#2Wo&3^K2ePz{h$K}&s$C^Sj{4xUt;8o`dc4FH*Y`XW z=2c@t*4B|@TN-a%^d1#y>boiyuD(-)q$W{RC3l7@xw>SU0d=PZ4G9N;iJT;{u@arj z;+_fHUR~YLWN_RU$!@J_i(en%$2%uB5>=V7Lmv}mrYQDl?C zGeUGnegU4grPK~3Ln<444scpT*Nx2+xQRVt%Z6a`0748%8Gukn0Wqi<(n4af;9Wo} zeU-2RrJ#8sXL=#lDmIv>EBoyor3$qmS_{?u!+{NoQ}7RnmFt0eo)be*nTq2_m~d!)x7~K<38oM4SuS^Ubnwg)jw|iG_mnBP{N!VDV(F8g z`V{Uz*>Au74><6kgFgM~PaiyOnp}f&$f1WGdf4HIA3nVje*W`c_`(Q`|S%GcyBl&>FoB(6jGrd)_})L;As?nL=ZxfSJmM<0FkUw{Am-~Yk?;+-gehg(tp zUhYNt=YRPZT#fQWxg6z3KmIZ9NBKW;L&{H%I}Vqm{4}~Ig%_pp;bkd&^um;d!NOpX zJd1-R@*E$W5G)P4@GO&Od9XsBmBER@Nx{i@y5%_~I8~n0g42UDf-~`)B~MRqwmjzq ztAcZb^YEN6&+1@}JQoBP1{Vcu@$|}bad3$|>w@*crNL!*E|=$u;7WO}3i^T#!PR)K zk>}drI(aq**9ZNi|0If&M&T(XHD^f;)TVF@T`@mw|KEUmlW3(*B39v zbD2Ds7q5`#%HmbUzTyTvSIcuv@mhJVD{d@aU+l-TNuC>uH_CHU@#f+!#arz?kL__yi1eq<#fOWJ$n$9NvEt9=dA#^UaY&vg zi@zv7ReZYmO!3*`bH!nKo-e*oe6jcvo|lWS;Q3{71kbOEzsB>M;;VRGE545Bjp9~3 zZx(-x=Xb@o@Vs68J)U=p)l#)It27(WoYGu8^GfsaEGTv2Sy)p5sd=;8|Mg z!n3Tj9M6imz6HZb4BS&JXe+a@N6hujpv%uwRo;8ZNzhZ zsUOd#(hXee>$0sfGA?_#aww%J-Xykxk@2!94{zfwuXZS!H^1H}8|q>INqTliG_>e$ zU$vLtoVGvBsm4XD(=)Zgk{r~NHFvo6?bmUY>`lxVR)5dWLL|LcIS%D-lJcpZ4UZ2; zn2#iE?Xjj*8-QR~nA8XaYq(WFt#NofwhA<>YI()gW|1E`{4-!6=qQRcVWZ)YwdKa; zmW$lDg^73rGU5yUBCy~@O=RnrXEd$_zftovx+$rr_r(nMSo;kn zn$&h9(oH&)*Q7(^b!FXCqW6cuqs#OX6naDegAD+`OE1&kvE=946^(~b6;bQ|jE$IB zr!Mn)|1yw0jw`g@*a(j6ZM%7>0Do!;yQRupjfOpSYtNGmm&dh7t-F}iXcDi{)*7{v ztk%lm(9Nx~*w$e=%|3(QXeksg!dH6bUe+V8muls3dN#qxAR>FzQq?ho7AMu;#&?e* zTbSMfJ<-cJQ2|`9Wx#70Wn?V;xO_g6MYdVQ^k(5t_aNSdyG}6#U|XVauPzB{{1-U- z(YX5{p$yU0;qW{-oI)Vrim~zF9W)9s?8!H^2f!}SQlVRHFPLZvv4{;1pEG|hho~Id zLKmWE2t7Lr-{zpBVPY*gl06M9oX2-g8c$Oq&p=;61F3)zj3|^rv!#EG#b3DDl%k(N8yQIf@^cS(TaKG(>F+kiuKZ3Yg z12MiOAZDnI^G69W?|3>d58^3!aV{W!kPxqmAnt4q@ddp}h(DHsxYr>wh=q1th%ff^ z1~Jns#GQE%?+13z83V-K3nGZOj!X7pd`m#gKvQRp65@lA_RKtpc{1e;Kztt|K0SiC z+8pBkQ?Ya zCB`>0@yU50_w&t3KzR#MJ~2XhD`vwcvf`=NqhRHf6&)#*Z+6rSWuaXca^qv^d^O##fF3=7G+rClA-ajBg2;?_@E{MhWxXOx%?R^BsJ%6foaOm`{jc9%&Bq z+&3D*e2>FsFbnOvFyHIx4Q8fSm`Czpet?W0KL(gP86`)iy`dVI@ht)K!z^aeC}Dn- zi5KRlD0y_exxM4D*&6nDH$E^RHOUTUeQmMvMCm6aS7p zrPa6*zWHsjt#T7#ev=Lk)Z+%5!~FQwNti#L>dmh?YzDK?t_$<)p59<)dWCr~59T+? z_|`GN+!Mn*Py;i*C18G=#k@93nBQUISMy+gi*J4dm^TsTUq>)+X%6#S4b|mYv*Oi- z!7Q}v!aUp48_Z0vFmK6&d0qg1e>Db}N8%+(e+|s|mVkL7i+N>~FfV4}m-ArmLt# z9OhGgk<>KOz4<(c&0rSVbzwf=(;Li8uQ2!J!F&N3e{2jecg8TUseu{a5-|6&n1@FR z^Ce6?m%x4Sr#G0HUSaOZgZWM}e(M-u?ulXU zs(~5b5-{JxVs08G%=au zzjO>R_r)-8ZGmj&Zmq~>d`rOm8jHDPlrX=+#24qm{3_q{0_IhOd2Ix9wK>eQA5Qk> zwCU(ghs|IX+I3<6t*1AbnOr zT;-ed0do&wJ}-iKD;l&-&DF3ih4y}``%3iC)F%qNoZGsXb(U<~t64b1qKfcX>_bLuEzK8=Y_$%DC@Z@K~V zsf79D2@{m90SZFG0X#mnPs5Th^0^i^K~p{-Y8+do{8t?!F(;> z%mK{H2=nX+W?Z|{Yzlm};qqjY!)7oG?Yc1E;OPx!rdOD^FYT8+{P;YK6vjNL{;0oZ&JmJXC=jddrJJ@?krms z-)dOJJ3PHrk?HGH@orY}cVnnxXY8NQUn7(7Eg_TcV=-I7#%T7y9$?}($WwX`>|VZk zJ!q?(z`^nwVc;GZBAGTDEDKIbLY!X9Kje@Z#6r97U>WrE1~Jp?U>V38ERT}$SH}Qz zR}6Ds4b1qKfcXg)^Q%$9{3H{P!2mK7A#2lYP@!wkkf^u!_I+^j1ZtuT#ah zS;e6-RIzV#RXnSqMdbI+vQ_c%hE;sW(_0mpzD^Zqmr%u@kD-eFu{>B)BMe8GmpLFb~8q_te0QZwZ)}vzYrv3G+%OzBdo%WqflFV4h8ww?r_n zX%6%9YSNKrQVQmi95(C8Lc1=^CwqE>nduegHF+?fO2+RV1I$}un7eCW#{JYX*@59TxY<~G3m4kMXuj$rO-4)e)#lQ2(C!F-OxW-trwx-hTu^aeB2E6fao zpRw(oPsRtv0P|oBb5{+__?CeALKbuLC}Cd9#5d)^d;#Cw2$g>+q%pYZgCGSe%{$L36c zzaZP^jREA&806s^knt@6^0O@FoKb>2%*1Esf&2{L^Z?|S3G!JH$Ukff^4kq1#tROb zfh?r!g8ZVVH;|cLLH=P5$ghy?GsggOR}AtXLDpl>2>N4RS}CK4YT(DK1pL1y1E)2G zzbI#kUuEJ`^Wgs#-<$&YUm*P55&XwAh5v;`$v(bUs*k_!a2otVx-R^0czT1M=@tHC za^U|h**a$p-x47Ip2e(e3bLNytP;T$c_6<{GRpz-b4;=<0{Q5sAg^k; zFq}O%y)YEgbwQrv=?!G2SCEg+0eL>T?HU8fJu%1wH6Y_#0^~(3=J-*9yo8CDx3k9p^12x0bp$z**3lP{)_pbb<5dFwbI8EYnpv1sSf9(ZKg}^Poy`|B z+bWOq-{Z`@G@~i>ziimQ&vz&ddQz^7{Ay2b$RoJ|KO+bD3(4wF-un(*pW)tQ2ky@6 zk_NO7f{|n>hKrnMtKxq)s^VHtZdF9`Iu^=HSifW6d;R)HSHCR{Hw@M}!&bllXjH%T zp4{q(S3AR2zaKWL-!-1x>WAcY>bH^g``_=qenX?H-wBJ8(mkyVUhfQB{rt@1Nd#{f0+ZzpEM^^SQ|xw)*`;qx#+K$*q1!UZ;Kotl!_i_xg>D zu6`FZ?4O&RVXNQYHLBljp4{q(JM#-Jaa) zhveD%At*58y4=ee{=jP(_P>!1JB7@Ql8(Ts+%M`bwZ9>Ok`P>oF=x7Yj0H*fnekm( z?K6YYwATcssmeiHEg(t_^Z1LeNpzq|h))_0+84yHy`PL74bB-Q8j+3|(+B}+LfqmZ zYsR1R{rAAQ#Wn3h6c!YXTczIGwt)E+4psQYf_vS^#NU-#f-Q;21o!4)#Q*6HnbCp* zMPCrh3TjKFMe!n_3x*;I$x0@c@AxwXHh24=bGj@K9lD&P4jeR@*LbW&x%Z*gPP_!DU;`brg=`u5d)@1VR-89cdnLHn9n&;w7p2 zXqxBpOrAZP=D8}9=R-~NT%F0Yd(%AEW%7KmX`cQ}o?V;fxiOPx=cajX$>fo%rW($T zn=^TMqg3Ph^o~p(z1gABe0p~#53llWT+Y3jJh-u=NuCEXc{EagBi;rxdE_#MhPXYN z$-~Q*5TewSLFgf-ja6cAyT?6G=I+S9jjsqQPA^VJ81GV{P@we^f&WvtRn4kCor)t# zr+%c1G#~j0-4#Z^#Jz5E717JvjyY&Qc>5Sw!=GN$fJ@z4%uorU;JOQ2G_01r zN#hj(*8tUbey0lrZ{fwx#%X$O5ifX2gaVdAw3DPSAzR{kP2omfDBQ!w7r4;RF{k{c z=Qa&sEP6PZ-pOtW+6$jQ;I+y`Bkjr*x1*(2?VXiI=@EwLP5N1wufewV8nhJ|x*ssW zCzSwsd|w;IOpzD&+N$yhtna4$G+HxE=TJfn)&%rH>Q0T5ydb*_yB!s{IqEi8Fk(!= z?r%5K6a}G)Kt+WW7ACkeCtCNhR@3AwF0?_}SUgRYuVvh-CKr56k*}>CSTRyCl-u7* zu7SA)2)J0Ga1js71CM+9>Pi*oBr&hRER8r z@t3?$Oy#;DkxRP7_6TAZ=*>49i?LWQO)sV%2+|!2_@f}@t$5?c^H$e7!t$k*u;jH~ z(ZzTWQgK5$q;soro?8miI=pk{pkk{G1m1WG#ORO{=hd*v1!?5oa68mBJ?0iV%|WHf z%LpY{GVLrhC&f1|hdqnZ$6%It_8Z0vODz(Y65Nb&cgHF$;!+`U#+JFLf*W9brjmH7r8by%%Qi) z=^18Pdj!EI#H}{!r|4I;h~+i7;Bn<{z+?NLvTGElXGctg&>#C>^s#@n7O+d>#^FzI zucfM^SI6Pfdni0|f1K$$yY0Ta+^g~-{PAv;a>pe6P2LNCANdF_Sdsfx_T6{ikAM6V zpZLTlKZy%g_UHX7pFa3t-mMZhGbQNPYG>7Ib!)1r4`p{A3`ASv7(m2r3>FOMoHm;0 zxvk9)Nluj_5LzJ+U_J;3BI~a;{IRun4u}t^O;ebCS}g;cT3*#-VTrR~-Q+W{2~Q6PZ^E3I=;t%)71ixU z8M_C82xnwbE4l+JDwyl3EI`4))m&6i4?vo5fX2*tri)ucBg(gnJm?MI58=A4eP)=! zw8`>xFMpX%Dx}Q<DvyV8=5YR9cQIj}z0YHQo{R>UXx&Hz@aO(=i{9e9je9 zRRKc{S0}X2R{bnBM^)>UalV&f7*0)Mcmy@8eM(0ugzJDPZoanL0(rsjC#BgiM^8tc zps%auby#s~d3?u&$|sQG<8W8#C<+ey3gw<4@_c{=SwCY96n`!QBeqtJUdd`6m=fq~ zo%8#2np67L`e<$e2lv7;Ga1{bbgb3`(V$R|@woKjop;_h$Ew3H`!wT>=Z$mGyGgB) zI{Zt91f3$)9e-HyKt$r7cwD&^+VF85V809z+Jpb2UE9HV$2RzB8!Ct`Ad;Ol-M&{v<0>5~fB3-+-u2M<#2UeMQk}>qgN!#%HN3u52 zs`?V^vKQANWpx%|aCR{haX+JD+sZV2@4&4BsYUIT&XTQuCLxhEr~Zq3+&g%cVtLzx zOLW*~zvnS__WNU%iAilKvKumFQFa^j$X&xd=Sg|*wRCiBTtD^{`Ajvb8G zo5`!%*LFC#g!822xfRLsc$O2MHe>v8cqZ?NDY%314u)FM!Wib(BPG~34SU<;Cdci- zp}_qts{n%nSVm(8Cx6`7(r&8QU5MDMcMD}n|L3)_XeNT-+J+B7YuJNpA(+t?hDtgQ}v zHhP-?D#6fUe9%5%eWJjQMSxSa{NwZq^Z_hD(SI>;3VBPLVoJ_G=5OUF_gbE9y0U&%dj?&5Xaym-qGtP3C))Y5eBiGQKY&Iyh@iaB;DZAC0wr#R@RE1>8 z%ErPaNRYLa7dhT&@l`_zV!Uy^t5_)&#YC z*%FL_psm3etvt`tc|U9TZ0zqx2-5z3uXq6lff|n!Ol3_ZBZ*Au%UECD8|$XVH|+kg z*G&JF=wto%NKh!~jo+n~7F)f^%8fQ^7^wNz-u`|uQ|~N>YFvwn<=gJK6%&7Z?#bm_ zxuXNiH(S4b^rKk7?SuOp6HmT(6gD3@en8K-w-9)epk50hImr&stF zhM$k_%KXxoXW+KXul_0jzV>H-_Gf>7#Mi%m%aZ`zyAo=VjlaS|Mw@j5fg5@f!%mFl(SNNE45Ob6(D_OC|WA^hQmR0 zK~=B$01XD{xYYpTrbyigW;19Qv4?me!!p^kNOSf1?=Oukd}` z!57S7V@8+2gZ|zi|F0;Y7Vu*_N>ER5;PNPY@k8Pi2A!6NZv}B?`rmk`H-ypL>dk&6 z+nKAfe`c*r%b6N)ywHN`eUj7Em4zNu=gD*d53#W0#2lq7XedhF3#j05J@y>wFIiG~T55nnI+n8y! z?`x}Zfg%I2#Wb}yIJx{aNhEmVt%xmx%Po9;G+0BgugG;p-$hccxe|lmbtd`_XlMg@ z9i7e=CiyF)^BTYWPfs2(CCS5`WNiOJ)3C>UKz@)5bN&K_w1n>$9rGckI4UX?*ny{t zkp3T%OA`H>iT+2Nh%SGY=$lNmqa=EQiM|;pV&#<3k;Y@V#q)ig`F0VOUSPhj3rjl- zA-Qelh?vlb=lZjVk`w8^Cgy{YgNhfCCf9Nnve9bFS1k@@VvWz9CokxUT!4$g0<^B z78xR~={|aYrg{vjp(<@Mm^CYw%C`7n_ISMmNw80e>y$F?qU7geJBr}eB(-om9lYs? ze21%Uy%!Yhkw40gO=T!XIGftR0JzcDcTiaX7BBg5N&Jfe77;MNEZB zrlmaoIJtV1eYIF-tmHC&mF@s#t+3r^!4DG61ivV++%hvfd;u&prTKG^6m*1(ag}qJ z_F$>&7KkE5;G1iaI zbiyX_VWb=n>98}*G~+2uJI14C6K0ktp#HEu&FPpB;4|(g9A`2d9STmhxMvdpd;^Uj z*J9A?YFs$sxbWCH)Uhc{kHN~-3qIcqenJ)V{RN@C&UBx!;rQEe?rMA)K@!?hB|Gf`S8}bp=2CqFLX+$sN${e zVj@FRrS^K-7h7dP_6b1-s{l5Kp~CPnb#3_(~uk=Y5xgfQL2dI?t@ zm&eg$sHIFYcQi|aJW6&XZ(0Rj0 ziD4>*=g9K0I3Nu8TuK zP)cYh2(@WN!?PR@PZbXv<7lE34=O60mFt`pJJ;|bVFlvDq@5pTXeI1HOS3#KL=^rRoKq(f2C+nJOuQJQqvleSyZktpd6OiCXn zO}f>S?$B0|moVZ7;qwnAF*;BLx3|*W8HmIkGkoOvWUl@+viD@NiAQGG7ta`M5S=l+ zu=_H()F(6Diy!cG){E&7Gpf06`8g5a?8Q@Tn&MnnuNU{clAPqYC>XErdp7s0=X9zb>6WmIXa z6xtt99hEz6l`ZOxIXS>luYF2WxWmMmdK$EB>_$c=;^|QIYcU=Nt)D}_T=xMcIVTw36(RKw}aM+hI8F2+egA~2cpk7T&Rc4`+H9*+4v5O=1 zkk!*PsR|J0Zaa{HovRkq#d$Oc1QttBjN+cos;fy`CQK5XnivofDyV(NbhXrrI74eM zUUTRNd25w$)n(DB%j>}_oS5}{@4>ew9iK|mi-`w)x2=Fbcz20c9B``BWpyFuU6znm z%Hk1YJ+?LK8Za)U(41}SIAl+>h<3`9FqrE}Pm55g(*?Fg7m(3SA8dB-Vya~_kas%q zvy?a;)!1l401lo~t1SNNVYsCQqM+2kV@lzKHMS@oh7BY@r!3omhxucR1el`k*ww1A zG>wxTy{JWiqhF;!ol}j87^vH{h3YE68chpZzqvb`1UXeQCwCNKfkY|AYPtARq*06G zcpY#61aiEr840TiBJAamR6-WDw{I2sWoJ{Tvnh4E3Vxf>cGV2-3hA$y1cXSLYkuVm z|3^0A8eHO=B$sz=Ju8zRjiC@OlT$1+wirLIADLikqJCnyXhnTwNGaRm&LdT;-RD2T z*)D^X1ZQ|N&FI5KGaVg%O15iY`tSQ?bX=7~6GR{tUCJ%;cFGLRdnPpLQOUs?eMT?a zxq!c@m%&ADJ9Ui%?{$Xnl2m`&i5-2aIkaU(=b(El? zMP)KcqjP|==pA6Ovtm|Fji@HwdXaddM_#Th)FwOWa@sL4e$M$;b~ zPLj%ydd_2#!dGiAjJk+TMXancF6g<1)wb7PSpgPYll(Oiqkx<$Jkjx=%B4 z&)A8s@b|asdrk@A!|`279Mb8#l2&@A%#gkk;y>X=jlnvuz&~ybLYk(8_^fJIG%{_V zDb%epQ0VL>V}lFgjU4Bt9oIb5|dI_Q^a*wXn5>)V@CgLhR zirH;tRHx+Zrpf}kWqAMGH_+juPKlYQT0J)9YcaPP(=e|f+ug*0lN#N@Dj?bHBV>P!mV zsb+#x7p6Fy6vFEHk?zhRke0Qxt8wmuKpKE6;n-?q##adaaOggDmGm(;$Mc%62?b)b z_JlTpF3}^rrKfZT`Ic3%&f_(q4x&yDVafFmN1Lc2L8b}kd---Wf}Jae(FLB+7-cW3 zW%Tr1M%mD^JQ)+Ci@bbel)}qu7LOktOAha1&vm~xO{C>2M9CS;b1li_!dZo(Rd2DM z>cNT}<;PCm1c}ZW3yTuFA=s_c`4l%_P;iPiZjb|Wo^IZ2pOU3Q0h@Hvu)Po-ZEceS z9qUNjno_xDS7YjT=olpyqMe9EZi}N#PBl zjkz2xA&Zid{;@mMX_a$RB7rlkwF>&3_m;WUIOXDKS`CLDaF2iLiP)f=ISKoH-;R_* zIe{cHBI;AES%D|5KQ*%=U*sj)Oo<-D6*fEctnTN+P6_p^NaGXBG zD5_B5-c?*6w?>B$y{YF{W0H2ZZC8*KAtGmnp^l2c1x-$YFxQ5Dpjg%e^hgqKRaN&Q zXWyL3j-qV}RHVwD$YM)~DWQ0E?1W!rQGgU-Q8xc~#7{8UqGN{DZc{0o?`0Xj-zR)? z6%ayr9#q8QE~>`NuslC3FZf2UHgPU%#=S|yoFu|Xq)a#?Cp#mLt6CjTcl3lRP%-#0 zs-ouIb!WYm7U-usfz3*Q<^rFF%$80!C)f(Y?wel~Z!dz0Q?4_=fd;DZSi}TTRALay z)}M1~Lh6cB13X-D^1Ajos~c2uQP@PRs=&rtkVp+@ky_=st)hvA8|QN;byWS9(!qGr z6b!~j#+vlt`>*^Rg5lPHayN=}Z+ zl{;`qjwj?ky7%7jvHTbg$mt)B$$dhP$-&7|-7F6}i09?Z)ACUGSspGvmLVN1?eB~H z`_h-b^kw;*L5Isf`RZ4{`lnyRA3QGq96pyv9(iQK=khynl``2?=?b!E@7AW|7lM)n zm9Ao>m11mkLb>b>58x<9@3iS6ZE~DbjS1Ow!RTgiJ=_xDcs4!apdywI!`I2_tP66o z)+uFCPEyv6hr}l1fHYMCh0<2)?(yg)!C;4YvG|FKLJR%H14DU2^L0T>6$v^Qqqqf_RL_#duvgl0tahp#8CRxlqwD<2X z_8IzhiwrG#4*Y>0K@@3gYCM8;UD6wN;^?|%v!x|F2xYY}|E&mncpuUU zr!lOPQJ-(Iy8ECVQ!DnK478vv2_0VMH_y3ssFOl0-8if6lpzbD#6x9h(Op59aS*EuPx{+}eP z&pvxQ-3Pw{0ETa`@i~S@s)OeMyoW2GXg~+z^OxE}I;Rz(UBGZo&d>;O6=Lh)H=x3w z4k_%%*=rr5B#aS`tGo^d#}`GHSvz*pS7%6np)Kq>8Ab<=xBbvA@EBirKE7LL=_gp9 zm)=s69&;0asMK_s8=UABt+M3jdq_9}6HoD&vBg3e`O4l#LU1(%b})=iS5)aAM0BBs zNydyz(twwBt(J8dDWJ62naW1WbfMxMd$Z@fN^>5HYK>G;SFkE^FYOC#BFM@kC4iUYCKIG?7vCcC|te3zHJSi3g~(^ZpV{eG788RFn`7e7;Q31cZabB|NA z3G6eFVKCjwq>>!U_gTuU`F0wM!{nJKb$E;qo^7lxJV+@NvEGlueLh8I4~!ZO-rW%> zIBO>5N8h{gJ;nH7hVcV+f}56Ei9M2=G+eh0*zz9Y2tVQJZ7Fg9n)Z1dZoo=}EJs?1`><-^%56$yQD#)`xr zovmWAKa~6ezth#2!Y_}f@M<(k7u1844Hh}4I)@|9p#i=xIK%}gpe=lc!(_b^%bT9f0wr-52VUYa z?{Uw8mg6fZm4cB(MbYW6u^TY~5S--~$!W4ebQ4oIToLsCG*t?b!6hDN3R@T0> z@#@OfY#s8uwt2+CpGcEN2J0wTfZ#J$to&& z?7Y*%sm&{MqGvFX!0>P!Kj^vUOF2`88w?h37$Gz-1x&12r%6Tx%=3ksj5%zPaG+gGvaq*t0QF@g+*+r-S>4RU z2KNV0bk;j%!w+HSP;pgst|C`rsT-Z5bGcJ9kl$ZN(Yex6W)&SeZq`$D*cJzJf<3Hw z2)XPIcmPr7+{0)C^p0_jvtm2U;@)}AFA{s`p@uN9PkFZ* z&B=Cn($ACR5pVjV2*OQ8Ux8tRU*Hl^5}i3z2W%lCU|*F^Yxu}hf; zTzljy1*%o=i$hMkZM5WS4kBh z?PM~$8Z$UYXI9old^h+HTsNp(n2IQhqUc9_N1v|NnUuLm=~WpUQ+sk zE#SN<<~R?XIw?w1^cS-04{3_GgG^JPA)4$Psy6BEz-pQ&Q`!*`&L^Q_={(Lhbrb|< zD^BE5)Guu!e1`hP8jBeUxbt%h(*SpV9w)d)%>;<0HCpXgG+4WRM0>$vUCD84k?OCc zUuM=q4G6{;@Yk?6s#(lY5T_OmMi-#~J6^3yG24u3$Yp|dTuq1v_3&*+ORF0fH``^$ zj-3tFV|z2e0}X|dZLd)4ODBR%_ukQa1QOCihr(i;9{Z$0`(9pDIlkjqkrYrGuKY+g-cY+ap7uju_IB_B)79d=K#44Z# z9i2u61$;I#vf|p54V$WRrALDTKzNDIhYT)VL`2If^t)ING_$46t;U6z@#rIM6?&{q zrkY4H{U`~`D=a*)2J4UYuBvHS78S+P2sb`T7C3cNvL?SE6bfq(zf`Mt#LXdZ%k~y0D_4gj7SoO`gXF1} zIoUa}mf0N^P8JW;Y$Nc~s5|2~qo*~kyJLE~Q;xM_=~1#X?CH)u41> z;ZwImB&G$Q%kt?{3Fc`_ zKp(m(=4u2#uz*kbx(R7g9cOKZs~v?aP^Jy|ix@M90BCHwhYv|_rZvEtFTFUu*lAhw zVF930C)<2xA}?{=6j!XV!Fs#^H7D28qvk2ch1Y5Gwa0M z^oQ)tsvu(CeK1Qnf?|Eth7V(ub z3ux3|&$ZEWnOT4;eoEU)R-40ZYN~y&cOqt>sr8ub_xES2$V5C*6=4df^Rvm5o~_3u zCcN8rxXDRaJ8&^z7A7z07EfmOAgCml zu(lNk+f+Xa()v+=jwN$?F%*G5F#&oRpLJp6m09SOvBglaO_x3_63YT(VW$3wTAH++ zmK77Csz1m^$*Sr}brkC52MSc$;gq3%8RI9wGXo&jSx~C{_NJnwFz?&R0c>p1mKAWS zSxq9gT1P2*i^XK61Zl)_u$1J6j=$J!w1W(Q3Or1`hjPVKGoKrT# zaY%jEJ15d1jhCdcCY;kkUVwN z!P%w|gIK&W6+N#rRutGJqv1~_K>Z;ka=yuBAO3Tl+?%SQvKlf#GMzfE#X`55NViTX z92$dOqx7f!Fy?z%uP4k;IX-nFNPhh-xayAkX^`Wpn-nJh{rSHp0vH*$7o(vO#X1}x z|Irh#O(WIA4-bEKGY=egVL>*Q6vn=pud7#gVU?rXt zgOh@jgYMvz;MCx>;Pl{(;LPAGdwPPN;OyWWdsYRjf^&oOg7bsb@~jEg1Q!Gs1{cY* zHsI51&&2_sOM-QH*5kP}xGcClxFWbRxGLxiHUw7(*96xF*99Ac>x2GaQ*c9YV{lV& zb8t&=YcLRO4sHu>5AMKoXK+_=cd!M|J;A-feZl>~1Hpqlj-`UF($ku?;B1k_737hf zU>aolO3yZ;NkNo^sSV4tSeRRlDVR$CP~g^&c*l}!9I&E3NE7hoew359V~G-T90L}4 zDdre(A4=(0Bd%COFsVb3fnk@9CwL~)^zIGn?Lu~WS`*Aj3t^scql5~e#|@zc4+VHv z$E)(hJW@IzM6=}p&J3q!`|iA4C?wxfKsU>K04EZNccCpZds3I8_UJ?ceFRey6USx( ze1ww!0;?e*yG=bBGV7;oh^A(raC~a9ak{f?v(Me^JiTEbb5^TE@w&aA`YrHF#MVNZ z)D(4wlQV0=T}tkd#8S9x8zKEzOu8FCu*^f;B!Dz2(r0E!-$~NMMON9sL1xV%Jzt~7 z%0`pnSx(Ra)FvBks#b+RRL zHTxte-OA<{RbeZ+hZegf)p({xcxh|BwCh@B#eWOgArM;U-*Wdp)mto82r7 z7>0S~tf}DgMo%Oi)%sa(NA(t=B})X4+WJH_u56|fy$STdaM*M%|UZ&eDg~ zl`lS4`YC%Yn8FsV_@=Q1N8qa%ZA_6GymGgxUAl#9{Jqpa?20ao6Ka{&%(c$O0|jaG zYsp3!pT5v+C~7d>Q}Usj$yLJqprZDz^hUBHLSL}UV+1K zh;4xnGdF}ir|8EGt3D&MP`K{a8b6F!NSssHpeMH5UoMs2JTkmB&DSHIbWlxU>m_NeD;WD$ zrsF^AS#5iFor3&Q)`IH;Ljo7X!IU5NE3DbZ?1DX(VqJ7M%o_WlFZyAf{m`#JSh1j=j{b2XfZg>MMi16t*Cr#+N)Ayi7ff@rdqu}##-J^GFUrBxiSAH zLWbli$X@YMts3XB!uu7zWv)^Z@%U`5Lfi*U<{gB-CH{u_)`VXc?=PmG!??4>uz&8MRj{^eN2#)v&378`D8e>~OPt!mZOcW5{{Agr zoJxLoDwpJt?%Vw36#N1T+g7p1248@1+n=(OQaDkfqTIkS)6FEpIYV(H@zmqkSaP<8 zNj31ZMA1Iklk#@SPa<8oBh)^5c_O%q2wzXa_@S*lp?!gbZ;AH!hNb%)dR(%sc&<&# z2eNdMY?+3*s#CDBHYUg@2`$CY!*jI%BsUH!G4gX~#Y?wKbPs1G`%)CCMazRyB25SD zGg=|~tqaZUgyuORYr+*I6rMAX^!L)Wi07K`xy&JJIdjn?>)Ny`vcS`tOV%U#_n?BHWE6?@4Fuf%bbvngaumhQS`Xwp4VD-er?OH@C4Sf z^O#_t(r|0M9kK?VxIFcTUpsM@1?oUplBrE@IG7VqnsFO%4TKkjq^uu@aiIoQm+GX4 z=-&7h0a0-HR70qr!1kN1IRRp4&CoyDd9n)2#USCEw4^=o#y$B9lj5H8~U}L?wO1m+zpcGdT021W9BEa2JJ@_h*U4_ z@uW`_WVQ8wK}tGcLV9iy^>!eeeN`s=f97N#knCHs+0V~pKQ@t__zj?QV5D%B*ol+D zK{%MDa$$zb|4C3$0kQ@o9xCJ%Qz7|PT`Ez_cBvTW%T=HK(5WL5 zXYu(%G*kyjHj*o`(8-cT@l;Nr0bI(y%8OA5`lv)rTCMB#+MApqxkh5C9L? z{|SYJZ#9%HS9vC@;Xl^Yu+QIH4gW!E*o8YLDr?EbG2qG^%cw_|u5-cDdEwC_ky_g_bFXKwb_;bJ(1I2h~=2?|5S*s7yk9aij_lVpo$GW!41 z=ntjo-{VP*{$G%OPs7t4_j)Fyf0WU$rnRyAJgL$DHtC-?oa8@!t>68g$>`%6Ai=*s zK!;1s(+_xRD}u2N!mAseAbHR;SrOlqA`V2KP0@eIlbUY-4bs1}VHXden2-X!&!paz?|^@|b5bR%(MP{M_FgD{_62^ZJA*uu{KT z!_|<#w=*<ve{ThRC1b65hP6dp1GF;Eol;kz&1Q9_r{yj9klBx_7|258Jg&RH zRBs3HIWN(60Kd!~v#EtAf=M1qBbXC~CpiQ!Fnj5_H!+Cd<|Nh3V6sT{hhI8zvs-=< z#)v{3?^)*2w^$#9CP=p4Z#?6Z>QxuweL^&@lZ8)8T;jK|x;SI1ebtF=QDPM#MjF_i zDZ-9G!vU-ug>OhiWolx5IR$Ky->_;+FfxeWy!~JEqOAR=qp0watCDA+bjjzLUiVDa z>kdaI^46D@L2r0c8(<8Z5dNa!l>u8llhHp^>d)%H49xn2MvOqJ4d3+KR^%Zp^1_B< z@3)@Giu@chd6j?X@2#KX1}W)9)diXMtIm!MHfCy{1`8b0CEH=381_Uz*#d8{Ra425 zKU~MR`qA$h7N4{^93TgyW5xuqkmPDHf4feT38i`*FK~`)ZoD5fwPpZnO=U5QZyJ)Gn%UoKsOUA54dVmRVAq&}0goXRpdOIw2idU(5 z0kIDluN4SHs*_j+SCEce)f9GSPNFV%DrTLwR@8)#ENlwEYia#zSn#N)A%AArR zv9G{`-ER6bz$qi|G%wz!PV=74y5feUOw^?_y#SMyAEQ`}qb^CteQHnh!lxwboQUwu z(!MlV=>3lrsjwVzVQ`ZKj9Wz}Lu5bdz)h^`f zx`u6krDrm(c1EUhZ~%y>WXx5b)Y_hhTf(~=s&IXt$>{G`Q|k@>-fAteA03u!Jb~4U zk=>ftIRtpVJa$s>0{gs(iD41Io3s;O>CYbo|md7$8|Mk-JV%-O|Z!Z++&yIMR8ZfhsQ5w_( zG;@Ae{pcJD5eCueYODsTj2S~EU-1wj!1X7VNs9fZK2Ja2o>92n#yqoF;Nhl{!84X>pwZ)8?nt1&?nm6)(=+eQSDb`N_u~dYR`NKLW7FN(LSkAPLas3 z)Dy1%ujo$oVl9;ac8KrHW{ewC{m_IE?-q{QIBs>Zq3jR#AT;W< z_L*La!HDyxqigMRala#GSS~pXd4PW(A&Li4PE#D^>fzANZ%|e#RyKpi!j%JhF&}D#>tFralJR3`tWmnGGHTL+=x`bUr@c-~tjMqn>#fUSOj($9B>;FvlAN5ARZH<= zA&JRIx6ZaY;as?6&(uop45zeNjfjY!%QiEuRq{yrvpuP`G)%+}1~zHysvzg(WOXpuIO0qJJkTt;9p|DP3Mh}@ zLH%bq2Z=aKCZN?Y&{E}1x=zAMojJm^K0^y(fk~@xFXj_JNQn!~6~xhKB8TfL&uWJ& zrpc&?9S*0l3P($A`uEb$qzmT(Q2s0!qS=}rAPnts5b{czaNS->ce6%eKd*5PPEd82 zRAeDXr)!u!NEA!G$!J}M(o85b46m82&2>)8Vx!VLEgG5ldB?$jxU4Em6<#5z`?LSW zk&H&%Nf^;`qzSD|#@3Pg$#=^lpB>Tb6Fg`K+>a|IPjG`LFvzE(bb?G^)!M^#A1W=^ zvANY;2L{>@Hag~*Ci^CARGT=ZnQ9QZ#S6P!(ft$(+pjR$yp}h!`mmKZZ#R@THC5FC zC*GyRKS4@SRp4-fDZO$Bi`dtTSd;7;Og%kC_I4-xWI=qnU<%JRzIs$Uu6KI2n!vb_ z9<`0nfXTf1^eHm7cf>IzN#9;&LGe*)v)2 zO9Xobe`wPw_($8+%lM@yw+5t@JzTjeX}H}vRk0DzWDsx(O$c-`<>Y_mDGdU|X$`{0 z2>;qM8F@9_XA%C5r%c%Gz4%xCy&+s{qJPcbCrtF=c@2%-uX`p#7`HH?QZL<`#B7fg zW?M74Xpl=EUH+}7GWmfeuFm_BC8TEjz2)hx`51{c+}v>I=55bp_%hl`-uU~yr?m0M zm8|3Yj=wj2C7?&Fx>aYz%LK!hK{diBPfl(@d^CmBEYFm=D0SnuSm{N9SQ{B{i__~r zSet#mKvSB;-5Dp=T`tD3{6Z)O#$w>*X}A_CwxiVscw~e}uEKBD%JdXuCwV%9%+mSJ zJXK}cauhC7RX@e^zo17kDfpyGxd#ACvgpGMDhswMw=bj=95}dc&v76 zh6g2S?8`k4zAdtH>p@iUD|Dj+GM36ka3H_+nUY-o1PVxO8%?iV0lV0H2Y^|h* z(IZ3ylD+-IihF2->{l2OyB)&>?wBNUVTQ=TC_B8d;i<@rJd-WBKF!XA+dk5(#I>H% z7F;x)hOacVNc4IpBY&Wf->;CpOfeQ4x2qr70Z8e+{t~BT>$UyyKG{QMwv&7Q-~gJh?3f&DqClu> z+E1ZOOQsBy+?rhFq^u?%V@>)R)}+rfSxxq-Q$u8|$aTm8M2y<1!5 zAe24PwLa}XhZQHr>R?b^7Gi#UprOb19iGX^bFEL)VA?y?bo&?&I)bPiC}f@$~nP_ z>QZ$p)usBnQ`0-#k9oGmx(BEp&OJj(F*z*-#N(bTvlRcuc7Ft?6|A8Cw4e)jItZ%c z3B6YlR$MKda_76)IC=3q{-V2UxVUmx6TSJpgJ(4AtoPqaEth0gvAeC}<&rG=p*YHg zzS!21?lJ=g#`ylyJ@Hf6|6C^K*!*f-fSIo*L2Ko;t?}ipVUZ>uv47QuXA&z_k&5MS5s7pz=u_Vk9}37*XY{*}SQi{L?4P2q6#u@nwPA6vrimykf+d3)sJ|3}@s zfZ179X~O4HsVY(+C4xo)IaP^JAzUg7QYb>5Pi!MD&SlrZoG*=ZybF?5~Yxio`dbQ^(;=4UcZH^_AcD z@Ev~cV6BS6%^lv#Kj^NEh+G|8u}gP*VH=xTq4mNVH8Pdmv<9{g#k-)7m1;84^Non@~Oyvus*-X%uM!}Cme8LkGXfsep&&sZyZ(0?;CO(h3*=3igh{n z(7J@NVID;;9#*~C0GL`+IM}(k6>IEL0*1}M!`fWtWo=0zlsU3mQQ1MJvVDN!)+0|H zC>QK@uoJ*b9H1=-5*Q>H*5uiVy12n8d2j_V`VHVl8dI432}kI#P77<`GKcBLXVlBK zHq=z4o6FX8cUk52EbAegg|HSE#I)Rkp!wwprND-nUxs?J3EOstQ~TAG4%|8gF{meN z^)pO{Co*~mns34%T%9AP7m>3#3ndxD*ElS*f1}nKy)0bD7Pwd0nHyj*_^)_Mt<|59 z@AVFRwUUD$0$bkyTM&^z+Q);m)u=2KO?no?vZmX&eEYbsj~Dh~3OWcpOA|sDrE{Cv zhqwRY=fcH79co$N(H$QCtjz!^kZ$sPY)MOj6)&ZQ12)_EF98;|AN$b{%A_4wlr^Eu z$eYJWq->$EgE)IzW({JQKB@tl1O)$7DXoD-7_-Y;f=Lpq?kc!ME_HaeFb@Ywpd9-# zRBQ4|7U)|V%Zi+663uIvISlV`Tp|~vPxm7#$|a{F9WjO$u1#Hi4JD!ACx^R~OLMT@ zSgk5=T*#1)ngsHid^6Eg0~cqmv)W1tJS(J2qXQz=I3kRp9IQy2EF$d&FKb9cKh`_a zjzNdP0u*VDcBBpC9ZoP5k=DSuIz4Ypqq#aBg=NXQ(|x-UVh>9ODI7<+-zbnqAXwdr zv^qnc<~!R3X)+>5S_vZ7J0c8ej0lB?q-elZZ`O|)_R(u+6YJx(-@!kyiBrKQ;PH&^ zCmg2|M!_37)bj+tliujr7#hYU92$JznPW^O9Ag$osV>p1wc#bighTw9N6yaWcD%?I z6o@nrE8nU}#BV%5$p_3WIMmyG3o6i1$l|;DTCyoM`{m(4hIE9&CC)~0hi+`=l2$~4om*z~q@;;u`Z9I;yj;=D zvUL0oanWOxOvH*nX?|rXkhm0z*MD#Z4SA~TTdAu5ZJoRWPYPn6m8Gw+uRua_m z0F0dGXL{N`gbDXqdfJ{wulQ%_^x%1Z?D7n~u*9@IXmXe_#hf5AEn(+Yg=>|;GC0hN zU5yE9vAdoRcb1fd9WKB=3I!Q8(+-p4i&EL5plj)!` zNh&HX6)efzPRqQLEEpAs8w+!x_hTwR*~bfYCJS}sI{2>btS!`GkPLIK<>%-)pas5a z3{R5?Q^k|WlXQ;ijVUrm)SajefE03bM6$pf^~xMgM-c`VAls%?VcZGT0k{go9MyG> zSQ4Bzz~&tg3=n9CEprqS0&|W?g{5ie_13ye6Fvx3<1%NlNb4F;w91QG zv4#n+Dv8Ltcl4Q=M`PpC*zt=U#tt=G&<2U~=%R_!{30PCU?fn_!BJ*cMi})*!9`CB zlE-*kY&td4Ugk|)tbRzE8VOOrok6htMfDDuV9SmwgMa?={=9Z~VzO#ic^jtPsonAC zUEMQR6l(eW-rR$|bYJJ+F~^5-! zj#ZT(!F2S>9FgUUHcypkOdTB++}R$Ash(@ z27I`H&lVwxJ@r|Sn;R@KJYJ&7SDmL`;>}*76ad;`{{Tk)9lFlhdeY;|y{g?>L3;ta zLfZrr2gj~>d#k~i2)IqW5CsIn`s8DI!b&}OS30PI+2HZtJ`1=ip^kmCfLP-< zU;zc@_Yx`LZ{WA`cN)wMd-QJ&skHp;j?zRm$X?E)6lfCS?jru|oU#&O|Ch;fW5&V!#;8VAQuJkw1_C!kd=Fq>G#sEJirFvnQV<-$!F%koyNX^cgM zYRlm>ff^qH;V@G5Eu?AW)5arXE3InaE7DX$vWZi8!s$^klVGjlrMj$nt}`A5l(3A; zyf4NwW&~!lASt@qi(0qo)DQeHG(5uSG|`Hg*#RDW5pOiE8~stB%E3~+T;mPciLN0X zK2SOud37mDZ}6(tH+uO)-=YD98V;p+nUh9)&+?c`dv=S1x1RBI5mqH_5crEpnO*7Q zYNvb%nI1$2_FTAbe!asnnn6H79TU2}DtX~yh3Is!_A@0_gC7C0*5NDc9olvXVw=bQ zAu*1GcJovbf7P25edXlPo)QH)4rz*Pnv6(zgU-b0W^;dRKWnXBjse+O4_^u%+R2T( zq06z{@KjQDK6aN6%XT~Z_ObBF7#WTX(zXO^4TAzjhr_pdLohCcNIh{1Y6Lyj#9Wc~de#yII6C|gQU@}XOBTl5bLhkdbm+L;Nei4is)_yh|?<;_5 zDyxc){vaIyv`R@{gXRPLNfiden!{v9^vTtlr{SsQ`5Gg(Me@LFc@7B&rzr%Ogiujg zVQm&{0|4Qrmi35I^G!A*J`2vrI2c9Nem_-Vnzs4iYyqfU8JLB^FX<8_*3@+Tq}MmR z!WA+_2*2bEBi`uoawtcd`{x;RloZaJKUDzS*LH+aDk6#+iy|aM={54FeJI=U)BFLe zbeH{>LoaNCU)WziNNrsIVQU+z;3M(xva2Bo-Xvf<90b2PI@Mu^x*^%2NSUVba2C>> zG>coYLXMPC4x9=3oTQ2vNI{KuM-5mOACH^|;|K4@o)VW8ts=0mqGXSd8h?v1mGAu=vG#xXuI>vK|l;t;4os3i}RztY~w%)W@~8 zLY?vu7-VxdnZ>OJ%|-<`y%u$q12ONgdIihmCm2yAcMVhPaM1|+!MR6Z>pVdQUqq>o z;(dSf4R{n4w|oWY^q~B3ilu>KAWk5M_8|TeO{^m>EI(Dm#f?4;!v(UmkSdDY(?a-x z-%>>!#5q9X1bK?`-I)w06Efs5yOLq7U}V@A1dN<2T!^k%){51>qO(l-_SD*7R;5># z;pT#>vY}#G|Eg=$(ZvqDu&iI9I}Al%xmcc8m#!VM+{R#)2JVI&e#~85Uw2NTK*dCcMNUnZly` z)CicuDYdaPYiG;ftg$R>EVqj_mG__oq%2wZBhH5CNo4dqcQNp#Xi1Gadnt=Zm&Fy{ zD_a&*2bwg<(*KSzNz)SXf@nzRLc+F2_Kyo)UudGgoD1bu_LK|V!wLxQ_@%?=#mwMy$%vIu^#f1$e_wyX6CT??PcpWSLd z9I?0+E2MlvQRui>=0(kStY(h>>|GPQ@f153j*+TFMF)j23OSY-LNrP(-LoqVxi9ry z%Y;be-c;V5dd!lgwk?5n+NLvE43~SqEVPRvhBmyfvsFK!1#MsX`!EGZgV6-F82D#M zg?{#BO8ZPQ9b!te#C(uWn{^vj@Y}Fi0LyG00)U$Uj%T2BJUXIP00OBOK#z*pX-;P518QHySPHBw4VQVAi z58GkCb;B#qz-LiA%E~rmtYVhJ{VvZYM|BE1re)jpYVt(Z#>@VJ8qegmM|Plgnvju9 zXpu%528Qa2*+Y;p5;ceJ{D>^!LY_KLr;$2?Oj$V)- zXP5pgr^qlFUK{4`_DZ=3cbWI3i?ARa~P#d%hwqFR(4HZe2>$~=CH_DqWbb^|S_i5H|g?$jle zoq*Eg$Cnto5TNt`3VsU|>V1$8w4j6xh$`4SkdN2&XwG`J(WB)z`PU>AiQ)p)aFG+B z1<2CO)`$3c1j(?e!S?uhSpXV8F9r@w&oonQU=P*WVn@>>SRztnoAzoL9we1)WB6Xz zL)KbC4q5Bhq?csWqTchZ^|IjyuFHEV?6$O*4faxwYilp%SeP~}83#lq*F$GXdk0b<&deABS4!j`w-Of$$`%D(ceSk|c0 zGH_FvzHId-7HHyzR_jXwm0|!BvxqbxY>rbTKd?C`)!^}QLDZQ`y%%JLlN+)<7sTTT*0{Ll9%5+3 zT~$$FxTQ!~6}&X?Mk$6$!vM;I10WM*t9XHJ&V=h!ajDTc#`TD9X|y@f7^BHdNv>u& z);^J!HuR{x2#>P1_(+J_0k6sd))gVg8rN^j(`f2;TJ4pLh&ml>yuwR9rQoSKXD@a= zQhKFVGVrpyaEnL??owO+}< ztI$_G`@hCZ+S&hhq3=3>Un=x{+~4Qd>ixgUckj?-^w)c(!dm_QG_2Ks{V8g|9sWWD zO>zebbki(x${LuWJDi$4Qa?u>b@ZE$X=rAeV~;(qEIoHjPV??}Gd<0F-#h1h=e$31 znX**fTa)eVgDCB(x+RQPnbiqApE)?@dJAm*^*a&p_;jb&t`z?~(3_ z#1Xp3$H=SFK?q+}=-#`_x<|n_WL1$Z9}EqV9Ad^EPrCO!yN6UL8eC5&(U}ltcRi^0 zfT7YiSl|reQIvM(PGe$|x+TeFB>g+J!>vmT2PkeRbeK6z0zLu#DMH7cgaHYNVbkdw zmgj6oq^^J;K1SkZFkNu2e7bJR3X@>P=NTm=EA(dX$QpHpznzGvHQx?^l1BvmcwTG^ zoSwFRY+w(vgQox`BJQCZ=wEpJHaxaeNV^#Mn{upJY0YwiI6Yel$T^v zf#Sb5sjx2et zvG%8>OYdu5!cJP-t#FP5ekpw4*aLfo*g3%aCGbvJnvPcW4->tE*ny8M+vqHxiZthXKM?eScgGL}$)C8`9uNfc zU_{U)5fr6J9AOZXlhH{$`6B`GooRX>2zt?bWC-GL1T(J+LEj~UaKs^xpsHoU+{#15 z2Oa1@bM4u%lYarr66O;X1wq&1Olc)*aUCn^X+~=Q-Pm^Brh-O z;~I;h@iBekr}b@MwRggDV4JPNZW&2<;FVtd0W}ejA<2SAxpUR zYOih+LJI>eBVw9C zcI9Z3?4tjlpc@W4>z3&FdIxHWj>Y$1diIxa(+RlI>)Qm7b8rH}Ks$iS*00D52KwE} z=w^poFjVYhpiNo42Y5uEa)>$|U>z92wnTLovx{1y+4FhXVaq5|VkU78_B|k>I!MUk zV0KcUFwwWfc+Ofl7jI$K^Rk1N*&3s|*J??`7NGL$qK_ivLP-#wOa@~hJPV;5?d%-{ zDjO5od)Nz2WSMKP$|RO$tvE>A<~5pz-DhLwfGin-hB|KV-EXrkaDGySAI36}IZJR8 zbNGWf%SU{GdKD%XB69h6o|-3a*WHkol-7p#ac@=j}3fyTakYq zY4juzMUKY-reWI4XXZxloy`oF znz?G6MU5&=sxoFW$0@bL4gDy`?v3ag%vyKJ#7akC5iXn(`J}fQ`4N_s%=jeI%CWlj zK~bAc@R9zXY3tEH$bFYZU?K9p?K4U`Jtm=w-dGP-y<0{tYTv?o4nkq5H^Iu3f zr^&qSVngJc(<5MSLRy6*b7oW6OlQtKe%1*mo^>htYrmQry%zjliX1`5#f+_20$N*XUFDaVNVfHI?P^NdpwOKCyjAi zAm#2+6}RRiK^*-1TQwk_DSw!;7w&mIYSYu0lIn+-cyHbzi+dF1g%OBo#AVSBFk%#I zKyEo%SPZ4f6BX+vEC$9=IdX)62Eh*j%tAkE8CJ=%B@AsMT;^&yUb+XCGl#>Pr(>%x z!{L||k=W9bNx8ziZj%C&SS|Y=1BOdoTx-07j&)|+ST%C}A*vNHk7bYX@;)FTNQW?t zv3ui~rg@|tAe|;e3XYOt1Ha)zH-l?KFHPfh9byPWy$oi-up2KZ?cdGbKjUT0ugE4z z$3wN|2>>@7qsbQ}o76h5Zv29o9A{Tf)|D^^TLV#!oV>#FgCyFSI5pn8Jo`!uq)No^lg9rh{>w zvDrahr?R`IUkV_p8;X%J&m8XYN@kX1vFwLky_sL~N@g{qOPUm#+WhYIl4g{nVaxk` zpTB=h#eZsdLhA{!-R~t05+k4-(pGChIS@uz{WLOm5gavd`GWKm=(#9_0Rvg=7{@%t; ziOGlYxWBitOQhc~yWa5fgjce$izL;y+6sx*zT%ZE(VFNOB-d8%c2@)9J^Y&2GxNFU zlK5v{CsU>w)yDN7q=CaK`hnO6d0j;UprFHk{!Fr;3pPhAc{Nsi!uJ=qVg=*-tN`UX zDYvvkxiPTQ1q{?O7Gll${ln%IgU1C>^_)UU_uSo86zED?rj(gl}MbCk}W$&ovXdp z^~wW$?(aFOPWOFv5k-Yshg>m%4*oU%1#MnejkM{)DwIZQjo|_~TtLH5jEAShDwzT) zvgUpLDzs8+J@LeoPC6NqD?SijPksAor=2!-`a9nF&Uc=1#=G8i=2`fRH#2zt-vi(O zocF!&ednC>{`Y_2gZTXZAI$yGhd=U>k9_ps{NW$PH3D(Acy;%VWS#smxytTvbvLy! z7`-999Yb0W!_Lh5o?=>r2*y?q!LT5RyLdD9(pE`vlOLwnAm%_M;Odzd&(x=4+VTQ~ zc>`GmG6+xAGmiq}1pbH;1Uj&-YEDWRiNhUaHhgqgq`er6`_$ zl$Cj%`NnFR*^Y}8*Z4H5qs;T0gTero5jXRwO{n#mgxJN z;I)LoWv5IKr(mmHF}yKw*=>9fc)~7oa-y2a5S%g|K>}tV-%wBfgHB`5&=KkT8I_~J zU9oAt9Q-rRUaobdtEl@yR0(3eD&rSc(aHy4I3S2Ua55yj+$S7_ow<0wz)<^+z;eR@ zAI_@7&op%2u?Kh1=0Q42+0qj4G;02sdeOVJuXCwp zVz@`C?flDp)#NMM59d}9mT(*F9i}@`2O1YIL|urR37ZjOliP8=`ir7$qc%MeZVdyUY^w?MWF+CJi0X6|lhKP|T zIQ2Ar5Wp_9jeJN+qVf+%RmIH6SykygAUHYe|9i7 zfpR9WeF9tD<>3V8z+5iuJb}Mu%lQ~N zNa6%u!Uu=6P2h?PqflxS$oKnLftM2w#Qe6U(v)6MJ?F&1Ps@p0v#%An%G&usjXxwN!eWuRFd_;fYr@T-mUAJnmWrBY?R4z>Z^COx8p8QqYK8y zGN!q>6(M~>Hv{QxNumMi>s96MU-Y-Pf)8vOox7}BfOlDxZq0leVn7NmrNyQ@c+f{% zLT>0L93ayI^~h$<&<;Io2C{|Yjbu9r?I*9uRNBwOiS0{InqdzYXPu=Pf*%mPPSg{s zGi51T)WP)P;ZXnU|DUS=!1x~<#+gZhE?@mHF{yp*2)hR7BQhTjCjao>*rKP&{7juE z@#RFn;4rGw_*)jc5ls#WO33=;5ipF1=-Bxu6gY$=REKUGzY~(R7?u4 z*~{=oB%hj z^eL{-s7wbkCvgB!Dhsl*3wZD`H~4ED(Bl=+M~)XjXp}BGgq@?lA0VU&WILsUncQ4t z-g3b6aZJ?k^9`->hAfV0BxEK`k#wCGH588o6c-TsiPEyXq_==j_BM4~OnUWO6_3Y- z;oBBVZZlpSYPT4mn;odd038dU@NI3@D7Mq7H)3i^YzCk7s%D6wylbh^mEO@WK{=O9 zcm>6urh>Ua)7J$>1tcibMM_8$O0V~(jS}dQ6L(fSB@9E$;sJ?ANe9zG2RQ8@?lERc z5cxSo^hEXKc87hTqIpPQWA`%6nROeGgpzZ{Gy#aSj-zd7BR?0F2wHihLj4MkqN$aL z9#o?aM+M6l{2ksKTks4v*A|La!8^UQQ6oy1E_enb0?e3%;s$;$J_Pz2XY(8N=Io7KPL^ zN!lxA-9*5dHK2w^iBHH+>o$jIo-jK6va4>%yV;INy78D-GEZ3W0?tTEKJF!RUcl_p zuG!t5@Ja@ru0c8(Pe{N&=_L)k1Z%}5^c8<^jyAc7D!%`!zc)u4^@MEq=kudaj~ai? zE19DWT7zPEqy)oHd2z!qy;0fcZqK*z`ea~V_ezEWQ9*!$)SC3PmoyZJudq9YpYcit zUJr;CG5oBTH1G_ca#H?=zb`!?`b~dt7^Y<~+tBqu#tyGkh`anM1@CZ}yEY#FK@1$M z@B@o?waVaZgl40q4qC&mM0(4K;Ihk1;v%bLN-k=}N)~*9yB62;!YkSI^k^F*{E)B% z>2~;BIC{3xzi!g6B2DNT$3BToNRJjU0Or{62mSfja0l_wDZLLB$*g87G&-5;LDN` zU(|}VY-Sj0P$m&C_mU!+odR|`sRQ#yrk6LXweObVXhCT2ci{2_KMGSV47 z{jleA_ZcC*2`h%x(CXtBHch9^!>SBNm{Pcx?K1C{?Ut{Bm^ajmDV~DMUTBP!d)W@= z(mV$+QC!{uQj{U4?KVxs<7+@455K`j3xY=7a?*$DjN`s{9=#-GmFB}oK8}cA) zko#e5vw@V6GlYuq)J9EV#B!?^#e{XB<~bQsXR z4lftZxo>!?dS7?YZ$b427yVELpTI+fi!wu@gi)(L&D*c!hG4lU4+ma&<^`X_3GhQIkYQH;`EV1QrDE07)A*iYke0SNcqzR666e9dV5Ii zC%wnU8z7rOYeG}d(4b_abAN=slC4qzQ~T6<4xzw;!^vj4S83rb+88zzS|dp46~c+A zSX5<$fEb3L^T2}168Hc+z6?;NBORacUs$ViDZ8GauE2PnT0+MqZuW=0XGX`Az~qo9 z{}kyMkv>puosLPrk@ZUj*(N|^Q4W60+b|l0g|`#of6WW$_*5yuDr;Ii0+H>&58Kto z|4;r0R=TB1UMim`lGjXzeW?Bf*$)lqZ{C?`& z@i}b_5k&Yfgy>B9gdie>5HWiQ;)f)9=)?Mv5Tbd1{3rPQTYUcX-~IdlF#pd!_UC`` zAO90Re~Hh6|NLM6>c9TCzy6zZ|NH*{jVaS^uBjFyjs7WN-2WF@)|y%j$(u~gQ%hR0 zimhf=0oQ=Bj46j2SZAlzSJg;#1@c_sl}&8>pQsG6Eo(IpXNS+B5-^SsoXWxfLn)WQ zSEXC_{VVc9npO)=gzL-7DodR>M{Iw}L?_N6Hzkl&=SW=1s&g(y3rx7 z)w4hUB_PynR1J*sKgUrrPT~vICU=FuM8Q&+H#^K*6y{&D{)TK4KILWwrqovkAfl3X zh$zyIzKhSoMku)=lm@KyT*QNEv;%LF`HzIFwRq*Wj7_)F;3(cD~+Qe?>9) zu>rlBWIkzDFGl29f%)30jl2rc^xZYJ63f5zv}8SP^oDF<{(E55aILm|67U`wCw3~a ziDJ|+M!}Wp`_G*@IO`?rL@Jb2Hyg4y#JfLs98xEGl}GGc^glfc4D(vGWhcZ{;9Rp54^=o8h8eRdh_@A zdo#lPVcYvJ`Fk_M{2O*}bJxSK_j)BW!brqqfnsg-IoXl`Y=w9i?{{cx)pGe^8LX4P zm)+`R|3%67LrSMuqge431YHD`fU#nKz?VjIBajObjMNlk><952$#p>7Vxft@bbqO@ z0}qzlhCToQ>3+4%`(SMK11JPQ4dpk4DsUoHv;o$Fc#sAHgOHvbH;ppGKJt5(jo<_USp&1VSDgIFYM+K-fX@;(56u_ibU}Ho* zXPAQB-?L9hU`8A<@Eb_e7r*2Saqz>cQ+R=pM%LI`cyY46;4V#a+O1(<5VwmvHMsiT zd-I#l8-?6`4FBw7Fs^hwLDt8^MlLs)p~iM|N#wfwoJo_p%I+WfJ3qVP4>D z#--FK+7nMWPLaF?5+FEY#c?)9rxCv0UR2-OGX!O}*IHl3DR~Qu$}3#hEC4R#Q$`-5 z1E{h}+^7-+HhrKeFNZnJ0;k=AFmYk3a|{cH1D%Dj(T#X&?O*}F31@XM5S)XRkeX9! zlrMXM20b{inw=R!XT;na45e{}aaHN{%`rpJzPZRM@8&ustHwZ62$h^2$axdZts4u~L?VWloegP-sE#`ncCNIgz%w{gM+;$qPC+ z=HRHDC^^Hr%ZWF6C6lux9#fi6R>!0lH93*CxP8cpH+v<6FDEwvzaS^B^`a)o(F(T@ zIq?>+Wbo;trT&|q-n`XI8hCM^M7`jX{@&!o_A{Bc`FoQS=^n}UbiHD4omVo-fW5CH zC49z98zpFD<|JjS?i#}xc}m!rgQJunCpf>{)vNk>uVk2%m0U&%cX&~w1o7H-*BHLw zl?=XmZA&QOPA_UxC2rg98p9X8lEJ6TgOqSaLdbV{$?b|B8V!9LxZB^Cx@|Z4`@Gxs zxvuEl?3IiX{9xei2g3%~cRqcWwek9R?YI07*0#}#ee^u3U8iKpx??)td_Dlr>NeM6FtZSk@u`iA>6bxZDycrHZKuI`4afnKGR>Fe>i5w6rK`W|}^$6E9mhQ?L3mA9hct*#}DRvgZ z7s%B*62B-@_zh5EEMc}hC+IH z;Gm|Oatx}oHGtA7Z>FQc<(Yi`U7(1zF-e_Nx zI{%ZvtPb6D-zdK`nVpFsn|U& zoN&69Xou)owrIFl7G)pSI8Ds`pwqrTVsCh~kjDo2e0&JIPk*Ct(Xf^qVW=W6oQfgj z$h@Nc&JnX3%rtmKDcL9FbB>-DRj6e^ywD*3%uAP%v{tq3jGufXHjAmhv(4hSz4-)q z*n}>sRx|>s%8wo&$DQ|fm0Iweo5!4YsUZ?w-Q);D4_=?);px2U9$Dg#Gsll*JUaDM zxPA20xSSauZ{m~T(D>O*7_SZ=JuMDgci7rqNwzjx0z-B)4I~Yg6VZ^x<_CV4YmwoOEkaaf~;rB zP#=kKJ}AF2)Nh75Mi=nVcb{=L9s>U`EC{<+ybjwlPmIq+O7a!2!vYe>{b*+Hk>p7I z+2qRJMMHgZWbpR~M0KY63{ANY43}YO)DXw<2aaT1?2UFI>VlV|qtI&c|K2QKKXZ^? z*+WzLR4ai^l4sYYAb=n><}nR8o$(dh+T6xLjj57GiJtHel9@DMi)-Ky7U)P*&gH%z zPq}LyB>Vq4@@rg~>YIrm=SM0{P>6I3_YFYy#YKWd}x=*zNY- zkLbj5Qgyho7w;AjJgA%(gV%cx+;+$|U=LXTK6F8jiyvT{jT$CS`zr{@D6c_#m`aID zOn*(F$1>qpWGCf4gtP}%8wVvg+UPy}rSj3UUNtfX8V7;$D#KGTECis%T}-W;~r`hhnz~(amEwuJ>Vs+ z3AOkId!(T9fCwr#xfs6@sZ6Ta^%|NqNCr`u%g4MomeOTZI-qdn1a5j35M<^WO!6uC>{1kMb(V7)1p{p0ad z5J}c3Z&aXms9$%elR9gxBOL{q>n5)Q5|LCR(*@KBY`Vipbs*9Qug;(fgvRFpi@jzpUp zYEU{gr26l%E2{gTw}MV~yOB=DOAf~-gPGT)3T5vGzIRIUi6spL3ZY_MC+p^i4%gB< z*}>)m;=!uA+Nu3ta7ff9beH&B{)F-X27OR-4}ZL_<392C-W%N~X#Yy~3GpK!WQ~JA zpiX)RD0zd`CtJkNym8wiXfu1&TSN^+q+QfeA4+WuDD!TPnIjGhihRMLCg7OGMQfKw;~bSyzZxzunutA1=r+O z*^OQAm0NmY6m$zVtw(6n>iwOnDNrf0ifR-RY>yMJJmbotgI92=&4Pl;zqD{LIQI3@bZGa)5^!fnNX}+~3tq8@I z2)6{3<0djxL(64>OBa>YB1>i16D4HHOd^aQr)rdC%Op>ce4``M!ickTeTSzMwWk%L zNmmqF1BANEur#*m=F{6`kk?zljmXGLQYWo;P|A+D!#Fz%8#XqAe6PbUGL5D?&1+9N zOOFE5mDX5f3OpafLf0-Kz6lS9h<@`2`G$P0cgG||vVDm|=ARN2v9-!DwTV9H2qI<; z13dQ|de{bs`?w$T5qFb5vXef%p*k^$pC$!T)}s%omqK7)6assj)A8a>qaiorrk#f z$#(-rPs!GOFfD8epZ=`3YntfEJ*rdCRF&b@31RotT^DfFz>HN@x z6pSp8#im^^Nj?vJ2g4S|Sd@+K^G=v-G=)RSwsiHMK9H-WoYs9KJ9}TXZv^|pQP>}9 zF;U@E7rEb>n`!Mo{K1oT;{N~2%m82Fe(FQy5;(A?L2Ea#&H zL~fPm);f`Ix5n$rM@gih;E#aNszQMJ*kmEM=@)edFvL82h)I?*^EiDn`9 zCR`!$=%c~bCLSIPj(TYfe;`i)BIa8A^l;$kxc#J)Lpg>8&caw{uSW1nJv83CYrS`$ zQi)TH(X<_lD(8eLjZm9|M_dKOG0+yLyJ`mIAG{7L?4aMNq*fbm|A&?NXBGQEl)y*M zr1COhIZb6IVM!{g3Gl@l%mY)BNR-B4e0XOl&B6GN!v#G}F=sK;3CXpEojIlb$yAlT z&PQ>p-VDO(vLLy9fQXz!vu#<$8$B6QjI6>JiJ1o}aesR-5!as@u>2q)$ zi5!+ff*+!zLG8L%*@NQipaP@+jCaJy8$n@_(GxR`zViTPs-S|`84aOFz4VTqCw!cb z)Yt=Ct>lcv&?U1Q&_OpDFtk9CHeXQ~nQ@RS$QX-;-nd+i8LLx0VaBu+i(x3DXdlej z2vR2uWD|YNCG2>;60d+R@Z&oiamJ5>tw|BSKm~<)YN=dRB|}!S4b;lN(CQ9q5{2rx z#s#YFTC{L^if88(S{1nA_>`$f(e9^RV}Bo$?1Y@{Q_x7dFYWGh_;~ z_>B<=^&1m$ij&jw5G)0Ma@B}nS#b>Uk@%Y;njN`49rx+IcaM92j1FNQRK=NIyIwG2 zVGxpxROC-|Z4lD$ujSrnd8}fnsmo&C7V(q%a<6Qcy2fzCe+nxLaSdwVIGG^dF2tX} zWhq@L#vN@>dpCcUH_Oe{HMvmNq-mWr~KYF;2!=ecf zg-|GWV_H8#)D5$tlW%}eK=smKdZ;v69ZC{(5}`^4m{B?F$X5E*NK4hX$kI7;k?N9+jgf=o>)uv9CC9wc<|y1;U^J)J{`CCe zDOrQFf)6B!I)iE$14J#5{AgU{*!(zd^wtfnQ{f?zNy3#!(0!-tgv;d;5L_vY%Y+lG ztkX_omO#;7X?DT+*kOzv6S16O`)L}R+R!v?OTCIwV+$^W5mZcLe%5*KO+sL+oq7Zv zzT-O@^h*zvgQa}+SNTJGhbG)%gZH6eum3zRCg~~F0P}Uv#jRM!rWJKa0Uq#-`@9lKXjw@m?(slc(5NwcF~p9`A{97RIEb8r578;= z_B4A7&jsB|{y&i`8Y;sv;IB=lC}~WIBy3R>{)13J3eh#|tLqZ)P+q5RjunL|O&##* zBRWo*Gwt8iHxR|&U^8g@&Fo<2yJ|9Lf|Hx<-pB-_%rSb@(MMCE9~#QJ zX5xi*ZK@=z3LWnMy7OIs0;(ITTRP!8lcr=Wu` z?@)RHw;Q3A1!$LPGOFNHJ-BHU1Vd%A)^lx}%u|}&3@rSM1t_zev z1R5^5#anPqVXOFD0T_Zw>e*Jfk#NiV1UCLfh&HDuwFfg(%MO{qL@`<#a)n?<_Kk<= zT%{=l8%b_U(Cmml;yb-D9q~y68ks{|M%n5u@F^lF*=2&6kcw!2mr-=95=v@FIQ-q- zm#wNP%t9x`N}eB#KCX%k_H~Ol4^GUqj~T;bzbQKuVmnvw$$H0=MNJ;ljmZZhZ-0|Zf&u(Il8wh) zfN^Tg5D;`VQS*3|O&ZNDpb}De%KK`nniv|&S5I-M&vL&(M#sAZ%a za{1Hz>M!bq-}1IiC!{LTrkNJ?wCBB&>1h(4b?^q*!=J(ge3L6$RJATVum>5_i#a*&@^0|dq4?1pW5kYQ^v zkU@L}NK0$tUHnl2UT>$s@*jIqTM;mj3X!1)kccpOa_nexH1wbiOdlxu%A+ zl@HLHg6N$p#g#^WVO{QR7%O`}ivf;GFJeF7&vO%cTICgO#h!zT+2XbxHr>Ei7b?Ba zT3eWazrsrz7ny^SzS^$z_r?(3i}y2e+qt6TLGFc;?E}w%taE8k;ppc`DQ?*Mc&+ zVS}dvvIlnLc~$C{x!x-o_{_kkJHicK(!e(fe&VNj@P{OQ`h-_9@Z$o0b|p_SkbSDFD0!1tGVr`PjT4h@my=%7z%%(r_IOw1-0YPM{28d^6S~&l8-2Y~qI}tb zc?l+N^RgON_l|*V)xYJ-D>&rJH_(P2>5>0km@25yc^}a3UyP;G`RLJ z)F;`F_zy^>*t z%ANy##NQiMsMleqD_Xyx__uoj+&;7Mkh_eWu3M%|^YvQ1r;7vsYgJ_(zDSazA17DuyI#-cfJ$2S{jS}9!7Ev}+wW@F z>F=#G^rq%oeaQ=0tL^W<=kJXzQ>F6JzU=R<0cuaeI&{2h@C306*N~fBpzP=xl2exA z^K^hebb!_&C@9se`x@Hil?)AZlsM2I`Frc7gvFI|5w)RT#ti@6?qkpECeR8_t5ifI zpjMFk(C{rEGkr(1cRw%MqRPO24vHV7&G<{JDm;4GPTWu>;m?vE^{seH2RRTtEm`pw zwQdL+fvtG;=1s#^UNlipbSMo09iUNV+Ijj-JaTn<ox+h;Ny_n{%LM^uwtm(me?4AxA ztMD~kg;;OY%KNayuu?jx&y!)X*byG#dfQcf&UUx-f|B7H2-AM_57i~ufHNb466gj& zf%SnbIL*D)yDlFXrZry z52%4|@eV|AYeEFFY3QAj>_8)7v5Q-=f=!?zudxoXW-W|#P-=;NZXV`_ARJvxgfk+C zP<%R;I>dWIxOPd!qKtEqSG-p%@>pKdVj<#Vnb+E)wFI}FZn^o%5x5;=%K5cLirxCS z4Kw!_mG%#I7i_6q*1T1Nw^hP-Ot*2&29L`$G!R^_rF_$obQ;6#Cb8hh9CJ(q zAGnXj_=Y&}6Ha7mkVqEI(P9+%`h+s5JvKLL6gaWGDGk9~+=^9wu=&n4&_37bR zD?G!M>*3i#E4B* z#_^WbySh+sG}O!AFc#ltvVPuJs3(~Wh~ZX zpQrEtbL?=8)q{gMJUdHD{5f@O#@`_vpAVot&8pA)bND7X?s0Ct5@rX|p1_GU#PZ2= zoK8Iw%Lmb+Qm3~0W`3D}%jr0-%Y%ZnEeQRh(mGpBl?vWUZJ0ZZ9%D0!umVb z+J^Ny5Tpbc+8`lEk)fx_(DPx)n8V!Cd49A#8sqbhFk>5VEB8uJ(&P;LvVMl1-=bj4 zVN>Gh`3TT63fMzL50@2$ftmH~2q+N+^Bs5vlLktv*>4QL<#tOQet!CsE$MFW(Sy22 zAmJ(Fz-h`T)K1UXZ!Xk6N^8?*k=Ew#ZRq@YNf+)Z0I?W!Og1tb!>iHGNeCyk%x-lU z#!P6@$o0Va$Aez4hxV1NOnk$M7?USN;*uw&XU;dD|kSsssiOLuEa z`D3-&;S&LZ+}cXO=>mJwA=m=bcyt7Io3Rg6X0wZDxY8zU6dZiE`gKw&x&lNQxt8yY0A!4)zEA){-kk?>t^h%o*uy#Euw@i5&pzOR^mZOxx%fUG zr^7b$%fijKKuru6*NL`;`$V(GvaGRuvq`vrJnov~q|}ZThUM%WvhebpTn%SE=u!nI z$5$z+^7cYH0#)*sPVv@P+NtWB&;Iyz{QUh{p$9|tCWTK}MgW37HIC%G;aaw<59^Yx z;lVia;UcFQ5;@{A%*Z|Kj@*oNj_~6`bjMemg@v{Y-4|bO;d$0Z@98`rx*^+v<80K2 zE8&MNO5tae!2~{d4DOoY5NIdc3TBLNYJL)Qn;z=)@_}hmnh!sW?D)B-- zP$xggt8@rHdd+Fh9wP}_VT7R-W@u<=c$kq;Gw?x{CB32Vq?1lM86Uf%Pg1oaQ!78b zp6{&jafXE0mbjy2OWc@ji40I_?$9mKrfFx&o|d*^En`o}IJpzzF{T@_6S7^*grb}1 zYs3 zaF&w+whK|GEnMj>7$?>XZeVi2+Ka=U$4qI|NSOrFvhv{xQx+oYWmL5>*rW02bivxW z9mh*kQt5cF_ukle2`U}0j1u;O#uN-#$GfI#eb_AqhIu!K7prXQvPR_K+rp!q;IlP6 zqu>K3Lw2$$Jj+?vHkKmsmO{4~{Svwzc8G2P;oO!u0}A){OKY-RlM zc-X`fY55+nYP#MC+uP8!y)StsYfqwq(z})J^msSsoML{LlUZ~DI8y3?dyWYace_9wq3K+t+ zBk~ysX4EZLHUV53YV)j@G}>Sk);^94e8VdlZ3N3@YQp%Ymo)H3QuRdL@HT?U?Wz$;|BXk_KJ^y1v*o_V`C$ z$-qlpC(Tkcq4>MzJ-Du^7 zDl}AaGRb*Y3#36z(+iXf)X5@SHx9sX%gDArR4}do%7NRR?;3ShCdjA_@*bw*_-$PH z1fA_275%^v$#@v~ND5pgzzrYC(joad=s=g$9K1*!=jz;wiL$rKdt#lR1}<3B`^UDHfXG8HW~HHiP&{0$ zeP^NxenB$Fs}6?t+Amq^d5I5GmzZeo-cTl75dbhcX(A!IB^l)y074IJJYFFe z#Ae6BD)qW}h}@?K#duVG6%LG7XF39t`NK-Z0`3r)qb8wf4l>`yVPq_aAHhR$%+pBr zauhF=gF$FWjX^XAA?LQ{Y1HtX&J1W%!hjgZgXl1gpnch*WwDT(&rq?VDhST8fDd}` z+fG#AG=-R9B##&THD>sg8vq+vOEB`^?B$f;fPA4Bnt({%7nP zOH60qHqZ+dGP7*R_K5l%F;f-_2uyBzxG*UJ&WY24^t9 zh#VkUF&LsPD^B(GI0+-dOk>JVB_3G~g%G)?ys^i1U>e2{66q%}9V1`&ig#;85f5}` z+1=3U{;|Bvp38^RzdhLvp7q8GS-rm9djQ8Q!FUpi=e6_=5{;AxD7+sYJ1+Q1Rfr>wF*L3BH zBMeP9Y~913#hy${ruoxe(Uz<#@ny;PRf&Ik3f5MwG-F4!K9>pu|s%KNbZw6^|ui%L+ ze!~6Y3>9Gheqgr)Q9qmzH6=B>Vu|P-m#lpxSsH#|DM>g{AD+Sn5joKSepAkI&bFcz zn=nqKa!`R2L9CXMQxi|ELlKml^SVWi!Z)5*yh`^(; z5F#jLP2T4#9F#G!{j7MUS2QL@HXXHP;_*oILqsE}B4#b4K87eC^vnZ?W8dZ^YxX*C z!iL#9AQ~M5X*jkb!N&=(uxn+kCAZ5cUwydVm9K)_4zGZd$|n#UDGu#-AhK-y64@n#<%mdcz&U5)>GM8K#O`pqj;EP+af(=~v#zuy` z==nXvSKo54Vva7|X8OtT$sGpqhqy~t#tN^uNp~~d#`=e4rx=tZ6r>g`KQb)Ysu}If zX+XePd2cRvsMZ^+0{RrMo2*nwRvIsezCoo!I%QnG3?jYY!-01)fmaRZ7kfy}OrH&M zr>wxm*drR5CY21^*C@m!m9@%fOy~Ha-mWXPHtzp0*VD0T?Sr)|QV=7|q97#M#5+&? z_GIFP&F@fypdc|dE-Y!qDmL|cQht6m$-A$JsQKA?d^Htfu0Gl5Pv+>8P5xw@YgSR@ z1aq-BWK%?uDa=ct8qqb-=G=sARu*dKLrz2OK{kxqDLYdE{K)H=cb2?|T+NS#8&C=OR=h_WbOnibNdmF0-BL_@%H zSy^2~S53tt`pquN#NujHL;^DpAdVkcZhjBYMAtfOkIy74OY+ia&Tb{Tls*=>VigOj z)KoR&$^N&*%h?Lla>7X=+zEbc63M4{8Jd_O!*z6mXN%6YRacS?TbJZ0X=0FZ&L8E) z@tjy(0f0*5+(YiL~r&kc~gf6Ox_@O3D0+9g4vmVbcWVXGR@Zc zJbK7$G4O(MopQ&3##kcoxWW4LC4s^~pL9u*S2LC&l+cxsJK_`z*V)`^@3XnxW24utj{#t);!3Jcs{(g-*%l>vhGu45FVH85+C=H)_wBG>?>X4Kd$#m20qv?QZ6Z{UKbSMZ^XA@YSJ63~zc zGDP{%a4A;`G1J*1U3nloAYWSI}JC<_aMh#a{1&H{1O6~CT zDS6-y@IHfkKAu@W3F}pw>A?C;g2$FowO1yp|9yPI=zGjJ%dZ!v5zi}Moqjy!p1G6}Mm2U~ddqprF17Pn&UomCl*G9zT% zjt&ZV7x*2*zFEv^Xk@^U+!~Snv?6A7K4dTXu$ukAA5tOW!&?5KSlvX)&MxSPGE#iE z1%0u1{uA1HZq(tTI;cJpc-7D}pszvysL8!?tmuckvYLoH&+E&{yi#82y0~HmTU=^j8_~>N)yT2Z&1-opRy37U z(WtwiY)E8s66eN4TY^PG3ri+vtLI`$+2KluZ)qu%9m3fz)4`={l_~zP zu!wRhU}t>qO7Puge$T$%RrX%oinVPWF%&{bjpiu1pTg|(PNBIaMFoqwG250DAJTo* zwxsxw9;~({#fRd<5=JCZjf`yETTv;q#Jt>)r3KB5sHb1C+d^C6qr0vpV1=5s8bMmbv>kS!&k zwE|p}>iKFK$m|yN(jp8`<+2e|M-HV|dQb8??^9hfn_T6U5}h{{X|DE?cIH8J-d}W0 zvwV$LN|s2vCa(382EKhwtnv4yYvMY8pI;L{dpMu>=1s|(__$XptcfpI3z8{l{-BC} zK=h!xt}*z#69T6M2tiK?yo|D!w_+8eY_<_|$~U-61&Knb9EAFj4VnS9BoY$kaQy8x0_T;MU&H-W#;{Xhy0H@dw4iIY^p7KgFIKTzCPfQV| z9AE{`LbBe)xm>=)!+xjB*jeJ04*5XV zZ|qL8ej7TlgyOIEMh;{Zr;S9*RcRyF78*&{a)j4mEyworD&?VFp z$4lrwXr7GbO1IsW-r~OLzN5GYInM{N+ClC=!C&E(Qi4xN{Yo#n|D=AES8Cg^BEphJ zuJ-b!+txMyzLeCj_4oTv>TA4Gfz&sV-yfK%R`kN*xUWgn5VO6Ckv3c^&1A2gng1&Z zevRH9>p`uzbC?8_p#i-bC2iB(*ec~b&UPvynztOU_asI=mh?rS! zi)uIGweununhys#i1y{XS(+e8>>DE_29hOqSpk4W`cnIC9)r~`Vj+y} zVsanfa!a=9rdKL7Zf*%9hWI*FofbOsY1tkgxee<89HMOxy~3M(Sc#m55v+dxudxWC zFuXbZdft*DadA-?uE;tg!39P?y%j9u%k8^-zv;R8m~riWN*!WCeO{pdMnI!+i1%YMiLfwtrdgF5wXzDr?+QG@ghV1% zW!m7+r*bEON0cySAJMPaL)6ta7T#cCWv!LzRrbrhdu#N_-w|m?f`NvvHEwqe>lEWR zgc-3|`_)xxLc`Tn92oV*B!Q zEco^Y2Y->rk!-HooiX4Dt|InmP@)mB*!0w1wspzti2eGyZ1VPld5KkBilK(M8pn{@ zXkE5@!!hfcW3NoD$T}UPjsNUdKK1us|KP{wo@LpYI9m&KmKh`n0VOw%7|(3y45V-z z#o*7yP?nevT*+Q!tD@|AvjBsYurO$UhIS?gRyz##YIUfNRQC{vO~nAv>|&fzE8F9uy628C91gCcB!|%TFC4WI;oo_J`}Y0 zw-4p5(~<05ulBSdpGVThPpP1FJc7G3)ljb?SLZS%ZA-t;A_jttX}86y|q_* z3)da>LFsZ*_(m^miCbg?FQF#gz;_=knHPRr7o|YHwV(%zxG{87)nFd6)RdbVsl<$% z7OI3C(yv1b7vx#ci-&oJy#ph-Dj_vy18eTqplM=cVX}iQZp9ilH;stBg$eeSds(Bk zV~i6l44mLW9)_0d>1Tm0%V1kePio4EZtBRmS1~?B#z-E&VDKpm#{`!1rJvZO0{>rt zNK47`CmCZg2DElAWRH5IH(ab@;W2ZuLo?!v`8kjzCXhiokkvjABLfw61aN_Tuk_M} zB9xY!phVCBQYHGSHUmNjkR8|2)m9HlSk?_eZ);RuThaBz%wJJhsY%L`*Haeuy4QJ| zmasx|d$Wfkzff2=F=w3k!pIR)M6y>7s!Ufkds$lT>s4k}u7QfrAr!>#6dF=n%1z#- zZ>WEiDY`iuojJZDUfVxB$MIj&h2!7i?HI>Dyd5{Uc>%)>l{_GX{~M1n=yN*F{_S4h z$e0S94n+j4whd^5mwrZv{o0On^?5IAbfx}=ITjwq*;_DFhq_dkY$432O!W=B>8$#E zqh*pk^d~96G&*){6KKYaENC(>f(l6sA(TR~!b5Z)YrIT20a#>Ih`Cbdg;63iPMQ?y z9`C%7IpSGK)I#cc;=I>N773dh8=J)c&=gqr=CzU)RGRfHn=~J3T2LX4v;UvNKl|Pn z|JPELMUD9bf{3QRChqeNepmHSZgoP$v#=VFMM9!i5cNXF!8i$jJ$?ha6Zz5ZMbWP;%)Rb`4yA zCm+0|{J~AD1OH!>@P9E91(pQrF0lVt!6v;YQa4nMww18F70cSXQESqmFo2`Oa!adS z>eXyfh+DJ2NUmZw`hFj_+}ioSNwOm#Y$PH~LXhl!G2YUU9+T*d${P|?@+dFI+evv9pUBk5f?lC(2dt(LR<L;HX?BRQjTzyl`L`uTInsb2(1TlHUZI7XmDYH z1K}dkfO2aOj6H6&h*U;6LPa{zw$HBV*f{yRa2PXf#XT2%Q{)7OAM-SEuuY*$noo|| zlq6KCQEP1xELJ8S8edDs)|f;}Fe;J=!l+3eZazUvw1{C72KQ!Hc^ZQV2m8);B7+e| zTv7E`jdYS4Tp9T^@+$x)l+b}8RHf;x7W+nk!+0uZuQUKDZ1s|c7<0Gr910OT-~uVBpc5LN@NPb?mKC)eK(oTmCWlr)YH&!_L`|dF1!@=MLH|kKxKppUkv2OndHs1zpQo_`* zZI8+FQ>DoA$SYX&64qlH4P3w48T+3Jqcw*778Gr64b})JpT(_M(!w-m2wvu7Qzw*T znLT@M?g2wLvo%GB-9-+}9Cqv>CNfu-5ieyP(-nof!&*1=0(yEH1Lvl{Rh|N!K+c&`-B_2lHOC$ zX75u=^p#%Hz|(A#J>NBG{VK0yy$^ZUMf7d75)@tS<*gA(yZ(<|bBE)0uw)GFY1gmy z_ZEUf+lihK1WTm10uHL|JCIP~sSQeiA}%|sKJH+QIw;|0zwC%Ed8K*A;?P2g^^ z(0A+Gp!GyTgq!RKj^{QQQ8pHSTZn@KN9k8z&XFvfSaHb=ao3sU=}+ zsr|->cZb(A5!@35?>P+n!EcsPpnPAzj_|RHe&Vjsmcc`h*g}fJ5nEmoMVs{??>vOP z8XqxPPm|9Z-}ol^9ElIp1mnY-qlSiYeK+Q@!}h%~Oqp#U$8ySBekmgSeeF}XxD~6| z)UnFU`eZdbM79$7y7#OlkaEbP8I%uoIVgZA#FWvznT+m1?DrG3p}uN{T?A1+$$CZ#>7q4L%meU52KbQua93T%>|Z-`(j;)l)z48DFDRPsZX#Y41n*$0{2`Gsuc zH+tJPcVDOJANG%uhD`@DeX`S?|X-CbB-jG$8eC~X~gONBmLRw-`BF26dS$b z_jRzcFUR1uSW%TDAMfW26}dNOli&N5X&iBfxWh~SK%3w$Er5gEkKrtYji#OFe8KA( z&9GjZBL=gQ_UnsY>&1$Y2W@4XzlAu=XcS=!C`AUYqzYKHx^#h*jp=SL`9mF(Wg-a7 zt(-`3$5Uv)SeJS-q}Bp)*wW{utZOT|frW;kfKfEP5>7wF23!Jh-K98u&>J)y(!9nB zygD;S$Z?+Mlr0*c_D3DyJvwm88`^_*|=~ybC_FnjJf@zBLjHaYZ(L3WKS?`$lT4-mDeh}mCX>C8bP=VXsw7I z+}0E*=v&If)x6N1?r=*|sAYZQF^~;xFM1?9cg#8=B$BoIlOBE7VXw{^F-a2niUmIY zVxgW(Uf=88FQZm%y!{{KDx_UT2mn8pK~rPlc?h1;lnPVk|38eYyMu&uXTX<9NMt>^ zGh>acM?zE?fMzjp4b2-%vBAvojZBY^)4XWxVOsX=r|n;5N$xw6I>1!2H1|Z#FycVe zMG!t_0)R3Kv@0j(kC!Lt6KZ9@_`C1iBmV)Ue-9x2$x;z+93<5XJ-bdYI<136{}CH$ zWP>tZs#NAVZDjq@72a5BuG4AR-hcV^uYU2<7w+GSuK4%R6@QX;g-b2sDtVatBnQ*RjOz!2l@go_V%`MB05tN^BhPEpmSVoTOilLFt_PiOZ$&~b z_zE5##3Jk8&%Dd+3+*@kg@t;KEYuL>#RDsHUWJMdK6=ADqjPWv3a&t*a>GkdXcx;} zgll);0+Ah-@up-M^A^#3_VoD(vnJ)uhv=^+f!)WdyX6NA#2zXUav+5A!i(`B~4_Veo2q?kO zRmcH|K{nhrY3%BAT-r36?#;OL8W$=4{)VQK>1U;Kb?T?1#h9{(PVtmEX9@$ zW+WXs`z6Odxo~HejO7|{$i_0$$3jVaBsUh|8_MLX91?D8Nrv?QviBx%c2-rs=sBmV zQk4`)wIT$WPE{C+Nh%CdGS>N=VyoS;rQ6t(X3b9UkjhY*D~Y>K!i$cgMs#07pIv+sGlz~fXh-&UAMy;BoPo+#qM zwmVw}{&$NPJ?7n1xG4>2GPX$S;68O)E_&-di|i4nYbK_tcQFzn&aC&256-OO zZ=W#7GfU2oHKHP#3|9^whR<^<&DBvPeE~HHr>I zlQQ79nf<9`_KBt)6M)AGHv2)q_K0Gh^(*LkE1I$5*VQ0H+!hD0t;ZphdnC;f1p`Xd z_$h>%DPI_O4zQ?^+m}X|e7)CuD^F`HmYR!m8@OP}nMw_!_%w3|2OoIX*l#M{$_BWA zYrze`kKE>f<uN zu(eb7>jLZ>GW5BXg}54xQ3Q-@86+8`JUWV(_{tT9&9|_y%N^=o#b!EH-L4n+4rM#p z6AV}&o0jWTc(Z zFyW45f@mT}$!1=_&OpfK$t;?9HRH4)ON%gt$t~B5N263e%!x#o0TX}57cMD>HzTwcVAbe66MQX$5_ViU@_C27lMi?&jq8y` z?l)fN#lCuaq4$H{hS~evZue}@KG0Ecssk(dkTx1cY|Er}CzMVkIE^#n_=|^aV+A90 ztblT|^JIfUSrIIziVlllcw5o!I~J5)>eE09s=NszENjL#Y%8jr*Y*w?3ENWXp6(Hn zg}B!wrv3=}w$7^p$#!H%;d{4zhqJBTBL}l~WXIq;E~ylZ9~EK<@T_n|;>ieGKpbXL z*^y$oclc?g9mMz2Nuj0EtYn-rX;+D{^o8_WXgT_;bV9l!-(^hbJ822ryoS4KBL0^g=&uJKkVHH zOs|dkKVbb46?_EiMG^>^v}u-x)eEC*BdI-}Yyw87Sbi=UdEz(2RV|@{Z30%n4EZLQ zXPbbB7)5E*x3&r9+<9pmlymxYox2Pv!yAUP9>BIv$yP7YQ9mgRp7V92Rm)F8~;#GUs8lPmNK8R5q>rP{~2M zJ+JhJEXk|Tpf)+!IKU2j{b~o6?)6U9t}Rsaz5bo{dKY#z0_m}Mx^pR3u#K#mQ(ctBI=6zH;iYhnS*e$4!4ZNjp}H{ol-t!6XJm)VDq5mr ztRlh?gk2KoJ}lvyW^5?t=@m?^Cn|LNOORe*AbV#W46`k#_jR&OdT2l0UrMH%+`eO` zj#$B_+rZtc3gxaaNG~#M zmRKQ93vO~ocm#PkLtppM+gXXc+^_@SJKR@!ifXOan%c;ZgnAy%*nV+F7Q z5yzoHGnNv+hZoUfNk<}2-bsNoYal3R;_3vtqz@XGyY1+~v|uCf7vPSPf3O-9JikWk zslisDO7gU51=uIc($we#l9Ui70GiboXb}OB6sf7P%%Z}E55YRbEwHW`N0|#x&VJm{ zhp^r&nK@lG{L`z4Br?vVmo#&_SnKcaco)+KuasEphZFEuc*#<0{YHOZYOUYo@AKCB zr<(a=heJuDS9+y_wf=^E$7A3y?gs_&3*j{3*h+g0{!W6yMD~s*j-;2}j` z;x1Kn6UZs_l;dv1xAwT(iouJ8i4i4^p+uT7xiE(;(y~5w;5%g=H&AXHAn!mWGH+rQ4f?m@jsbP8-k=@nC zrX#gL(qohtkx2)O67B)F45%UIi#|l~&4d+S-h4JJgCU?sS@rQo9ZE?!kIDZH+z1f} zk?J?W=}Rz3q5?B2%fLfi@7sz{c7&H%)g+h#pguiSjdpJ z4;gt-lK|mUuFw2Slw};5X=;58z{blVybP~sy6PQNLrxz8Tcz@>H`-iO>a#9lgFF*0 zW=eJ%QW;zD^X&EhSV#mwoRzNk+*F@+Ge%11_Kk9Uy54{DOBC^V zIanU{=HXd9x{=Zc{>otaoW7iHvHY?p;>oFPi=DI_X?@!mf-QmO6iH+ro$ zu|c>Rk_Bhx3WXSM*|J)QL&gnHjJ0Xg^?Sutb>q6I57-u0cO)e zA&wGmDi=UDI0$Q2H(dq2Z;e;K!b@6XD2WV$))@bSnxLoJRih0&afQ^6L~?zVn9uV2VBMw`e1<|nv&q( zI#Tp&bG2s8p`zlN)la!=diN{L5IbfzDVc~K>Lal5KBF$xCCVblO7h5W0!E^@QXBh|`Eo-bI@lHM7kZ z9MdQ_c7+%hTMvw_v}IWnDcXl>gR=GJ?*p1KhvSzGl)L50?iUjZG z*JQbuv^G#ulOqZhuFFP+)WK%CXGifmLA{j)7}#^<8AxtG8>u7{?qJc4wVuxdduWE^XaffVez z5O*xDK^~I^$ABc|nqAICk)>B~eZU*H4JVW!TYr0A6F(s#nK$HWDO(g~nzyAETDmb; zM~~C^)}EsFKHb*FW`=uRw(_*@_2 zBZ+Dhj$~`~EZ0rNUlPlVh+*No_;bE&q&`%k@k3CgFK7-u;sVmp z&4KfOV~ertlYy@E-r7LP7(|kY1I;I@fu6_bg2UU#U` zn+8^dDQhF~y^!E9(Z~!=RV*2XQBPK6X*1Tbt4k=(%he@fXX*{M__X56LPa{`M2cp} z1C$THqvy;T%+X?66$)rxwS0%nC~ff%^qrs&!%5)AT5oc1MWkw4VMBC@sMWOEfAud7y#k%-X>u0%~B4 zuYCb=hG0^Igm~PIydAhm0t<&_D4S5_j7APIRPu`8gF%KSd&t|T zs+WoE^Xr{v^486?6CM2VoQ{9}G;Pw3 z$F&yd;jZ6kMZCTMT4UV++T`qVxRH31c3H{*XH8ojYJqs&)`gwa-U)Hfj$ zLc*lIk>)z#kAi>^u*9tqrCacEjW=S{N#`Ft5pHUsPBp;v8&`G5=<_ zD;3C8VK1po?AIS{u`USkqJUYibwDA>nB>F-!24W)jyt;_a7wB3W|g z-*5xPnY9IhrqtqG@y-|C1#k+cQj&6jQx^~;!ZpN@7-%AfGIhsp-1ZT=V2Huo8M42G zi3wuhP7LWs?>Gb+>k&4BUqMU-{ks38h7W3;d_B8p_j zIJ0&{b~%t!a<%dl8t+A^WY0W?Qy9p5EDF~!9^*0;V1D*&@j|LAy*2ZhGcSdcNu{hX zgJuUK_Evw55!RL;7P2;8U4W(b)ZuJ93X?o8&OsT?cJe80>>_QxUX!N;I;u_8vEq@0 zeZb+H?}$O#*~34~dryu|_`vmE$(%dnmR#+zq$KXh2&-+*9m#8T&A$#vK_#oNNGfgh zN(P=9Ho>dB>Ak!ZD z(^H((HIgLOywyuSu6h>PY4(*LCdlTkoQ(Nw~C-b%DCbjM;)N%!M>C4Ii*97b|?Q?n# z7;8+=0b|jZzyXClszcZ@vmF z%3wO*e&(8X1v<@|F!XcT*Lygm= z6L|?B7mr+$411-6uw>YBnMv#YPg!hRx?6G}n z4IcM;rEb;;+c6B6wj|?X*)}_Six;+?O$risHmR(pkfGizSEI!VBE*)9u3qXuKj3|^ zfgaQ^7i%5Zc8s_wC5+LMCAFR_zt!JA9V7<Ig5-&Ly8qQx#Z<2o~{2>UQ2jQ!hP2H&`6%bKczIalNyxxz=~pE~k>@AEI<#R{*9BZLlpaRWMog_w{xlyofp!IV-I8Xk zYuJstU`#bA#(SzD9p~c@$Y#lX-AlddcU5jUUN8mw*-%u3+jzWhIBM}bGFWN!Y@P(I z(HDdyHN@1^46)oBvHl&WlZlGtO!Q{OLW?yDXAcXY(Z zgb{=E(#0$?zz~KrM@<@ZSJkp_bFY)16}I^Xhj_Nw;)eo2OdCvURf(czjKHAI509!X zpoAxOEY7oJsNsoc&LWe=c4u9|z*6rDFOKeSFcFRB8fRVGu~;lld#dE)c9(!sKh%+G zR#%we#C*&4Apyj-#je(|>4|K1g?6RXIgHz10$5v3By1&O)&nh^he;AD;r$CC4Uyqo z<4}I0ol|?0*$6Qe^bW(QB%;S4z8@xbovC1pQ9_7etE}XV?*@nbctzGj@0yzjVH&`? z8cY`?8A(g_11@F>gZsXAE82);F$Y0yDU?HpIJa`VA_ImS7ZQ@BYz&)J-*VbrHGrwU zm>z4zl`o;`?`hL|F8_E0lrlEwRCF8hcUdKSK5z5ld3_0m$fj1MnclZMNV{=@mu8a` z>RWYBop`K4R??y}PDwl-1P*0y|iGaCCiuEhDZ zGw=s)emG+t4|aKDWW0S_7X{VJvTgsjh zC16JOT!sK8=S-L*2fA6`?mLMzG&SI^^mdJP(10rfWGU+qv49vXq5#EKp%)UX5j%<# zW-oy(uJ*1NS$su*gM;C2W}otGu)t>4dTnDftoCyB3)e3N46=TaxtC`l@CBXpTB}5n zJJ2+|G+)IPUeJ(@`=2y%lxjypEjD@S5~C*hau_nbMwBP$Y?gdVIYC2n($d{0%3t|d zvgbP2Cl3fB&{;0QB_!E+eQRRWfo^!44;WO1UjY&+A@y*68ccKIh!?&cEP-3&t9aMuyKD-tfjZ;q&IVyyY$P=FNNS z@4oGAZ+rVY-tl|CKmVQYeCHp$>%t2!{KG%`qd$80yBECYkN@OP{^U>p?9bo(-uEv2 zi;FJ0=r8~Bef+%t{eSgWfA!ZFU;H2b=0EYWcmVdWY_1~@4+p62_ z-}dV5)ep+Q4^=;me>}M|2|#~ z|L(6oQ2j*p!RkZRsp==I4_E)8`bhOt)lXMHQ{7#CwEEd9=$P{4#`fypyrcD`M6-EI zpsL1~A7}Z-_L^9r+H&St%ZMdwC9D|%gMm3eR&C3j(Y+S-d>@U$kFq>S@6J>gTH)Qb zhEY^Y1|4f|Wmiqleo>*?9U*Bb3JO!_LSp~Kb&vbq!bBM4&u~bphH9m)9t%Kal5#K; zdI&&RavD+By24?pg8FH8QkXv(GPnap>7xO?N{QqS4*65o(fL7FW#n3P`VT>2jYS`k zqV$AJ!r+_jyv^=Z0w|st`UkwG-X)40qm@6&*1dPvdG9{jC;FNch;jzBTYkp~nKqtR zcH(f594C|Yq&D}E_5g03Q62tn;gnQD>f&+76pL+(nlehscW9bWvkzRJu+p2nJD=3< zJjnjC_1$VKZ!0z3>{UOeRX-segGEGof{Di0tf}rDc4P~qBs{)AA!}!Sg0?wWyTRjr z_DG>Nt3m6YurbfAT%_o5ZlxYdU952jlC5t?w%6_**b=7Y89vY-fNF8Be29t1ag!Z5 z#fZZf+&%wT!F1opQFWW4I3ge}MGv z^X%Qnv@dfj16dCxorn4GUOdG7*w{6387xQ~x15v#5=iE|d(a1YAn_|!B1{wKjWd!S z@A`CMC?5qF9wH-d%@D`VVfC4^P@!pJVt^}{n4saK4)bO;w6kki^a)w;xs|%^hoQpP3D!dT(>$*O}h8c%Ujc2>DD?Z-#-2T>j8doDq@ zF?X8?7W0GHX09de($?ZvafT%*uNwcbYb%G$IxHs*h;1j_5-iQOQX9 ztJ$47BJwTv^>zTw9x=m5P^r{Z_cOlV9=bBGU>^OBH*A=O!h#IXI^H8YAAXqK8^O~2 zQQ?|!cw+^aKPZJs>WfP@k^efb?F4>AsFVCbsF?Oz<5M;C`!>u$5Arg=sw;m_lepmV zs=m_MomV*W^)H3y2?vM%Ca`6+$LWdYe=DtmQ_7;1;VJ=~dD8E)#Q>~#Tq0Ys*=n-K z)H%9@UAtA67^k)tl&tiN-qb&&1V4jVsuPtx}AnWoANJ)?A+QPJ+a-W!b*}ljp95cJx)zE*$@CABi`C@2d#- z21TXQs|#^Ptq-`?HI7+D*|UJ>n5DkOAZpe6%=4;4oHN$@0Q-Ht)~olOS6zrj$SUVm zN9^wzIkreLdIQ_}0Lr%!XtoqafWl%k*uw446~4GWQ@VB;I$0~==XIq3P!csKj^U)@ zE06U}!1~>T!`pZcW7`;46WDlKLXEaMxLbAaUW@(+3o=0hbWymAa;5pk9B$?~uTf-S z=>+Ue4)#IymtLKe6^_W61j}wjQgVyeyF-2Go3W#@`PikcN>;t}b}y~s&sFSuD*hZ5 z#Gfm;mRCwYI2be4Q}$4qN8WFe_mqjMt#Y$rQy%|2w?% zW{KSpW`1tv{bCrN;v`QBP!TpIjq5u0W4$~y@=UzDmqpiE(Rv6@U&FF%@l<1CNRl-y zrX~?DFdt%=6Ou|+!h+LCbnAR^eLw1*|AwN?8lCznA%qfz0MWj9jwHi!D<;*EZ4Aqr zO}5(o(>1=&TQZ~nssctBE@`U~mp;$T?e1~hcT-GckIkMgLB;PEPHx%FpbT^_s;HHTdKWN8M{D59`*9ZIi>vE%3wCSJR4mBv*#lfVOXn(LgUtz?740`Rx7g; zdL0DSOKtNRk8H%Hc-)&aL3ateS2mK*c~QG%?Q#~yRc--sF1}0=XJ@#tSg|xkoIMW6 z+HA@wd?)>gvwRsv8rewLMgPPni^CIb5HwQ)GQP@pi};Sa$WDLYX0XZu|Ff{ae#71M z74N$3uK&^BkltR}+Wc}he`&G#K3s6~lK1vE3a$TlYyEFkxZ0xo=fiRT@PSO0oWIDtY6P_gd>0924?We!R*bsH#VpS;t;q*iA7E&lv^53{50TWeN{V|v7za~qy zlymi8igU%#zn4B)KlEYPQeDD!Z5$RoQAP;MvHvFy&i3(t7HFm_i$Z@^7rf-DRpF;z z(Ka+Ig7ZDwopUA^V#1#DYPL!K6RTlEAiUt2d{sV69kTyisQn*NyKGngi>%ZJg)>ac9JZZdx`?o+t+%33Z{a@GTUn_0 z=Ta}&V1TgTAjzIzU8wY@`_$OlLcKp`z3hoQ^5Lu}CatZ{)zXvL3#8W9R_4Qy^t-dF z4TV~N#9BdMlpT0}?c}`By3wncKl(!UZq4R=JE;eMlUFj2?z?Qgj!MRHrI$31?jI0* zXNU1sUdh0}Q^22DOQU`_dr1R7pWuJm@gn;zUdh1!zJVW3dVjT-H1NNNl0M(p_K6_n$>5oquz0NC{uj*}rXvj3kxB}!dJtp6WtzO&~@U3j)*Bz(e zMz3U3Fb|c;ijGTqbCZ{}DR>LP|3k-wgExC61OH|LPf;a-e~TA2_-`Wo+i%X}->Z{K zw|XUm|3>TnF-ghWyrhAD1HnJmvHRP+l7Y_*{E#TONgLa}xV6zhamSL|{k>rclUV!v z5Bht?O3Ah(YwjWKL%*QlHhe5Qvv1%zeng zo2};cm=Yu|ptN3Mn`;P2UY586N1-Xu>0jvom=R80n3=piOH6cfb)wqY=ysUFs`H(DoVLcD`k5)YA0nL0Q@d~6Soqxz!>`21(Q|{Mtc0b zI4(8pV9-2a9-ArHBRxGudJ5YYGhM(kJO$!q8K6|7!YgR&5*xyi;JbJ6yWYir?-k|x zWOR{@P9?sSG(hQlUekOjC&}QvvxHI@S34WAEYk_}0nAW4V&hkw(BlC!hmm-jH8msM z|D~_xy_ks|Sq;yvq8N7@KWFh{BQ(INE{CB(9y~94kJ^;6B3?aWW3JtQC!k|E=VnN@ zzlDn0?!zpu@uq|p+HJ`5K|x#i0+=KlC4LDc&dlW|Xz zx<3#O2FH(}!Ix=Y=Y34-;L$rlzr=?O51oMxHGu1k0qF~Tc0_;U*Mx{`lVl%o3xFze zr@^LywKu0q5CQiZ1xRlsofwZ|uu%X6h{94S^=d>}!?wI$uUKf89Y(vtY6oS$6yE97 z!Ii?7mkcuCMmvkXx4OX?bjef6G9&PJ^>HG{=_8rlFMb%kgQ?Vo#=1D9oU2Q!z^A;H zNv6}BX0r!p!E3__MCMPO;;n3hv1Kze2@96rh$xeJ9c?W1q& z7N0v?2AnAluC3nvT83>7%9eq_Y|}4;dZ8GA=7eR3!@5>2$Ckoc4YtG%#M-vV-yiWR zCceq3;m-2+POoGF3QzoyGp2{H@AQ%;n=sOB8u|M!uVmn{v;bd}zwh>v242EVJImkq zcqIcL!c9~8`=egcz!Up@zVG$-CRu@il(?leDB60o~mv+>powc|^?kGqJNJahuQjQm=52Rv>zi zk_v(gPmYY<9u4PPT;>4oRRDSd$)fB@c-U+_V-(H+(L0TH6ibw-;-{WK^6ss0=)X|z z9%2+r;dsRfuV~C&4z?m%Bk|;|@`6Tvh*s=cDy6USl1tPj!~qS~M=u z73!}*v`G$#k6@iQw^W;xyB$W0t_)2)@>@boHLku4h#3LxD`Lh9FBLH(fZqyYM(F#C zn6ct?h#3n`ip_CQogE!54B33d&5UAt-!`;LoL-~ z=157BW9f^GTH=^RR`{5v9{Qz($}{R)NfjvTfLLrx4tPyCC_7+H zsw6;6Q!(l`kT8~2UU8G|e)70%4_fbBakW>xQY+4|BgDnyXY0MJ9U+#3xFs2j(DYra z^X9A6;&O$9Duh~p^WbTgwKn$u#6KXp32}~e9l1duY~_1{Q^;^MOv2`0@m$|cQM z(uBivQ4(4}f~VtN&hXUAK?V@jluk`(%Babp9_7>LRgcQIwaj5yTO2_4RL8|$?v+fG zI~$dxp#+Urc*!SKG^Rx-`{lP3--Quo{Yj+>uVmnn(pA7KD|gPf(o348NMlg8?Ax8d zukuO;9_Ac?KfRiou~&OZ1AivL|N39@JK>4cWw6F;8GM**a^mS)e{bUH>3GjYV*F4_ zjMjT;TjbMK!HOp&p*>CU^r?Ddc4WKxLp!BFixFd+%7Cgqya%;oz!)5j4)>V=7j~dp zgE27PLvUI zT4=dL&v#^;Fbum8h`E-87-`gY{*Wcj%#fZbo6}!`mS=)S{z1XqsyS$RM zJ*Nfe-TvO%9^!}{l5#wAtVzD?*qcx9VVWU>)dt=EDrKThXoI3ik&pe`Os^hMq;Jb5(@#Mth@>2oVc zyeFvqIlhrAJbd_{^~P-YObwUa^F)5`)spL#9`i~zd>U;0{p0@LhA#&Uy};+afVFy1 z3xF^9d$THtW*z5ukH5DDRAD~CjzoWvBNd%lsjhP1NSc(@HJP=L|GV&Tp;{r(0Xnde zZ13=s-r$#&gh@`2+=61JgNb-ATNioMa%jk(968Q0iN;r0nDV4P1Qa(AlY8(5|F%?* zL@(FsHwcI)_lypPzlDlwAm#}SDzS)sXDimM9L%7`n%&aT*78lCkAjGK`AoTwsk)E% zG1bO8{ez%*c7-~IP3DH9y#NQvsdGk*`YjLcGznUKLQB| zs%?~!U5NlllG6w&ph8y0c<<0(fO1jGfVDeu$nb(2n7gsvx`Y=qe@ZKbS=o$jnLCE> zu`J57EH(#|&f_cHIIk|ob*AeVqCw*k!=O}tjN$-w6*ZMRmag}fruxK=#2i>`YoxQH zGU*jfy*;$Q!5%PqC1#~)y#Ul~YY4sc9$e{wES2WLDk0e@%@zggS6L#?s|&SX)gSX_ z4%R$bW)JZ;OdPI{!U*T_!s5k<#o|}6p9>HF_)P;VQP9lu)*xOaNHhMjyr9d^DRaD>*VX;ZLsRFM=jCA}_S z=f}LIhZQ@6B~DM7Yb`XLn(%gcMZ-?X5L}9vYE^rdiKRLjFO=kfxExWD59kYW9jXl@ z9BCzuX-hsHNXQ2l%d!N3SYe4va)>N%##(k5o2F%?9oHPX5++KkD=1rWW#!VenSwnf zDQwp`Xu}>F^aJ(;t8kqQi)40-(cl=pZ?bMoY}=fwybHnuADmk`w9N*YEHpw?NgJ8X z+A%8IcgIGr{q>3vC*^v&jRnE6N7)m8hqZcc<m26=H)>si@xFJ}Uzl@r^2svY3Pw;b}8U?ykay~u-Rh;AdzT4m=ilM%w!hKuOr6D>{l8cK<+QHu9ol9D2sYv z)qF}G)K|E6Zh13p70gGkW&`LQCfD*>2w^(1O|e^331Fpz`IRmv1#31-sjtNaw91Rx z8dApQ8cJkH>@&9EU`>)0f?Cx~%3()H9R+rxnXPreKi596q)njKr>xV8v+KQ*%{uJ7 zGJd4L`<336KmtIqx(nHH7%kokMcGh9p7DA2@uAM`m~@y1hmUBDKkpjn(#5HK z8%1OW8sU+|`pm^JhV<3@*>W$M#UV_bH=G5&#%o}^B>^01hGfMdWdMt25EXVR&*UDB zKOu~Y0)Id^9t`F{k~!VrbGk&6$mo`?le2^K>vWFkbdKPD5r!);-VXd0rzhDF?C}|5 zEZ}Ct7EkvMAB*Z+ws)@d_HFNo2vxpN5H*tSZ}I9zyp(StCO;)!S9?(-UdptHJ>p}J zbZmaGpc1vXwBSl5Qvs_YAfyK0YrPpmb0Ca*pNI;S>Y1jgTl2$GZ_Y1Qks@60@UBub zf`=&lhzxOhnU#!CSmB`+e1g~-wPGY-K`+|K8ILEsUP5Q;=JNm!B%6FmGgh$CvjWQH zH#u`!DfaSBvZBizf^Bj|NP!^c=%mRNUcs7#U@a3aO0lMQik+~PR%pVthJCg1RaQG) z(^Z8g$k#9=z5kL;2!azmTcR}9dPNhI=)es0j#Oa)b=?nH7w(u!nCl&iUHqu}7P<>q zYIVb3uw3?pSZ#M2>(rKIQcXvAg*Rc7NYv&CdH)6kYMB{ce`$=B3{fOJyN#6mwM+Ob zM%TXGAbzxAe^+@o3heK({Xup`c|-fd4ejl6slfCGU;*lME%KfO^~JE!>AJ~S!KRQE zOokD`nCs0IqCHh9f}YAG)04Dq1@gAM8DZMWzp`JVY`Cimr6;_!5kuX4CdpZE%uuNv zD|*jYIS?BL#6ib(N^y4iRI+i`dPVE&f&GHs!p>8|z1~Y(Us)_lo#8uBNpYQ`^z1l` zyyIC?RcFns?9L0-&(dZ#dNX#GOZfw)1fXf^(s`&y&@^%av9S@etzT~O)~B$yIP7n# zcB&eU!sdOfWfGvOGN0L>%M~EEg|La}`-Zo>1J(Xgg1SPr2O`y;osiHa%~-+KToGq> zq}oJXN;^Wfu@ZRES8$mvD}Vv&h(Inkb^`>(1z=Cct2sei#45&AMtV9R)-is<% z)A+&G-Gm@W$VbBOV}kU?KvDa~j!AW&HQs_@A#ETL99A&uuWP-ii4TgH?2M2+B<)X> z2BpRTSSI*PIy@76RADadc-e3ik$y63zjb1#jqSey<=!BoLWt3kixWsWC1IOd&uKo# z2ljKdpdV%*TG5X>x;{8KM4w?B!D4TMqQ{~rq&~sXZ1*O;Edh8#PSxlFjv$a-tmRZO z7^N)nF9&I6({sA`A<(`aT4X3amEbjd>e&|0?T z%3RmDEe=N^vGJozlX#hQY0|r7Aw);^M<5ikH6&7SpUn~^nd=d3R|*QicH}LN*TRhG zClH8~W&u6h9=cQxVUu^y;*DNIe?|FNuJ*zfa3s1~XisfFv~n~09NmEX7iPn!Wu^Ih z%A8XJ>NnFO$$Wjl+pr_6WTUwzI6>#54MwWB>E}%j!{(g!m;hs6rsWogVAEo^Rg|po zb}wtQ0&@;gl_qov1|X%@NQ1z$OD{ZyrG&I(Sft#nIlwgj&1OxsNBY3kd;&~?j7hzY z8XqVc^uI8)0!hBx`(~6KBvfvp#i=h&1UocRP-5;asfMD$G|jP8$rH!>y!_?5?}z}P zqk_)opzos9!Knlxl@12dP8LunlT+CT98im>3w2cLK`QOSS8hyt0Y#E8d$EH->CNA)!q(`G06oQ z6@IGJ7`r*$ZN~RZLdq#(HB{P=MNY+yWzAT_kWz&*N)-bPNC2vl>eE~*9wR69O2mj+ z$)c@xm@ihvRlp9H@lDKd=k;IbpbC!aoiEp%eP_StEY>K_S;>qw!9it;I?PyvIQ@*R zTaw=~y61e?u4_h6g&F%eXRN)A0+?p^hzpXzDA69zo=xVAvYO!;7B!C8`?aJQtC%>T zG8?rX<+PLpcwRun(I^K{B(<=J*$i}0Tq~8#r1uEZ8FCre>b;W-Mpes1pmON5Vtv$^f!McZI9kyY(qdtKExf zVol8t%gW%v<^b9Ub`t>x;{(@6PI+)?$P8&yl|@2PnpZ`vqV*GAeHtZfCrEO{q78Jy zTQ?ghZ79;Nu6$GiR(eU(7f5B)1mZ-g%-|xN8njz!dcp3$+5r~~AD8dD;R6^kNRmyO zjSu|OydM~wDqMR82Q`$fwv_z21WhEw$|yM|q)fhD){K=*)_O(1>_y-}MI}OByaf$U zrFz*bB9*cLH=-Qnq;se7Dinl}(@v~g?@gJYMJc0n*FjXFpf0$^cGPevzDa6j^zZ~h z-nw8JvUpPnP%GPMVtzrQ+TxvXLfoZ9A`i3GS9MKUEp#$812czKjxz(y6PH1c_XQHA zbUI%q+scj#i9*~9zv~1GVEHOaH${$Y)y?_9=hX1J)w@_AL|@{`jv)4Qjj7<1|345< z{H%(2hIhEiomcLWG_;W%exBePt)mSkOYM+gSu<8Le4FWtx8fVgLw<#GA_dK@Sl)KP z*Ew**u$(njWv|lBE%G;H_2*?g+~wpOaFq;8B^A&UTC&00GDQdR2mvWEkQiHW5a@gP z-n+^{Sa-S3MvmrI4r<$DwH^GFtJ?W4HLU9^gq{e4Vd8c&-8QSKqjx!1cIT+cxq~&- z;*C?O8+VD#8tU1G5`H|lBBpwJt&bLs1<7im9#P>LfnwF&pw*O}37QamZ{j+S%!qmLI=aY&5snOELAs&$ilvM9!cnYH zPcx-kntamvSmnTNKEPub%X?>a8)zhfAiyMI$`GBAc;1cY&{ME~+8!Ldmk#6^`|Usm z4jke*01VI@UFkG#j|(p(J6nwBId5_59bVFmHEh&sJ*RhWcTH!L->0Y~gR4t;59dOR z=~>rhLp4YN7fdY5sw*rcs0P0(FedK{iQnPTi{BxRNC;6ET&$)MQ?o_}Ty>Tz%bs}g ze+7Y>(Z1W`_14(wS$e(oG9S&8st>CHqAo$XDxQo4$uh{IG-``CSv}e^QuGo=6ti0f z0}6y3LC#QaDCEy3;j>T@&eg6O{Izl&SiS3A5*AhO5%)36SxkswIb|hH=OUy`q^5*k zt@JUOlw`(WTNaVI&{=X@nRZ%x_yZe4=9=Ge9ib97?K^rXu4G%~UT!?NT+x$VvVYY5 zIu*V{9Ndj%7NY{!Ud_gOY(n)MdeL(mH!hlsxNCeEU(}@$vr3pt$24Fa1Ich%CZvNsSV=s~C zGL3_HEa8Z9tDMM#fL?k+R7w~&mX%PMVc7xTA^RPJ7XlB$U91ejmur{XGmxcWN$s>H z38)#(IJ}W$o|ZIY1)C>UkdoQt6P629Df!lrE{Jq|!Y;Zqi7i+p<%*;1*kvL&;*0ZwTZ1ywhU!7N9zLAw1pBH zxV+GU_>(!U*|V)JD5vQ>hLRRm6k4Dvsbkpr#g}6Y6NMINW!Dy-Z*4(sh5J2*m4z0l zIcp13Uuqdc{iUtLszM8NaB2$^Uw%1SSY2p=BBHji=VfVOO`!!UaoWO`r}ldc%^+s^ zmRnnBLBxK+)@Sy=g%WICS7<@#ytJ_MA6v%o5^-sLp#?R0kANDSTiNr3PMEojC8_q2#rS#MleR*CrB2gb8%kHV5zEM zWHVQJ|F)|}Lrt<#;yO?^u<>_Zk}6Rfdnx}QQv6*-KWf*aZ3`bYZsF{O=%q6$SnxJ6 zUf6ihfJFDuK^@%FhcX+$Yv7wc;>aV9JnASosPP#b#06qQb8v+i^8(<5)Bw5b!gx~{ z=0Wvc%tj%b&qTtdMmTHRtD^IA5A3WK_*AT7e2P_AFniuTa$BkK2VNW(X+<;EwG$hs z!qgT%e@`%d3xE*E0wG@8_CAQ!4#j$aA;#;SDOE7oix(r$NzJtDOR92mz&C>C)J)F0 zG58Z{|L6)8t)2F@lQ>CnR9hUVohIUYDhr}fsOz4hxW=G1t0FT&i|9eTt*8P#~wz|P_NhfwgDZpPG7<5|dOyAV@~dFqvuUp%JGd(DQb$6y?G zE`rA)Sd!OQ@h?K0F*TZm5kJ`tKE|EU2+M_OfbQ}qE0`fUpUsqR^U+@Kxs?l83~1Nv zijLqdrD%7DkJwJ(AV68g*}QOlCfblw+R%WY76CZ^T&QYimmHXjyZSObuqUUdv`qaBn@%sg&3ZG^Tg4J?zb=~ZExoA>cA;eRZtx%+93BWHn zKs#ln3ICdc?_78=)Lscg|0+8S^G4f+_(z9jW>ei#goRoyx6Vnn3py_X0sAhYbFrNy zeAD3>1>^hupEw{12~E6OTm2T+$bV@bO;TJtqy)5pu0572ZfpzCHskQ?CT?s}70WnVJv zU-CBd_Cw`Td&H&>c4^G)xhlEg30=>E4c2??hAti^WD1`AO==uo312)2CZD01^%=O7 zil=5;4(rgl$W+NQK*>=?&31AJ;aoiJVir_27vWG2MVj4Rg?k29`()U(A%)IN7_Gzv zD7kG%0Be@RD%>Zwt^fk^A97H4jStO2-tVD)I17XlOFoKI0S)l$iv|zC^Lqc{!2@wH zs8TmN{1jXG^-$f2TCB@NmvG+H5#*}jwo<)L;*)4r9McV zDg+EjqR5aVoSS?y?B45>Qu<4y+li685Cv-h0{~ue7>pY31e8Ia&@eMES+D>o%7H{2n$*}~AqAmOpzctiN zWDCAF-tLfYb4YesDCNKQki6zLuW8hLPGo+C4u8lCn-pS+do;Cl6nIPb7y7+`+UJ2f z7v-B6lBsOsCO0u^U{m+Ml%;Nj*LjclqGd@Jexx;v3=1CVhguNaQy`Ps>!q-bg_?>muGZ z=EEN!(i^nMizwcTkOvI`2j3XP$n%R7@pnpHJjFigZk&ZT5U;w$7s$U#9aw>a6+8;{ z?&X%0M^N!~c*B5M5$6|x3b7{>)kTYjdLXe%ujMjQrfL>}fC4<`;}ZOVcl3A`$0dQ0 zd=Y7d66Zt*H3j%Y-R~3iLk+Fx@yHteFPy$1Y)eJ_J11obY$14t80=Zj6 zW0)#at?@x`%c!P`ZkGs|1^KdF7A5Bb&i;c#uuY~GQTEFRSxCY9DX;bu9V7(^8KkVc zEZfDLK6WKK|1QRJJ}h+OQHN(+M+hp4?n-6-$GoT_B8`&);|LsDBKkla(+R}6Rg{3x zO<@WrJ*5aHmB=CM9=vm3Uei2GDu!xOKj|?zPa-~k z$t!Kv=F}|}4Bpa5U?>Q`quf(o$@(aMDe@s<5bR*8pY1Kw@lf1#wQBY6sS?)4^dBU! zX##O46FEt2TpFNYs}pVWu$eU~jo}yirEg+EYi^S2ENKdu+6Kf|;B%`okSw;1Y=l!k zw=%zdEXa~(?3%@bFpk&qEGgcAq3MK{xc4QT_eMr@vjXO_@WdK3qB zijd{V!j%Vt4v#z_kd)wxstX}Ro)BPlU4N1?@vVh%AZ(*bF6#1uqsDTZS~O}|PG}wV zEGHnpbXiMCCMPzK!C}r+2$>?5jplO`l5tUdjx(oIrIJ~0 zI)L9&SH>(;P#~r&nz3aYzlJ`BGac9xaRy3bq_TUzoew`dx3Fjte!&6#0v*sZ_d&4( zn!iS8k(f>sF`^$s0dPB+qm$oThr`sEQ z2VUIlzzGVcT|t?cja6fKg9WfkVtBEL($*?fhE>X%twL7alqI^jSuN@C>Ov2Ag4y&G z4KL}Vz=F+=%hpBa;2|VNJMao{(NFXu7j8tdh(5^2eji7PvNTy}5^kHCI{NX~l%_)f zjwd;1;Ze}PYPQ?C1SLvdH5$80`OIc-w}sEB1z0&+Gi6R!7b-cUd7}3v`#OM+M-dUb z^uv7D459M?s)HHj)Mlq|O>mOQE*g9EgdA~Zfl3Yw6&)@fM8b-}o<(8JOnNl1!bBH3Mz9>;u2@Wl5#vU2cLuNEhc}7xpMOoP{ zE`BeJ&tdWD4A6tmVEkj?Aw43_5+8?o;ZeW{1aP$OzcmH$@b=fTiJ>S=(uS4_z3aS| z8L}ye3PzZ^$nbI4v8v+;UawsUbx~%Fm<}U3W2rb-OEJ?hQ{s{)*(Y?r@xT`!aT<*i zdNL4>Xl88|*17}=dBcn#6hIjNV8o%dellVTQj`fr2u&xk_?Osh~B!Fu&AUft%D@bL4)=e z5fd>6OfFdy9|>#9u6-)c8%|Gn!?oUs@djn+xjZL8sie{eypquY-_mOtQonCeEZD*l zy#j_3SxVT$7-^fmdrPu+sVH=eUWpZKYaP_?I`^f`Vo}+JTX1^_EFAFPX;uMp0-n_8 z4xKt2;Y^(IgYb}SMK(tr1fxq1o5~Zc?uf_A_!6)47QgR@`&1{4E3K1X;xD%LVJ3#H zxT#s00!G!c-G}GWMqo?O^@zASWLH)ArVy0Dm3;+*Hpy7(!fJkdu_OlNd14B6DCrVf{ts9IvPkIn%) z_UwavQycsL-al-hsVepkKO&L|FXXWl988guDM-mCANublD$Me-YHHS)#2;RJGnI?4 z{&+Q&538}9)^a%OnbLnQlKR7Be%9#d=<8p9_St8jbIv*Eo_p?j=beB4`4^0hjWx3D z4R6HfO>cVhTjss>ci;B*x4-=zzxVs|-}wjcy6_MG=-mqzyyrdd`QtzSlRx>>Kf~wG z-@EWHF8a&&z3=^h6}LK5NEU?h?a6k(nA_b9@SqUbSOpe_3w%N)+w!QyqFbr~C1K)< zJ6b}SX+S*{)+z4fxxlEu=DwASlLv&J(#G^xf@L(PL7Y@uCsSIyUyBwz0l4cX>Bjp7 z=I$zDNkT_Ars+;RP3^+n-PsX&rH-=%PVg5HbP+R}^G8B~S4_eLWh7jIx0^s~PmX9w%$a%S) zga`Z?p7oHf!c3@i^%GSTx(?o7myhWG#)!{4Ju_J;T! z-faaKoPfBC#%U<~Jfaz`tMMpJz4N7Hg3Vlaq1S?ZrEC6xx4Bc-oRA_? zwjwLVQ^`s2``Qt0`W>7Q8T>SDJ>+doYFn&YXp3PEXh&T1Z+G{0VM{*Z;0)#8Cg7gI zm3|=txZJwWS%E#2ownWEeu6&Zt=I&;HP>k&ca8grkMn?!EjybL56qN9PETY(qd*ec z{?IlZBNnyt7}xL3tS!+lGa8bN{*A2Zv+82Xo48CG zx156TYlz+yQA`GbZs!IO5FbOM89AFMW{Z5vTluGogtUw?6e4!itl{(6&Fnj$wG>1? z&ZoV;nwBpJ!vuoZ)JfFB`GSm^h2lG$%X1~GQM{PmL4M0YT40&pM1z5aZV4{{R}r-c z$`O}f-eR~S<+5yhFV@3N zKjNcNeRRoSt?@7XE!V!FIWPqu%1^zGN7UxeVn8|muVSMZGyUT^g5h1iGMur+(E6mP z{<#oBGk;&A|3iB4(DLa5GIr#&@DqRMR!&7!5E=AZB0pWr;q-w#pnq5=iBNYT*yNbV zX18<6eJH>1p{!Ob`>E29n1MLYqkse;+e4HP%^?yYiaDi44@D|@fdB3Q*Xi86Rsa^L z^Dn)i@upDFgo2vRFHjxhQMF(LKM<)~AeL9z19wi-{&XasP=T=U!Wt-r#!Q-qWTCkr} zyuurq)PbBJjlkAoST?E=RN2n3Kgx%*+5vr2sl@TpC#<&-{5aF*N!B&T6TFqnEc}3g5tZ4M0?E+lywG8E$Op2?ymCAtaXA&7(;$&nu6zVg+kp!_u zx#c#_lH~?&RuLM8XSeW~h$2rdap+{wqx zq6g~@{;M_a;RBu=abkCuL${z9zBenUbf4d`Jz9cdq(R#JMK&A3AK*NrVp>oKvW*aW zaT=8bvh4D<|4pxQ4d*q=Lt?zw_jyeVWT9&S7*Ela-8WJP)w;|$n%#0w-imlqf}amK z^cE{(i)THhEf3`?DHC=p;=Kbe*)dQXo9-XXCJQStn7~@X9DHgok*jQY!?1Y}umUuD{XkK&1~l7!_fyj{UAplG~^JI+s1(T;b0Z8<9EX-YS$D49k3L6 z`!arpFatx1bayRjMt~a?+Zi=aIAcy%_;VUK;|^zy!Z{9b=2m8l$i=9kV~H{7UP2O= zc|{|M%GBmb;>h<2kom!NN&pLm#{u(|>uIEo5Hea>=9IUxuFwj37ZN zE`4Z|lQsWI`ddSP5mJaDh8LCdsvtvzli}+b_Vw?h>^l$RJ1yDgTYV93RUBcoyDmZ? zeG=TrN2sns%{*Re6@(gXGvf(g6LW^03Oc>IrO=Wlq~~&bOJmwN%*El0tt;Bb$u7pz zOXomqMb#KfPJN@@fG$j3xz%%%79c8BoAim052L~F~i??0wc1!ebo zJG|bM)_Zk-gZKFGY%Thnbo5RyZXG56<=AL;7!F?pGRySVL>pIOUZ$*&Y~y1N)jAkm6D>nlRj#5vwgc^M8yjT(H4Kp_HP!|3f5VB2ysJ-at7`@^fCyI&bB&JvGJW7I^`ap0a}{9fB!q z;*@gC`?42!a+Y+31h*`;3Al(li4=PZZos_`$=rbA%k-wc<^`_J1+#g9uNMla_c7n> zBS7$$t@BS_sgTfX$8SS!fV^;iML!zh6%#Hn-NHfqsI(9cA;jB}?KI>dl_r%2aMY~e z;@Fu81jleaCj5*6%yz9x2(IA{RSZj5g)$sAN3#cKU7!CX?pP5yG(Ml`QNQ>Ws9jx) zZ~$u@YybBby@e`kL`|7a z@gVj^F*bX?E9?@}lqaD)cIz`ohm}6A)#?t_<8V-?xjBQiM|m_hH93flT1O`Vf*dwt zH0s@=@-P>WD3DT+!5e6Gf_Im6$@Pi|V;1YS%^eI?Y8PWRcDqSX(o=}S2C7DTsxo^s zvJ!62p@UPJ^@3`xa=j09gAdfyYJxA*Wj1fEBRM8Z06vLRmy_n0bSB% z#6mPh^g^o)(vUUnk7z$6#uV!j>nvO(=*^2~YGNfqav7K&8mD8GUnRENXv*+ay2-m` zwp%jiF!#YoFxs--Ui;QUZRMFTEd~(LJSk?~Xy9-dw-;cLFNW%&2N0>e%7?s)UFOQj z?Ch?N3F5i zH9{3T`$flFfOmQ&Yee{3JPduOzqeazH5zBD`)+n*+vSJy?ujx@xC_Kpw0lKFA-A9( zWRzpA$O#Msrg8JxNo6GyR=A1hjC?W~cwP$<Xp?x+o>ZEp3l<`N|)x6cdm z=pp+YSXUeS?fru=d`TsKup4YIFjWXYl8-DGhO1dZ4$(8Y$Pt3i5%xjQQOp#=G$F_k zGAtQFPRbq6J!|y!XP<+KX|t<#CA;c8&S5SY;(`Q`mNa7xLnPLKJd~7M+NRtBRjq*> z*d}9wPxyk(;Z$*zS5+@EJ-*1f2`{W3+8)G?JBM2rHaQ&Xct1_}KczN$c6fMtb)mA3 z^QuSDOoq;>y~upG3t*pEAl(*21+O9&a}xZx>Ooilfw?a12SXFx5y6YqxQ{(@)w{jX zyKRc&S=PmA6z;3MqD?6(mMGj}yy7Y4P73$+1z_Tf-Uo#n2fmWsh%2N6cAO)M?wS3K zIhbbnm}}+`kweO-=cZlfS_}?6(JV`ZsieiycsZo4)bEvIz%Aaeaq78(0t>|`X>bs! z>;A4I;q0e_=6G~Z{Md=ROILLyb*js75 zlXdW;>P(_t_N4GcT}eEPNndX2Ap5YlW7u#adV~qjyPDbz=MJxH^27=Ka_AEl?X;bp zUe?;79UblDy-{u2xy$QXJI8A~FkGkY+~Z}f9h$|_PTpbFrk#7euC*g3^fCbnw`vDm zH33P@+w)DeB&h%%s>aK&vl)ble&qO5u$qudryA$|4*yQ&Ohb_~1(8eqkI5c-$m^Mj zaIjtY^e4Tj%@nkE4ZEc3E*1q1-+PS2jtOl-0Cm=^%GqRjL2W(8Gs~f3x^Z)H#Ukj5 zU|56lhq;(K9HGGy`n!ja>5&E54|@-*DRO-2#Ee65F3p50w<)#>cV! zC#rze?#9d@6>;7QLDFCJ*)S^=ZvVm7+;w~2k#<7DJD$qbQsbPsaI;#{^pXaig1*21k-z_JF!<)*|JdJ~4o*!oYc9+0i8;xb ze&Ut#&gE>?H}bX4N^1SAP|Ll`xA8o0$hlt|<3EVCc1X0sbG+zP8-eqIK&DNN6QRA+ z{eQ875k*!2`4-0wRylm_^REN?mH)>AKqX@t{vWt1n@@kq*I`H|Abny-AlJ2S!m!8GGPI2Fa$f^X`UTU{x~XpM?c{2jXTlGR=ocv0VM4i# zZnaV^bgB)>dL$uP*xj8;R;*woixqS~iAtzD%nT6pq)DP2EzqZ`GM^f4;HJYRb2L`) zsl^hcL~cbhZB#=ZMuiLssgrfZ`Wi{mOq)C%&yYW(9;80J^OnLNi%P!(If*}&YAR%& zPHaO-Y(#-zL=u7|@=9h}NXS|rfsqi|<3D;nFW?R)$hpodO|!?>d&%4$cQl>!_m8TO zMY)~hPsOzjUNX0x9nuy4-XMi=!j!CS^pd%q>yS42dxI1bv_H6z zR&rdpmzu|nm*vPZ7k+D$F)sZMIZWFVm^}$zF@1AO z9PwDff|fL6m8EI}JPK7*Pf#8^iv7$8R1vLbV^crxVVWbLb6~WE5V>Uz)zB3oHC@}7 z!j=d2VWq?YS;<;kNK(79q^hhZ`UqbrbQQnM#(EbuTa)BL%}bI;CbM~;cda1I-0{-x zp{tGgKhUe!73futS|RN+FM+U(%df&m&qW}a1aJfsGF%%dggAaFp;Zibn}$}!Dn_d` zz}@c`J_D01XP!tPn0I8KXjO!2IDW~QW8a$;s6#p2O zovTC2!$Jr3hr~=E4s1{CQzSbFlI-*d1v)^!0u>lhDM}Zoq{&n20K>Z{V$P*hjkww8 zWV4bK?BaG4xZMjINl~j)N>V=Po zZxxw~5`l7hvG=(=y-2mdk9xZWdT~GR9P1?WI$db}1}gEE3O}%|;v*7`$TJoYRrsU% z+IfWxf~9e;O6Z3sZEsID_9kRQ>>1B!o;EIa_Uwa&qwvd`v6k%?T12yF?kkjB;Uz8i zkY?(2mpDnwf_4q9_UeXJYRE`KPS$!k!zwGcjR!IYvOS+dtTxW(m{`E1XL7VrUB1!D zCM074_Q!A#jz)**dwkqzol-0HT zH{D6u?PX;l9EC${5SzNQ-AJSWIi5BM$<7V3toSw`e?qW7c8xileWLGh=(nk;&YEzr zYnBpXO>4Xc90GCGZhYkDVG(&~AVfFdFn}$tx3kmRxmDYtA&U~d+@w)13qpczl?91Q zux1q2;-d~dvIU?>lm%H&2)@gLJF-be5?cW3GbITJ+fkJVy)h$SxVw7t<9eJ!s2G_k zLmBj`sYl#@+4G=re2Yoc?_uAyYwT0rSS|+9IuD;9)}m3?d5xYO&%04m^EMd7@0b`# z=70|sUaSgcu1rFFIwAGsyq0`d$;q&x2BR%ZdX7$=CCymEx4bw`**jH)fMhcSEBz!*AJBU4-3~_}k^CF7WJAEBxen zHUpXY(VJv>nXIyIxlFcGJo7Wjf=N8HMP9ZW^0H>EW%DbR^X))ySzX`JE4-xfW+l5p<{{e|s(N#ENA#g=jCLJa?cir09&fFev#oFCwq>~ItCV+($ci|2Y{baB zhX?*G&zBc)u*!9T)hc6-38%#y;k5b-Y`AW`D7F7yQRo=#%lmfK+*Ku2wUyxQfM6k1 z+IJj(j@eIgR3mJ0177Vgje*ZBuxgqX#8?b(OTvY&_3DwrvPpWBG-)522dAJyU+^*C zP*xe?V$A-7akN;GJMb4^jqsRkl)+hiB{qB>`DKmL#N{hJ*-k&=9&i+K~G1 zB$R_&%8UW+_Up1{tYn0Pf<*RQ8R3W}jc~9hB85^gGk@MlyM|VKLq-@>l1ROnYrUK; zw3XYI^?@*O&D9CH&~~)`ns2hR{=#k_E))N4m(c$?5_(*3B_Z>;no2_IfrKbfya}e- zBGHI*W1R+@+*hJetlCO6XsXRo35tW9gpNcb!Zf0xnSpR!H0 zwE(?!Q?XvMsmcyZ>mIs;2a0}kzk%*D)2ySTKytW3eTJ(5iAdzmRocjWfqe+Z{fmrj=f6gVJ!DuDrXXCUo9??EVx2##)cu<72K&@@G(1Gn>Oag^tVu2a` z4ZcAr3&=sVv?iQ-JTS1i^tOY`wEj4`5mtECz04@k9BXD0z0 znh}Vx+2ab9W?V@l2*;EIWrVO^vbDK2m@%NcWNXvHJSgwt)~0WZ#{+C@b64A4A z?dI@9Uf3iE4XR4H+72&g7-Hr2i>sZ9euD}YM8&%b&|gi^sgMgP?aU3F8I zAF1FiY>@4Qr28GXp$XiITkkhbj6xaKS#1>ZR8%n`x!bY{D~2i7@A4eK+BNpDH)ium z+h8f?l|L;Z)nDKM+tKRJ@?}b_jI0?a)BB0pvE+N@+b_K>B zdPn4Yo@kSZ2co@;LPjT*A4GRfg&$Y+yX?bsXOi#?`aTuUHdOSvgo;vzZj8v?>+RNQ zSu<8Lq@YBc?ZSE|+i8WDG!b1@;CP+YaJx2EdriXywezHVYps`aK^Gf)STxrGrKSZ% zaLQ+q4 zPKpv`;_>wb=&j;0>!srHNHK+=ipQVlEnNX~T}%MJ4j8^NvQGR-w1u@n&Yvg9DN($$ z9XX%b{EHOjmNjD~Lr!e8XHkxXY7o-vCVV}k_Iww@<@CAOn6u|tM87_-U+vCSsyD%6 zfW@N%kA+l4GeP%N-u5js=2Ql&2X-lCE$QbvFKY-c2P9?}CsYnde6N!Qmh+35eU;6u zPOBV)=(O{nPbOD({;*GOsmCo=%J2N<10_2@mMq`-_4YeI)@<4N>1J5ljOAK(etlbp zC>PPof%+f?*od&S@mo+)O=E>R-F8c^cj&n-8FD02Bf%B|r7XQvCHw9b`7;K`CTMbn z!!EdKAO9Wfo0sCI^*uKIH{i;WDv>2Q(=YdJn^joSV;;Z{F5jjzmmfxhv^aDby@vQT z{UARkgm-+7(oZ<^KgiDzuII+*Sp874KY;>!n~ncMf}1DHTnlc>LMDW9Ni$Y3Twnzn zW*})IKuEJLim-DMmJMgZB@H8m)f45nB+{i?dV;98i- zQWFj`6&cD2W)*0MVO-+nGS8Yz=Mz4jZ>V?T__iY28ZT>m^03WtzW0WG%#XUJGQoe_c z+^&mTy*caRkaZE+K5;*uEG^@jukKE$gKzNv?Wes20*V@wZ%4!CBjUeZ_dVappB`07oYVy)UwZn75H;9_)DH=JLxU?=46((@L$iG5&)*f{T?y z#!WbsK$F@C22Dvni93$%P&R$V4b=!ZXxKGC%HM=t(2cE4yq@DC zPS3pvqg!wv5!mn|NeJBoNYbSp*@#p95fs_G^N0z(_poC+)iHjA&R?s zh$3ivX?%#Tal8Lx?N5}o@6xytF%>hx8U@cNbxPJ%Iz!rH#?k~cc-|ZL%te`TUUtDE zq}#@Is6kPO^E=zQyP&!(X+}_=QRJYxjQ zqNSOm8Sj_F6243OvDU#^KNv2O_JfJiV=!N$mZcEa7a(eY2$XSjO-9BIKMat%;n710 ztw=q&8yt|ybQ?5um3Pa~ytgg&TIXe>Oo0V0bE&G|DAD1s@cM?(FbvZ1 z+&4tOF?KlPrNMLP{p8ss9j*>k$)m8$syRHr$kV>l^CT=V&irC=jsHku!#;jG${}l# zH5NH!RG5t~56HfG(_I?D>I{d4;^2g;=ZPxrz}5g*$Kvs3Z0_=YQ7lQqX?mzNG^uAh zyqfTuwkTq%4^0St%bG9Rtx0N~zW<2K{SWO_Zc_hpqsd@{(i+|dZ8%2Q+d?j&-G zL(>?X67sO#ff?GXK^w6!Smp#lHhEz~5OJ#zX&LZt$h!k4mZQbC+;^0H`UiQMakPxq zN4VMBDbS2>GY0deVVu3h&cbRQ906BbDH z25!X9Mv2D-Glor8&kJ>Hy(vpvK?0RM-|_g+Ieq*7l03V&~-Av(u_qgTphlL2*A>gLcl zc|q$viIBg)(%+ZnskqAD=krv2q2oPTo4rzj$gJ-Nk@-!10N`t9Kx~nZ1?A*&S=-fD zydzvca^V#W`G@iFWgEF>Q$mUufzjCO8rH&uU@vLL8b)z6X5$hf(#3XwdLc8h2mNAx zT~6^<7eU!=Hk+3raerNq8;S?2*s~BDL#D^)3v;_rwN~AN6om2%IpO`eM~McFpQsO7 zV5APe=I5Z{C+Hi1#67KwfL?Et!e8m|zoh$HPqHqQ{moW%Lo+|Be&e%C5W6hH7?vC! z?9d3mb?Ye{3Ox*0p;3TpPA;h!;9|I!U<~{_4}TyyjD-YLpY`i7$v+AMieX zT>E4+ni&o-P(-K4_Iy!JLW^?w4i{onf}a+u%*rG6)Jho-r8ov8?(^P6$&bDHd^EIC z@=EE{jovkryeI`0B(J$>QOs2`Q&@|Ixn7Uz7%*AdrG;`6dVZ5^^Hyxr&V=Jb(#Zh( zjsWn!{>E$Zhw&IhC)pi_L&;{j1j%Wv00*Q;33g$Rn- zTN0`&+M;R_BGuDrlJs?1GggY)qAYSkfLC}qTT9g&#^4s+D%bFlx)`#I$pUQ+8@o|y z48PDXvka@JKo=C2uEQ6sqz^anS0vlXPkNF>&}uq z{pX%{{sk9|HTcQ0H^}FWZ+z36-!gCBTYnc*sS*T))k1!V>k@Q-J12gpUxBr&cm-Ch zVo1y?yuld>QTb)6DmVU^q_99A880QJ*ix;B9QC~CiY_t+WWS9|P69Rwgq&O1Q$-RK zyrKs6yShzw@sh3iypo6xdRU8j*Ek-{Lkbt%_;^;=R^g+&s)N0apVO5%PdX-LiiCAt zGabiUy*NM`k$n^T@FNAr{-Kra){1n-MmfelDR)b@(UsoJCv?lbMVi4Zka>wn@B_ks zvkp?Bx?i93sC`k8W=Mp z+X@p0Zmh#~bu@PH+l*|A-;kaT2+O&`$&Y&9#NbR|7yitu_fbXNfycAZSl_n8@u*h{ z_F^_+&YF)lS6=W5Nc{5RNCIoBX*{sHS=-FwV#-ATJr*0t$h7k#p541`l zA3%kV!Bm9~;XCH7zus5>zqxx8Fu9KEUc8rCCEFS{XNV2%8Oint42**e0*pO(g5NkvXL~KDJ zEPBC#_xqi5s?P1Yw|hpi`2O$vw?AvT@2&OJsk7IqK}mi)t;QrFVFKf-4di)k@$Z7OE6-`LPa@#)jT3MkEt;*b!(Mm-e~}X6vMX-U z69E4FeV8#h0OZ&xo-xcR&47EiBkuc^K0V8J9f1Oo0vRoMDoBuNwIQhlQJ=w~2XU9g zgac)z)kFo1*dD!x=;g6qIvk*5t;ys2OVJ3fQ@3AZ_$5sUjmWDkE>C{UM{N21^@zv` zxjL!eVXxP@S}h`{3E*=QXd}Hl?c-kOO0Ba*>R^U#cYdqz>*IUK>zTZ(S2lJPl0Q|b zB;inT=}0?MeeE-aI=rp{!!rt)8f+i&@c`fD3gxS zSfb<1L9cg})?>hsfTa!BO2G1MuWDdXM{ZYi`(B}vxN4W02(?xqkg(;S_(%*Xqkc=e(W;_0Pj(3G*W%AW zDgXUXZ^m$v`YMLZf0i?RL+*LfL==49j%%rp`{&+VUT4j(e-Y27E{GDPRq}|8%}<2J z(tFG`7U&p%P-*{A-G#y{AI-eqb~l(_n=6T+%+|=nmrvp6MEOVnF(QW%^IX(kw~BD*dg z>Ngnfpw0F&1+OUyG+^Qvd669Rq$x_MIBB@xV=5+I)=CGrB-mSsk3t|93qFDz)5Zs> zYyx(xMsLg~Cz=TaaT-!BJrvlw$&K7UL?iP1db=g8jc2RT&MCxoKCU~JPmcm<(ax6> zPyxx+?btnOKPd}vJIGIO`g(8rZfzPOkI)|GlmbgPg92ov?hU=&8~U6YToK}n4p)+H zhzJaGARlalP|CmKIB>#T3C z6D)yBJi;Qt@_j^$u+xWPi@>wp9Ts6tJM89Igj>96TLc>C38W)jg!gzuwg}3d#fK~C z+R%1W#Ao9xx?kAL2;OJ_G7#joZ=a`79Xs_Png!j&laJB z#}P6L7;zI6r+1%sZKxd+!KwZMIAb1Yoir9dR#6#&;{PQINk}H7GfHL72fbOF(W3n3 z{hU??oFMNJkVY?;6Jq(fk@L&!%I8y%jX&%C+H^EX4Y+L6A!ryshn{o7K;9d{S1GN0 z*xR*jO8YQNrrUIdBU4#Jk9b3dPGl;CG5#3`m_;_G-?jVp*zfJw_Rw>&CfvS_qv#RH zVu`W=inVebB#y$4W8nlv^GH%K-+#5xftH{j91 z8+vmhhDZcZ!+ia4TqSbnR4Z06#5^8|N!U}~5N0(7v-~^6EYIsMARzmt0Kv+|7d)^W zx9B1~paCDcugK6qHZzE^D3=E8V!86+alw#gY1%Q4WGqW8`WT#6iL~t^pT(DybyMsW zhID475)*ic*lYa;H({5~rDQH}0~DmgD7#|LtPidr5AQk)^6;W#E)Ulx{{Q$Nr2OxQ zCqXuXq>N)coO~7_bU=c$naV>xnje}01WZ)Z?n4+GTe=i}gfno>@3Wsn4+1~Smcfs3 z*7N8|;FZ5GdePZuzxc)H@N+Ic6Y^=AQ{h+PRe0&k@Oe313%~a3zwwG!zUnt8U;Ucj zdhKuj&g)kG?(5(1#@~C>@2`6EAN=8e`J+GnlhuFvXMg?|fB9ek8$WCQ`~Uc#|Ld>* z`hTzeo4366ymjZltyRtccR}@n>J zAx#?j zY45C2ZfM;qBjDTJcwkjzw=J#jLx>Z&rf|;eZLrG1?Ahdj2ALL3B_!1%BeN)}z+M>J zRlVL;gTWSTu}4gl3_Q5FN>T$t1ADAkX8X?@9S{aLh%lkSjj(L?@DKihWB?=Vpcr8X z#Ry9iKffWc0c{MQf8OXIst!T+?`bSJZ{#?&@b;evdneB3iOKR?)W$Djr#+41>h*wX@-uUTYalgWu@uvnE5JQhYtTT=t()IF4maGT>n z{)VQukAGoA-p=PRI^WK}u(R&wbBJiPUC}lQJN)r7k>l_imrX*6SU7S#IyeFUFKWuA zs2hP&oYE=;leXu7y`q3ho2uX{Jwbqbh~f^abFg7h&`hI^Eh<|317W2onhLbncrPDO zqQ8Mi9@LOg_-*KE7(rj_rLVk^7P2_-3fI)o|ARV2S}vUEV|sCf*vs+tL>T;m8?f;c zSQyb^fLMR_;$@=-do*RiypWmS3`;Oc?7hgWZnSY{Lo+)@D$Pox0tUahf@As9I(}}g zAe{m8_XQx(_^IE$vF#3oT?&LLZ3GarHn2Tq11`nDW&iEU4)TFDwYOI8K-tH&oz%?- zw9zmh$wJZ+XmVgE0o@E~_Ja=$dq5{sshzZYQR0~8nnMC!8V^ww$d z0lW>81ztsU0rmr8#{{Yg2N&D1?0Vj zm6V!!+kfxHEFAA|SnRX+4;f6cI$63pw|OONJ489{)1~nCKj1~J{r}DOH+H>M_Jdx@ z+W%`*;)>BLK6;`(>J=62k8B!-xJsf^e19<4y4vsmC=huF&r+voFaD%gGWqxq zQ3={vx|QRMn|@_rGa? z;1KdK=5M03tj0-Ri%%Z!2n7&mXBNPa?tud*5C{H|8}U^@0*ZmnJNWCB_|?~r`+#bn zl9=Nl2rR@_5N=PI8o0rK=~vjy+OIG)IH7qFeCLwtyHSxf&Frw71nu z8()73yXY=AZ1YOi#jjcyrd0X1zs8GN`x)E+-UE5L1Y#8EuUER(D_Q$ZYky5r@;WbR zOlpG7cb6Nk_e$3Mxz@aTWPBiR_mb8;gPrDR{symP&A-^1UzLphMlWg2GaSjg-|p{? z#lEQR{X6`3y?>{_H~e`4-e;F=$%_bS5XMbj$%fBBCdHp*{5N}1TioZf{p-43 zhx{(DWbGr?N!l-nAn*2~2A{Lo{yp)i9Yu)rsND{)WbH4r_IIa3?M^Rh<9{xSI{a_( z_XdB7X^NZYJ^tR{eYxc=0y$nPG|ccxhcPQ zo|0^c4|pYO|1?zMR9b2KAM~Qu{;4SHaQp{vwyXRNi%lC{zstvL)&NMd z7+je#Ao@Ay9IS|-(DNO3cY8mE8+2XI!8h;mO15_N8guQ;#p>qTu3&_)=^d=~e6Ny9+Kc+J7w_If32o=0oh z{A9A&4|qvyo(VzbX#V3~$(j#dV0F~_=pXcw);t}(bLiX;c_nL}CuhCUPxyP=RE#HM zs1(&b7+A$(gj zE4^5BKU?DkUbHdwHNV84aE{fZXekmRsL1VrHYLSL{J{oWi6%wFJir=sf3bmja}R$m zU;{xtv1fEv&Y^{W-N9g5xVXfqp<+Ml-iFn-ZEt@wS4a7d9%NV9PU}D-ZmV<9>sY*} zIxV%F*3mwFiN5W1EZ)<7mjB-WIF5kAeRE2s(sm9hJ#S6~?%>x{cLFjjJt7y`9M7%P z920lO;;IJc%D?a`fL;-&#>Fx}fK`&@YT$kYYTlK=q;ZL@BEkSoVo8aJl<1&wf)Z!R zfdK2c>3Ji+MP|)&f~gv9 zE%62jPr~HyulM%`K?X1Q z`?vdhgCHV#tJ%~YdATZ`(+ys!aLn+hCp?Z#Uz?cUe;^Jo1989yQV#sPdO(b)6y+m% zPw3-C+$L}S4fl^oV%Mi5IumJJPd)9l)8W{qwA+D(>=y0Wv$Tm|Z8wH-DJBy?)>JFj zFqbH6pd64w^CjpF0@#+YO$j;@|ewXk3RPUg8JZx(L z1gGXbd3!iQJr6)vO#_rqZ-?N~sSq-+e1=n&oh0I@iLs8hH+VdfN_UpYq5 z*_X!%D!A-=s*ojM#D$?!Y`Kz%i_)+xpbdm3)i^F6%S}F(zf-4LUW`WGBQ6fJrtwk; z*3YWqnmrAVECzED2_8M;hs=ccV7Z3iKT2=J@~Mw-#Rx8gE<9f86jb$5xRy-k7N5?o zIvq^_5Yae5nVd@muyH}ZGcX;wl7eW?KEV@L$EomvdYRx)WNsVtn3dh{#n~L;^nEqn z>%%v4PLVbH=}+_Y7PkC0j8NDU{=9tHllJE19#<3`}&S7JDzgM#6DaW#T#c?0~ z-+M`Gp6uM;-{$X)oRf3=`w#egBj@DTIU1y>VX@yDRR*c;E|+ZX95eJmeXVUQmey}jI~fk=Y1jryq-}ii_y9Kaepd@W^uKF;@9;3;?Lj)2ODUa$ddN$MPX%DCE^_T@CQ1 z3?FYNjqUOPCVr-r_?_PD=k?qK&vpoVwY6BIPDC8tZpz6zvSnT3RmjHI9)$ERZ_N;5 zBo8og3-fScaySC)6)g&o`Y>brjc)@e1$?Jj1=&xzii7w{4h~xe>;gq9RRRlnE#(2QLyZ ze9T8~V31RmvUs`X2oU=T8z|q#LlV-eX(6JtPgri#uFs* zk%_=E?;<1lWT6rb3~lIFtn}$ZB|Ucus4j<{!;VQ{frUH-pu^0ZjCjAdV`oKzIU(8L zDhCLah@ve4+e$r-U-TAjy;O`@E_Odzwz#*sCpE>v*Qs7GgAp;OsGJ<|Mh$%#ye?P^ zlKL4|K5k+2NBkSxNW)&gS!m<9yn^!stt?whPG(>?kxn)^Mj;9kqY==S{xSuoQqGjs zf8TpEqCi20(@y}a*4P4IS+bEV*1vh12HHWR2x4N$NghRn`JvY})Qs6NBX$&yLj0sq zNo5?JYzKV)k3uCEaz5XCgi-JiTShBtDS)X!?kDBN;gnE#Z8+~KrJ(?z?I2y;o=6vz z-kX{WS3qos6&k=C%gi`T+Et8h1Tu&=NHZf$)uMGX1QHfv`L{=IB!#Ta2pX{yERh^) zYOiJlsu-@Jqv{vhYIvoK1fPzB)N;WQ)?6JKXfpB_V)X#LLkO6tH3k`zjF@IbEJMky zHwIsO622`!eDet)vM97jT}Zn|h7iG2X$WMd&c1l|O@#2}_^AF<6ZK>V>l zh?WQ}jX;HkhDH|1zY8U|4O$%}gwQSQ=?E4XRCq8_TOhOmQC{*z%Ol}0V24&j@n-%n zATEA~u19LkQ}7U`F@zB!`@k?Fw1 z|Mg}az`hR8>!F4f5q9)-EM3EMkKr9*5{h!|oT0GfC>c80Bij(<*X7!~48f-r?0re;bLkeGI z(`&e8X4Avgmv~FYDyX2cAoevvno=sxcd2}Oxwr8R6?-jd{_UT$Z2eL2O{-q*RUfQK ztT*YtbT2){p={%A35-tEgu${rJDQEh7F2{D+qp(o#G0UiHSl%uzDDLC!XE11!H{V# z=m11!N?KU8-bNp@IrQ3zi4hbfm9LqcZL=*`bh`)bCSR+9 zE&S0wZ0Lb`Z|K@Y_zzqA>9V!MuBKug(x2&#+8A&LZnY=b(R7pLxfSRd^i8>A1Y7ed zn7w679t&?6naAfMLjtoEkhn=Vt3#LK$s2IM9_B;h{hy5<$%Vum-sFDi@s3TcI3U|g zATi`%M3!**w5ZAbc!*OuNPR>qgT2r79&GeC26@s&4&$5@&g|G*@R-H`(NOXworJph zx{fU8Jm4}$I6cx&6{XL35F=3OBWAzw>!NMFRf*Se!`qAJ#JmBCR25fLS>|`a&LHrZ zKH?PqN}sQJM1|ORfvdg1{2fkPy^>kKg2O2l@V0r$yu;~|t`4VbyplB^98M{1y4FjU zI-IWa_oWV}>-~M+;q<_L`AzohL}-1xS1N3>+quc+l_LLSY$qJ>4zr*DF$}j zQ1>MpN)RJn%7U!cAdT2D{lFnvY8-P(tP9hv*hU*aSpnS##7yXwea{n2A(1pc@w6<6 z)(Y7XplT$OV?#d@-!?kuJFb%z%CNr$qSFI%R!MXs|_fUHVG_oS^eKKxv| z{Ngk>dpVmXd(JW7cALwErNueTxuHTIdQ?8d&91;Pg)2$*E{bP_lYo1noJ=f;E))dQz`d)zIlE_1g?UZ`j%rp% z<7&^*CDYcNj$B)4fxaJgodk>kWaZ(H{picXcGWIb9 zVKi#fwyE%odqax%;^9#EiNz+YM3#pPi{v@B8z3`5D#8OLL7mT;TX~A8aiM&1HnrkB z|3RfcF0X7hay983GAzFXV{9P#A*gy>eu7+&ng=17BQ~9*thlcAhq|qG5IbrUSoJ4! z)$vh6$;7{Qi3k=b*%BAD9tx{(i)rZq2DqBKDTXK}K-lLxLGt9{Vj&?c;v6Ie&W$|5 zhm(Fn>pT%aFa6?FVHxU#Xf6~zcY0>pys0F$$ZrMF6BLdvY#=BL)uoU`hP?&<;=N`2 zB!BNA5f$fU)X*9ZIlr?9_=E)=qEx}Zs@CA}Y;B{a2<7C4rr!#5s}t+6e3&fEm5rW& zb@(OE1W5zdv6?M579Pdn<&Rj0fnbIK>3l4@c(V(zQ3sDgjtmQnWwm$-Sy^yFV}#Te zL)1jPI9D}C@Eo}|7Z>Jg423#tI#Ysu0T=96JGzbA?k-EPXSx+@81|T>IVrcXL%9`- zWFWJo8pHx~Kl25RFX~sRL;RC?3*(#1x!q}8Q98|)f`>rVB4UYLO;ScPiLB6$s2SnN zHGTTb#3-V(rmJBtmjO|XdU3RzA}0@Vu^^MVnJi5&deL38wJ=3o-ic9L3Y&XrR%BEd zP!1*)yntPO5HfEcOdu3)VcY40=NqN~0AHLZXX+?nFS4qIQ?h!zl50T-Af5w>Yjvzw@ z&;Tc@5R}3>;8Hlf*E=$lVPc#JC#E@N9zOvS7Z@k8X?4Yd1@caEt)x{2pL8l8@E$C6 zKBc|RQ<1BS&?RRgWIg!WB{)I@b6$jDnFNQ(2mp0;uDnb($4hcB$FOri*JShM-iJGV z)aHGlb|8|JHW9uCNfS@O3QJ`JfGv!Ha!bLUdzbgsW(3w4Hnry}vN$)qr%*?2z+F4~ zXrYpu$~G-JO3k`9(dj?X$Um#dC#neI&Q=m>k!7HfR2Rf>ocC?>dU5%L+~kYw1Jd~< zgrD(>@nK#q9uov&eL6@~4<~e#-qP;A>{!D#1#76IbG7b3`twTS&g3p(36Rp#`Dn6# zArTqT&B*F2!2Du7nOq45!nOouH03J$b1W`MyPI2aj20tB_ht}>RPI}h#uyJJ#9Fv2 z`z^X^FZQ-b>(rh*3$X~P``C5C%)A| z3bP{^B#k&wB01p+g~zxd0a<1*(`6FDg^6M)WQGWacxy05u0T(%J*UVp`EC+2g6Jdt zoI*dA0HekB!5?s5#Tj^AV2dO5~F zzWqXBM?@5&F;)TJeHNehSs2$6L8A@z(>h-))RF6P<~XhK6|ZHsD&hUMw8|d~O!a_Q zvf=3wk6f@rVM>n{>Zm~^h&QF&`z9k}8Cgd0k{qx)Wm6J=ql6)PBXUkd;B8R6q{aUgD#MYw=Q2$pDQfQrvt~ zs02>IkSi*#Tz;ej6ycxxhFSZDvHdAjD@Opm*pa*EmCqZ}ihUE065Dl2~%MOR2Z5_!7dQ0mu00$N@MUK+???_KWeXd9v^F{X8{ zEYxv4{bC>RwC{*iXkhDb1s}y$dSCdlLj|1?_R9&v%8|Bi2C-Pd5SA5a`pO~fi9j|{ z=s-{vVQCr(w?Inq0>bhR7`i$F!qTH|$`$S-D@EAxpb+*=2NW0$=bfmV(Sg>KPVntdK}B4-W({l3@IVnTUrq| z7FeWiScFS(&cpOmau0XINk)+6uyS3aN9G0_W%(8gun8M-xoybh5vgTyOmmiPFs}x~ zo{TWos_omdbWCkf0^r*C+7%8W%bl-GK+BbDV^?{ddGD>Qg*v{sZsgvYFAu0q@IUOW z6S1?ZffM9>o1J&ofwGo+dK@OFkh?T6W{wJMhB5pbpb5@4oK7%*@y%_Cup_4 z_4TkFZ7(74i%UZhg6OZ5pO$)_d!o@4>)Wj2HxBamzlBOT;z6J?GQlR|K@fJ7oFR1|waaE($C6#7{)<~cv z^|aRd)}C-lX6`*~3XqoIu7J@&;7h9qO}lBN>DvqNgu*tQTIOxl*fdQ9 zi2Wl7M$rP&bn`SC9ZQG?LB9j^GojPqXX3#?x`Xg0oWI0wl`+vMKC?a#)CLOI7B-pq zySh*vGE=?ac=dTnlabSr*=b5{5hWok!`3oa3ZtLx_&SL(WkC8BsFRr1GG5r8 zu?^dvClEKGpwnp}iU`c|!iQ9*qI@GKOu6Ajv0>?88vsd{j)nZIafodt!pMcK*y&v% z@~y!P=MQ&?S*wLa*cib0r8OHP5IgPBOcGiKAt@~9-762z3Op}CvqxN2uV%o zqlP9F_9*aH4w}e`f3lET*0-_I^A>1=5?@tc2nx*Hq-CHm(ozBn#lib~fP+U9Tvns> zHCi#|Az?7WImFv1k2{Z=)O>A`7*4_g9EO+x$@fwN_ zlnlC_L2p3_c~|D~;xF!NQu~*{XfPIT_Gt-Hev1-iXx(UnTb|L!WH?|)eYoqDN)5Oq zhr$pCL1Z04-#XhBV?bclXz~PKi>gwM@8yNy!lPC-NIC@^?K8(AjSR#ayy48q&PcWf z@ZX>eU2cXFKY4v&lN?U5iSA@dR(;XIT-vQ7((WTiBp}e!+7O86{Qxk2^w520+=0y; z_|u2~`$gu!!j|C=1?(dJ97^y9%q@>U1BM|)9-sh_M}-BDT67qZhpMO|4>^mlV?7N| zu^dy7ml!4%eE`c3l^4;7_ytU3kn99+a^$-pi(thD-U0>$i3MU!z(HE@BxsSOnnDU9 z7PMtPwU%Mu)|LmWC|qb6fOVe{sja)vadAZQL+ppcl zV5x8+2RRKzG|a03;6J+kio2i5<8FN-U@!k35%eD` zgZ}WJQxC9F_DtmGINgdhQs_5S=!xLihvI{F@7*tjvaR5Rc zs6*>AMr3%>6*;-@)M1=vN0DA>?IB^U12H56q~*$p7~+>i&z zlM{f;U@*~*ON1E$lc~ui$UJT$ zvANJc%k&Uu29gKv39_Df#ZZUfLN$W)lo~IZ2A;=>Udjhko+ol=`l3#Y*?9 zaPTrzLZ~I3PPF(?w|l9btvhs&ovm}>VvEuA-_5?O~@01w7&Ibal7nwxgk`?50?OsXC1BhnYy+jJGZO|Umo!c}bp zmtF&bjMBrE-ta#wyqHcKQ6KSm!^)~OQv}tuUUh?lim9>@kt0>*NFD4pOd`+Ql|(hC zru;%Gs1nA4(|@?;eF6N#{M$E!Kq&}>I9!O}7b@d=T#P3|dEE8|wrq&R;j$!@r^jT|g)<7bwEQ1Q#EMgNl?S z2){|dqX5SpJ`zI)X44MHph5^^>M*!5jX7EaZSxuE=q$2(APk{KoZ&h?56_ozzNBr9 zUJ+fE;@NZU*|6Q$#Am-^&l*Vf!n%BRrVJiqwJ@bNDek>K)Q_s2Yg~p3c}9kT$?38Q zL0yLCp2Oy1RBLe>?DAQ;>5kTQrY+o)AX@cf6_hvwCC;pDV?s@i^KN~{U_5NEB6{8F z!?d0F%%FfEjHqo!cX?3*{xfo;=>+_HIe;-KxP7khy21)cikH(2^kIqaVT-5Q!>~s3 zaEUz(izE*h6RgA}JIdNNr@cNWTcuGMYWXUCf<2G0J!o>BCM=z5Bqiin(x`Nu-8o@LDwRX=n2QAf!-lVKOmOC5AI8)|QCcmx%tS(CKIa9E#%TEFgcuEA zLlE&xf31~#tBn0qbwjQJrPF9XIMqn4`9&_%FD=Xt;%9aM|8Qb!vihr$6~X4Pg46|1 zQyl+_55sVrCv{;}$1no$Fh#4qBAM;i3boZ<+g^L1t?vlRiKMY_cw@#hc>X{}t^Iba zd9YCPNgen9cfG8!7rNhfW!$SWaUE4@Y@l(Gcm|_U6YrT^48y1v1oe`la}Ovh5@eF= z>w|}+>n1`P7fiQ|Y8@_&nhp~mwb@RNWYjIPBPy-sqy7)#6pe*I20KDgPNAug`9RFP zRXPxfxB+g;I+86W2rzX)6tXNWg~-_1$G(-|lEkP?Xm>CcT$xCd3?qzgvh2Hi3bNo-D^|HjX&jw!XI75e0ro|| zfjGX-szJ7F)Ph}QWG1VhZ}-%nQ+qOAv|G4_1#?=s`Z58}ChyJoov!I{rsqQFCZU&M z`^Wx6$OfLfOwwSh1)=2PLX-4p(FXS9#Ikd#m;AU+bwE&@NYzLNdWDy@jfsRQXf-RD z)Yd{-F$sd8PivWuzG*VqRdS$R~x;!*J3o}Syx}g=DHR{e0$c%-ZiZh4$ zF4veLargr)aDF`F4SY-&kflQd1*_9$FYd~84JVSh;KNxj#blw5BKSxiHrS*jOpIZn zcm?YW|Airj-%L{Fiy=G`vlZVDOW9#O;x{#&>0g8#$Zs6XmA}G8huCBggt5t@k)zz& zWl$(bjLUtB1;n^>a8ASs2$KH`;&WOBAJ}^EA-2Fg84p6LTU3)sGb*zK8M;2fA2MRx znI^ViLSODW%P;LzD^{_!Qr_KSdYM*lRQ{+W*||Y^HQPH<&u)GQIdqo63XkAhF>dk@ z4kJjaSz9=z?Jx>UAsA53ohE3u(Z{k!X}B_F_>1ylpOAwRin_(Co2^=p{)O>Ew3Eez z+kl2^YHG;)qXaY|up$#q*n!osk^k{xy2ua|jo!vPjQt9G^l z2T?IfZ5n`tIxMl5>)gl`WVlf#m2*%Oj?YB5FVK>$-kEVCa#bEx)PFHGI1L11;o&Uk znx18p?JwL24^}4VbG^50tb>?n`I}pr^Sns%yIBBKowj0U@Hf5`Xmfoo-&rZvZ z2#EXg4zl1d)(*~|r&jnO3&tla(F0D;f16lZE`ITZGb@ zps~s5QN-Aks~3bLA}4K%?QXjnFKOG9&MSypftnTEa4IgkdoFHdMi#0QD&5G#B^$Y1 z{+spT*hZ%G1+FX`nTGQL*~r*o;UNr0{EGj{v%@}4MZl}PVcW;_adi;jy6vcK-cW%_ zf1XUbQ^JuvTQ2{OEiuL|;UD-DDcZ@o3|hC1RU=aYkMVcdH#-wN49EIp76MeE-AKIk@Vv=EAec`;qO(hl!@`m*aOHeW(aykONK)#g8 z=LMUTMqloImkKr*2o_K0O%s#~Q{=XkJM0}m!E1c+E6)z_GnhqE@hU)u&MzuVvEbCCVK>s{SDyi&m}_!#4X=QehLfcz_=ndvLHY{l>>)ydeR@`wD|196}%z9<}3#fO;_xjcJ;HC!k@)>Qq z?3tvK?r7FXdcL&KvodGxSvq62$vaBATycJ}V-0jmd%=}l0UK<7MD8$t>E$IA`5Zd8 zy(59&a!@?c@zugpvLd+KDs*6?fJl~mN~CKI|JhgTi2cBL4GM&U-7S`Fcj(cA0!a?c zlBeviz+`dTQmA8KKpnD=ZB<5xfyav9jrImvE`mt0RyBd#CW-Ms^wWmt*dE#5%}+}3 ze53dJX~px-Vp4X=o%x)GXCzI{cvA&>vTa}v8M`PT0n#tfWyimeyeV}{1b}4lvQ&o* z)73a#yNg5O0T2xUaCaa*w*@HM%E)onabxhsJuuyh6>M4bIP3Ckmf=|?x7EsLLo+)@5a8CRJfTt%kqAlWIl~2= z#K~(5J#mEd5+`pcsmg`MRtVr~V7MIjnDGGsB&%3FB_am1YGPNu*_*V8LDFjx$3m>; zvoITB_(GPvUH+V~pOl;MGl)@UrAZn24)5$UK~D=BOn$&=SmWP%z0WF;MXhJ-Xgh0t zuNSmcRFd83CWAFn8H~#Z13*CryRFcAFBdt=V62DmY&=pKOz=RI?-E2;TD#-u?3_+7 zKqr=fKq!4s5ENZk)(=t6NW@;XLw=z0~#KtrX_0t(2`k+3N?Q4o{PhOZEKppI}VeYfw{x*reQGXo-33`9TY)d@>wsKA3-K;dn zA6p2@VHv$!tvdzUd?3fAa?s74nDVTj=GV7d)=)ZHMfX>9&zT?Hx{#If)w$B=Vivb2 z;_m7VGM5UNutu}cRR)S2CW(_|gg6`m5^ckCD5gWvr3IVyzK_CY4aoAcU8-6_tg%D@ z(Eb`K_Xw{hwWTk&N{GO0K_U)ymy}erFlc*o=XJGMiRF_2M|H5y*aWOCLo%6+qj15L zcfAA2Y#iba(g|&=M$!r_jylH;UdL1(8j`Y2U&=dJpO&n~jb159%iKsxZugRQr5XvD zcaM7q!mce%%luA%pI3=CZOe-=rzM@<Lw8?+PigABto^) zxOFoiATmK9q(slWkb+3OsO&y9Z7}B`@n{V3X#5McBs-)Vw8Fd<@nj6SpQJz0JsY)L z@~8erojJ=5FQ`5R^8<9J7+y1u@8N7sFoR6nCdO% zeRRe(EXGM(41C0zCX67Q;zE=tut+6CglQIUkJuBC%20y*D}Jt>#(I2C%#+#5-LpsO~kGhd&T@Pw?-ZF z?GcJ3DNDGnyTMr4$4>smnjgSlISl{~aG)YAKpz;s5gh=sL&|*A{Dt3#!|z0QVcAwN zMgc!FI~Nn_(Iq~G$NEhU#Ykif-epvWOkO*X>yBOQ48P5quv>pSq%QStrj*;0z`F%d zfv^o79|8Dhy-@?d+6-n=bLwSY&}0J@R>L}R3NtXq;?FjWT&(7~-}zkZim6;Jmi;Yd zWcYrd`kGy!F8CJSA-@~b7U)esG$5!fjK$cG+Kt|`E6>LtLjmcZI3qsJ=hwGa+b_1* zF96jcZVyAm<@BjFYk+tT}P4kAe7ZA87=MBa}Ciqu;HMe26?;=a(R z(H&uSxswKj#_-Br{L_$sR_@~A0n#Ax)af}B7BXBX*=AvdMEPlxA3U08hG!>0Ti=R< zDlo$@ceaq!CM0BK2s7qK++`Al5D9O=8n`!^JbhjkuOetLmPp9ctysf$0YZU*f|#!= zQNCPATOJz!r;1Po@?9Z_K+>#2=Lb(A10S+&hO_ygtWbhSgzOQ+_MtF+L#(-B8*9uB+gP*&wp@+z9C%A$$`T3E zUDS$g9&@mMznU{bMPLq82a9hXH{O?7ae_3@R!y9$5vKN>S6;p$F!4zt{C_Xvyvt&-TGiyA%|upR?{xlO7Hu z%hRN>XempN<4(0=1)H^+9>&E6DXa)zha@^8i>#b9cED(s@#N(RPOSHabH^2dJD_kO z_XVotlroXecq&h}A4`G~lEsj;H`*DJ^rrj>#F9FUwhSwrg-YuLpwX6jk9EghNPo$Z z=dQpyJT0t)UU(J^7n*b+C#@E6a(}WqBB|y$Mgb>d1zQ~r(V`<=oEku5A%3FyHo%8# zb|Qx7)gU$ZBj^pu@{qA-op>ymb%HW16cC(BMb;iQmm2-4G3wu7*8 zA)kQ6ck!wds?&TkFfstq0m+h3lb#5u%ltja-&A~PyzEB=0QDT?SKuR!R)z>DFBDfw zb^sD2SYjdzt)`qzwU#NBI8f^Rlw^<*mjji_BTo|&Z^&yVK@*RRZZ%VZ$~poPax}&v zN=ujqrGj|sRKB(qm&TMJ4ZaB}5wJxHj_B(Pbv*dyyF|wMr>_GNBD{qP6XOLfMR+uy zbtZ~mP7shb_of~g$40|0QrSc2jGrlMo@&JwzNktheYSE^GI~11dV-b`WM1!84VkH~ zpd2yEOga=6B~o5u-NIX8@J4QygY;OqT**mrsgd+MQ|MQ1*;c6I*#7S)9Tn+S z{{R2pzu1jy$r7+5DLu=U45tT}5Dz%gZq`N){*&V=*V9fPTlx$faK-Ufo@~Xz*5@ue zi-%fY_@c94e2$%Fec8)b{MxVo#w%X=s^6S^^=p3XwZHv4uUq-MuYbcEfA3Ad-+8ki zNH+VMx!L!siJT4$_=)(>s@K9gBD&fFpxi34Hsh(hN8U0qO}uGg2JH}Z7n`g3eI5<@ zJ>Y$ni7rmZAGD%glSnvLDvght{-v!r8Y3KUMEzish9wNLlAt|Fz#G^$noM@`W!{ES zkT+;K;YrC({vHSUdTWS$LN~G&g|S1XhqQln$%?bm=2z0|HHBVR=6aReL?+ojt$U3g znFHf@UWcxkwwPS&I~>dJ;6ZK^BcGF!l2sT)UvmT{Udus1{_2y(I0H|93w7%9>pA%K znp~6LVw11tgAk$96K@HCjnF#&7nYioj_X1_d z&JL0H$TNgR>RpHYSm$nP^i7kylUuVlyu@5_Iu;M{TZrSMZ0%KOjUq*$v;A1*U6OJU zO=09r(Tl8mjIPEjNEf`v7sqww;1rLszLLXffu?KI<*A(@PYu`-0VM+K^SqmTO83(x?Me*;u90lDs=i3c(}!V6L# zYG8(Xx1<~ylq1|>ZN*%~WtO$Ys_8Nz`x$a#VxA(0|`%j-KS zd;CWqmMJ?NM^JM@t0rtJ{3R+Ha)hm)95{WUuAeOXa#_~T5=uOwjzLc}G!@0Uc%-Mu zRd|ggcS3*_jk04!@O{L`X?x@O+O|>xnf;hzjqZz2v;VWajJUwU1b_^RGJ;8CpbtO{ z40MdixP_w24p+M*R)TMUBqRX+KoR`LD)AwcoAC=0SDxT+kYes;oEYt2t`;AfEJhaN+}$hXWWX<^o-p27UWr?|M!XJ(?> zGYY^lttT?)&v>1y)jm2VbqEhbDoTa;3H2H)=R)4YUekgsPb;gL4)Sw_YD=VAeqx|u zZC&m6IyOkTG^mYyq;IkOjdRzhumW@GVB`IIqT$fY6c5dU zcqIzNR4Z061wv1trB+d-6%P%!l^YX*S(w~71t-dnBJdA@l+zFZ3YoKQ+RBQ zU)uuXrzB`uGkSy#Gm1=4t>tNWo(of0NU-HXpHZ8OuTjeNx)H`pyd@)yZfv;yIN)9P zh9}M_tW_{*1X|_DXVWwI@^;pGFm{qu(GgX|&P8MQ)E0%s#&3edekFr#f z;?WPQJY+{=PMQQ>~YT2LiGk+q{e48 z8D%oWOTDTEgfn6f5{ZdVh|!|``F=`OI2F~govXc_X-zM6V({~`TlQ%Nu$c;koEV zc`LTWBo?8%kwI}I^=$V?f2iKjo~(uB5%fHTAxv;tf|otdjYUSzT0bvjoZR8VGkT+^ zs&#nUV@}I4G+1RZ2Q*(OGY>?-M95$$QvJQ)_P@n@HJYGi;#CM*35&W$7AijpXUe<1 zzGab7b1z0sbb*ot!5UgRtyzMgE5RwZ7xQL(z}xwnZV9FDNP8cbRWvo!2e|}f<#EIg z>W^5S)ua{#eS%vb_U3Jv3)<08XNRU$0{02-@tSsL`(Ol2A)nHHUf6bxI?Gm%)SI8< zRxx)Uh93~6!TA{WmJa zD(xZZ)2&#?fUXQ-8<|JIl$mnW-t2WBs6-+k@MAO_YNZ`1Yv5|Tz+if@h!8B8xt#t; z)rPQdu*=9_R^bn9IV(|X=}Z{HB+(6n0#lMq!|68L>SHkyPOcHg!pf8Ek73ZFNs%z9 z&@);`IN+&xu0h%PRBp2+2*XC_DkDfLn=2s(+kKPUUn$T`FM2W1Sw0%b283beVm`sl_f`L zi=Sb#cOm;YRzcwaz&xwAL<9q_cT8FoGIaA`I<3P(EMelx5h5`eVQtAqbNk!(^KCvH zBSabisbJ&G#v`tR1DCe(p+Xz^gc%$@N%!i)dFKy%J=-9tR|`}LDfF%8+R|R{@!B?W zGO2);5QaWZ+U!zHDw*sp)F*TD`WT9NRK+S9WB)`}SuMLoC)QG^094wAG*NKn?ep%8 zaK_jzi{saN=`o$pdcBV;zGxs9aEm7#T0MfgVhu+ump}?5$#M6>NWS1L+DOPgoPWzW zxbmwL)csPfqOx-dGbto4E8E-348E}Nn5Yr83H}F`Fj=t=F%uuM1GrQAd+s)G&^9aCTFGV|Pbz*eS5Y@B&M1W*gZ_Yd70AP#Uhxqn zI8O*t^@=V7z00eaNG+KN_LrW^$@YIHZvi_q8T&onmRZ2WJehrZf4RT2Is;lpsr{~vW(1y=|t}$ z?=Z~I>1KRPd8E7Z`+5F(d@_;EUTF@b+u|kjNcXzGoD&XDM`k;ArOZKPOl>Zm3WND6-P`fg7 zn_g6G3EM0x(@_po5qJRJ+HMY;YRv>BGcpHDJ&W?%0b1T6qLE_pRFYU>z{ry(aP3Xf z1oMkf`?&q2P6m#Pz0R~U|0gVzJ3FySYT2z1R9G=#Ua1a#g|}fkxEe`R2M4{aPUlE& z!*@eEfvdftNa}S0yJZ4#9F8g1c@gj0@^ly6=p(Wq1*p{=Id6^2;rLBn&UUa!zz=lY!8d!Qwk?Lc;gY@nE-zV1+TZQ( zOSjk#f1lrC@9(x8Ze>RsdWnm_7Y z>y_p}z3aSWDe7JC?@Lkd?f!oLsCR=`Dxlu?`$663KKTN)law)mkjJA}k|q>PPn1}!C_+M|E;eiZs(q(%dDWuuo*ov*&nLsHj z;&0Ab44Zbgw^$q3Lxr(fZTR%uCKN;&7_qW_#oCt?YKwU`?Hh)KY=5!#<%Qa6q&4S* zNJup&Fieo-jw5gr!NE8k!|3A)28ck)>N$_s#%YP=m{GR-{sQQ> z76#Df613VwtbKd2Hm-|GK&Pr*dU)V^FK6sa%ZZnP(Vk?cIgpFTeKP3N3<%}4B`lO* zCJ;g~pilTOfS@lmO}+dGj{tYr$xvRtXggwOWMgA^E|yI^w=N-o;GvC+brGd3LMY3# z9kJqTJ1eupAN+~9{MTg{-K{y<&(B)_pwCctl3?3;_fJyW9Im)Zz^014`%c)K`Y~kk zSmFttQJB|c_+sOz~zA6UssP6yQ*zZAmC0oJHu2(9eOu$Z@h)ox?t_iiF#ef%PGl z7d&iP?cu7Z5j--3I+*v85zBYunN|k@$tG78dp3mZA(D zTeP%ETvLNX{KD$G5D%UJh?Hl?;krD&{{YqB5U93mck0WI|I()&;-lc&<_CF`5gTPL z4PFE|x_HTwQ%}Q8I+!f359?rLeT->nKYZ8>g#Rs8=p%iPN91x!HW|~c`!a9nf zGx(>aCt&x|@_jmaJ&RIX&lLuncmOxOAgfx1EQA`Q20~-oU^mc!i@+EqpI|6`l4xcL z;uuEiV&+(kW=TaS@x%z;NNFxLf7IK3DXej57d8I^;QI3v_*(4oVyz!(Y* zf*5r}YCDLhs( zL=FCEJ&CX!(C4t!J2DpItKzMPJqf;C>75(CAcla`Trt|46vY(>VVqtR9_|@jH4h}n z`lspZ?!`f=(O%*T4%cKquTDdQ#K}^88htX8#WFlu)%nbXZWx32{+G;zDEZD>R1Sx_Y(;Y3bqWn#s5u`87E<1ikpa+qnQB$CC&6z8+ z7@D4@8Tz32r4yEvcbxH=l|K-9UDg1)v|`eW(5hr-;!c-cgDD(9RD}X*H8zm`n$PNx zSc5h4pA`b0dr3&_kn}2fCqUx23E7z_%^)+)^xgrJ1%)BN_672EH(Ql7p=@YPws(nc zb3*}XSdYVm!w=XzsGQJ(yBt(MR_a1yu{K$x9DBU9Q4Z1>Cg~cjE)g0Nje}?;bWG1( zq2qhJDU0Ckl)Y0uc}~9W^O~m9Yap^tP38~GOy+sNSGr6i^7Z^awh_i{l~Uk*+$&v? z<`McBHRx_p#$bqgBSl3;4N+uxbYBu*0&E@F+x9?FjJ+}F+p-dKS<={bT%-{y*d`58 z;%8P6D=Sri%{!|hRf*#CHt0Gym_^DCf&{MDvmW9*;z#jyfM1zUN;s3KtEdzOu<>kI z7!R2oQN;`}zCbfRB=gDZ1sSlo2%te8VEH+BIvd)Eup~BsKG+bZ*GSgwB5%t~N;J$! zGtj$P7X2{aX>uJ=>4MDoFtLya|dt9C%C?448)!ulg zYwRf!A~2l`Sll5hl+7{`L^nLDO@#k|QOKI7pQ>8XVSz!oh~!rWG3ba>HwP3koFa{C zcFw0f)ru7iryfk2O*~}tpizcjsmu3juWt~^BPsS{J6H@TJlH`J7A8~x z3JXZgQ+WdGvZsoXo0!wFOmPZ$*zGTH^cloZ;HShlG2&IO;IT}OrvV%|2nV?Z`f)M*dy7{#)B97nUS<7U z>_x4g7`+LiBAqqR8ADjm!1hlr%&{1Cj9LhO>LtbHAz{+H^S7d@)C)=N@XwGES1urf zuby8e8ZXVMM7xzpGbGGo*&$W}$&I_RJ++cxqaI}i^@JWxvk$TeNi`$w*?|kydnKEp zO>(z*KqvmVU?iCYX@^G)Wcy_j6#ykWAYV%-5i`T+B=#NMB&1rL#CJ7>Wge5*R+t2( zqTD353HW6a+dHoW_q`kw(@D&-SaMEn zh<^_vEC?hphsiqs)NgcyPuYSVkc_6&Zo#c6VUf+Qj(AS)&oc5G@r80AL56}+H@U@I zGGWdSavjP$DT+h~q-HTm4L{IFl-|f~iWIUaW=T#K65|du=GHI?V~e@Gd)x;_Q7cw3 zw#W(;jXdsH41FRi857jYuT;$RY0tD`Q$}uLgl!sffU8BqFio1Gy%u&b3-s=vR;M5y z<-<K)XJJVZ?<|l1D&7lN%`UR zUe;hkvlhix{wqfkWyJh$;~yZR%G+cv@9?&4d=hC>5-lak_X@FGNXQu4C@~5B_nSU zdIbeMF?n3#%^IF^m!O=`ZDjna@1V(LJHCjV$Tt*qLDS@`{JX5iy?IUzlqUr3(ZVCb zSh34%3tj3K(k`KtsAU*kB7wCaIl9!{UD_ppph@=ydvIr~sx2jXzg67ZNh&*^Lr=i= zr&s(#l3QntnTU7LL2#7=VATQ7Z%go8;>*2{7VktFL?>*YA_*zUD+MESGlr?7^ z8t3g&!sOAC5{fB*n-AiwPt3A?}*1OQW&OsE5R?hKPLh9E8-k1QUirI2Jm>3OTQN6Oo8 z!VT;cQoK+?BNO_vK-^y1bwsetSzS)R zNloaqb6#L`U$U@rflUtY6HYYMiWQ6ivcj_3@|+Yv(Gv%B>J4GGq(Nl-a)^Yl#_$St z#1zxyHc-1iocm&mP?BNVfI**O;Hijyv5&+ym>!FVT59%*++O8Bmd6H>rwkryqk8;Rs3-AT)-bixyfK zD0lVQ8U;dbpowKL1r0hC&~ zitNgsko!(MeVTsu2Ji7QH4Q+_Y=eugW4dgGDOYt^PsS>ePn4n$cNht|y-IPpk&e*CU@1dm$e~VI~@oOapdT zbvFV1p#+6RK;P#_M$@YZr&_T_6wrefzB1Xho4l-P^rV*vVIbdEvdl~>N-tY^{$XxI zWgs)foF!YlWjmh~u}A2eqB0^f(Ah{GXwV~ayV`A}doCN1vH^5&cYouWg8&nop?cO< z0*OgIA!l`(@MT`r%npjV2S{5n7M)^qUzy*uS8)3Pv<&%jFnl@0FW81ADnStilNi8G zgFq-dPMz@tq+m7mR3xX)1~(#+Ywj*I=CrOgde38Y1e=(!AcPTABnj?C4{JhP-*Wlc zsv_%amC+mH?Z#t~(bag2Jub%M6-vASZQU9YiZQ{vVst)h?C)Cp+d_z=U)07Vxw1J) zXy`fPXbx1{hjZu{3`hKiRSS%IY#zScCsp`?=+0ABbDI|T1=KMyUc9(=0$X&D-9;b7 zhE}X)+hlNIW=7*7@M`-?;{tFwT9e_!wQS~Gd*R|-duS&ras)ZgsjtXb;zwYa2B_%) zvyD4lp7FuFPbCfw6J2hS18YK$~OJ?`p+%|sh^JlrZ&;}zo4ej z5-vC@25_h;=64%X1x3=3A=VDVQ~k3!TudMHaDux`1=HMC6&1Y`2sX50EyG=n*rJ%& zth8M(Nq}xwTLZr&OR&isvL(=l* zj542&F7lc-#6Imv`F+~aC0^V*BG!0E5}{K9iCM2_-DpIPo}uQ-2|w@<{f`U)ZTior z8M`*o8EtAE5sGhsRL>$(g^&1XL?sO8^Em*D7VbKm&fL?;PAZ%Doc4>I^hF0v}zz)HsrbHGhK^<|` zCV=*e9MBJx933#!LX!D@4sMz^R?u0;Um^2yvz^9JUsad_1cADYw%0chhS)1(4MSvV z{eBrAZ^UA3H9NxPTC}rh*3cD*D~BG3;Q<$^4Pt^it^j374LVajT}uG~GDCRF3rxVK zs1@MSBS>k=s}3oz8o-b+1X(;92N6&dE8-e4lm{RHeyxR~+6Vod6fzj{E?f}JYmr!e zh*FtdgFtQqbCPjUGn?!w(~7Ij^2frYI1gBTl|eW;%--q1w-{rRJ}jFP^+KI@c^wN# z(YWM%oix+VjzS%cNamV#>FSn3HT6>^)eI~#WaidFHMfEOj5g3C)g?eL+E$BOASXfPBa9=t5hQn|9qi>6G z@a^<5e3mYaH-zOb2kX2Izn*NvbGZ!S5IsJ^Z;HH`kTkfNielqJdpmD}ROjjQo(Twkw1M&j7MZ39IUTc8bqWCkPT$z;IA#rSJ{DjU_){v7EY z_CiT~U_q!vVC21N8aU?EWZf-%Z#RjpQmlr_jpOmFGA09wtGw7 zjj!K*?00)5Yo3P$gwiF=-{U1MIh8mjqcD80zqj-yZ5EO2K7ViNOX#J}Zt8l`&quwI z8FoZ(i1Y*kkbU$4Pgp@uGBSn7#~+|1^gB+v<+ZV|)W`HInho(VLuwk0VWb`*bbl z>#I-Ha{oaRMckoyg@F4V6uFD8pi2f(b>^_7B`t=qXhKHN#}z`Zc4f+gu-m_9t&37UG=#7wZt3;p!Qehgz9V=RO3B9yE1yUa_%uv!3ivabUNGpYMp>#&mTHo7Uo*Yx&42KR|K*SV_)k{<>7V_1q#DiL)uOxj z%CH_rIsTHAV|Pv5#l$Ai3bQL1^2%P-H>GIiOm(Ui8*eE!_zR&1Ly)5xuG9QBwa-7N z_$vK?5QwJNx>Rxxgyga+lo6Lz-&3n+s{5_?&US0W!=EMXim=EihkAB<3n`bRxonSr z^+*=cK$#ZiPerzdJ!5Ar+s%@!ZxZ#Ib}!^k8IgL))|eM^Cr;Tc)QZvm0)UzVhAbP@ z$*Exd3Hk~1%?3nKrhog76*l`t$uww(A3|Ef51}pLhY*+0jkR`=p#G!S95i9N%l{A{ z%37Bn1-LIPfSYaQm(jtE7lidH`~f6qMaBkwBouH_icFTNINz+JyFEYI@IxjWe#m6Q z51DMz+BZ2_T#e2Fq1;HXc%j}Tlby}wwTOW>LqM)nLZ2b5(<0FXO@3 zF&<^G2iWrOLg6%ARmBakU(HcjRM!kbY;3?b*uISVsoZ?~I%#t(x9OcramHq6P^AXH z3nIW)ALg`fdTla4Off0_j;;^7A~-So?5OtrHQt}?``->zuy*4z)w6BB*|+=GWZ%=? z`&tf;%Yl7Ad$jvrD#kU{i82ALV8t@@@*4D#?0QC?^P+fwc3XZUgdegI!VlR9;fHL5 z(24DOF}6*{=CJGOvw0PoKe}DNy#Q>sC81;mU=x7Ayh(*)OLo0VdvVv(j`Io~-C>G1 zLDvpHWU}FhOg8+G$tJCd{p>elbJ+ECef^qDcHX=GU4!@{m_<#s*H4_HrI zU%ATX_7l5ol!r_uI9F+`BbbcB`v@nWp}C)otu~( z+=}7~IS0Rafj#}2HN@=!c#R(1Q9m-+d>&q%v#>E}0`KTRV}bC17s_+O2eRyPps1k3 z0$gqH5&&|0!f`yXPA;q;m=1z2>9?@ooB{NG4!QS=o_G9<+aZLRn%{<(x4;M<;0HOH zQ0NJF1U7=78h8NBhavz%s>ESAkVZ+;;`gGk$lFQNF|KVmry*shrEtiIpn_fhL+Ph%IaKL{IJ)te$Esys$QdY zly!TZy9#xl!#ddqy4r{C&ec*$5f<-&ZdhV$L!(6A)4jPmx(%N>XPu80>MWHRsi2|# zG!n?&?{&6mKd@jc5&3 z3HGyV2Ev#CC8S{D=tzP1)+EKD(EuU*pb3wQ7D%fwfOp*WU*;4L+?s6rNBH=}g*df< zzdW$SjX%+4#M?>&E|z*Rg&y{Y|%x|4)TF5&)3x>}o6e zTCSFEd7J|H{{&L~{q4J$*-SrwI2BYdNE<#)bZZ&7X$g)NF$%PARIk^DoLN5)56|O~#wv1p-Gf3RE@nI9 z*VqOoh75?Ij|(-703rEW6mG|g_5vyJeD*RcU2-WfUYtD^%T~U%&EA^DFHuX76cS)< zW%-`v==*zUyzYMV9WYx|foFgpxh)FkMLNUn<}fES^pU(Y^*BFaEum8`@F0m`D1V#o zIi7*y$!?mgXgd;`Rt!5{?-gyj920|%vxVo>zATQ}NB8Az#AhZ1YQ|f*RJ$HPB*}pv ziSaG!&oqybL=xywcwz|&o0QcxdCB&^Pwhf)|3YO0N;cp1-u$SZk&NmRuT{Y3A67d$ z8U(Z9Y7qYo$yNuf-Wi~6tHZokc17Capi+|1VagHD)R4fZJeS2>=C=ngf>K5|)|X@j zX@~@%0;up8uF_aC>y52AuwTTiZ~gyh)+!9gS*KF?##S6yVb-53(k`Q4y}HVs*LZg_ zTRFQB@^}*Z>YZ0+e}B|rpxkDPnU2F#t=QNlx`34mKo0rialkcpeH3twb&nxjZ$A>aZu>|Omx!-VP3Q>H{Dj7i1g>51 zRbR~uUt`xt0oPdf7{c|=0E+qG>s)Y+jU5SGyWr~)z%_P#6mX4ok0D(5980*y#*PH8 zUGPmEb6K6EVM8XG$jxOTzUBYmEb6?mL!njg1`%T)W^a zvc$t!J1=~VT^|KpW8Gs2*N2ZKTw`O$2(JC}himNmDBv3Frf}WxI8BoK6X1$TGMGIm ztmkyWY|lIMLTqX|oodC#47j*NY)@*K2FP8hV%Y?KIXrH=%cqURVI~|mCDxDSd0|}5A)((e>#lj(gCOKk1)rvLD*2Nl{8EcH{ zFzrzAWb2a#&C#?*jq4LC>QzZ)sQI*T-wUibNf(<7T^z6Jyi?Ws5-)gvMbvVnbgqiU z(+pt}`lcgb^Z`b-T(q?EcsiUj4A9uGmw3@&C=T#o1>}lb@&Vi}B2g`joiW4UN&*1E z1EaV|t;xhAf^y|av*e^`GV>dJ00vx`&u~ml_7&sn>^q`^apfYcfDN47ktC6pTsL*i zk75jRfS+qHp;Z_Q!I%r&RLmAarmDu!VX+J%PX*^7b{YK&0~xbb$jmfh1;4_8goqSI zSjn6xG+=@$jyOtfp}}e}Og99lihg`eCv-4xUdji82Lm}Q*g$Z-@=*70v^BtZ(x!rP!MYT_3K|V#ifSlAzz*N=UoHzQm+fQP z)UjQe1b_?ZXxms5JdjC)S zI0G&!F64bU7*^h>{Zf=}Zr2=81nJH+Z_`vORxxB@6&3`-L{hf4K%Ul@)Jyjr&u5RB zrG7Zjz?DNk%I~n1LWytyRcN5ZUkvBkK`q^%ICCv@hPaCZeAv9$QQHIyZKy_LS6T(z z-;+Z>$#=I+5?CpEq3f`tC&dXOqu}JXF?Wzbf&Gw3&{@o#9B3d39*zJC`i>W_&AX@o zo+YFR%WC_ojIOYZ^ylDbVXMrRRMlPr2ysPavc0Y-sUvibGf`O00%A$6t!1@%zd&LQ`^z3AW6kS#Fxofb?-#&S?iupM#ENu(} zh><1G7t{q1LV_7arU7`u=i*5&n02%5|4yeOwoyF1c9Rd%5@0dCikw}wDDmk_T43UKUU z4i*jYX@h6a4qpAYI*tsO(}(ljmZbs5UwaVUBMB(=pf-=SGP{~aG2>s1Q;#lV3duOv z5`?*JhheoZDFzKr(`y)^I|c5194}`AK+6Dw(=p(xJ=`{UsCQ;C{ty{l3ft&?zDP#c zPUL1iv+};GcrsZJaV>b1ef6)f{V@*^$|5E=7I0v4E8-fR>S{r*)qtSjT~?iG^vk(p zi9=-!3!kqVVImuhABku11t|j87Z&fioJOzD#dv`#nTi8b!ZbMHZNKh2>1_Lz^ zm9rX2K2_S2t3w$>lcxT;s{r-m;h>F)LS=>$Ad9RQf-nt^hm9u)Qy|nBY&*t~2o&e1 z69OIqrVWWWg%^4O$Q6T6aaj+xRJI*=aVJ~)<34Unsz5(1fR~WWhrFC&6>B5R^|pJ_ z$~B{@R_yhr5T77w9NqiEP(T0+VIb?hmZ1#vq1qBGJ@l%4U`Z_fLJ!O_C?fLGHl>Vp?0;gi?~+*P0v-%oC~1c(He5cnKcJc@OL62-7(#L8bGgRpUva36SjB!;*1+uL^3az3oKK2=1Zk8=ish$(LZ}4h2Dw*TDl~$9Wl5aC1W4YCo z#Og@?gFZi6!6!1MBsa4qg2He*5Vs#D#Elw_MR*b4QWMNnD^@ThQx#~KTa!_6c6yW< z5ScF~Y%hoL25;dV3M>TMvnOkzXCl9+H+pI752Yz6znR>FirdK~EqL$;e86r+QStt^ zcng-Qgc)SA*3>C3B$!I&l`iy3mP>^E!QWrx?=1s}=o*}bjiiB*kS6CUUFwx=Bn)`Z zKHoKI%B)wikw`YYsP0|n?`SO20AhfwQk`z3?s9MF8%o%j(nV(^z-H1&Bix+j zDp6D@a*0CVu(`?`vT2h1W}Cka+Z$Mk5S8q>gsoidm28^rDOtAqdz&Wi2Vv*!AilJr0y}#?3lWV<_^-bdE6S~gdTi;?!_5yGB0@myQW$xXB?W)Rr(Y4mjV~3zbK?q9g z+6kD=dk0103-+FBchu9TV|P~_{YBQMiDBnZ(+ zqsA6BC}MbsQBk9!MnxN2?WVgygQDKw@ArLUeshjF*GfX$=bn{@$WxO<`o>+#jAZq z#Dy_=Y-i!UWV~KP;zzT0kV!^@SY{u#dvBmv6x)TnE5UYQ7(+Sh7i)P$wGv}UZrRy?C-oz{J7>QEf%)}x6}26|VqN-mH7Ou~jZFv`zp_FSyD5m`Vv}m~ls`qF zpljqTkoy(#vMEuILa&Nup>k7`I~PTDKLY`qfo7@>8XpG#Ou3pABS1r|DwFfx;Tr0_ z_b75%@1?1T5b;GM)9y@L);l=091WnBPV0jf&c*juMt~#C7wwkDqQRnBmETnf!02-Z zLLi=ivX+?j2#pe0#_^&1e$;U3-3&q~gX>dpIzz9xXwk2$O6ciqN`~Z6-%;XVbBig? z+gD&;-@k&m3tH2)U7+4ps2W<(Xs{e;y<2s)~&e8jX6TJl8ackbfCM$_Cfe6CjDZO1{-i1Xw*ND^$2EQZipi zk`u5w%mD)K3Y`KMmgtaQLEG69JeMAs8LS!0VY%yOom*=<< z7S*XAP#~c_)?L&OCKRDP78@;exR%l(VI&h{x=f7e@v09^o?C^?x+e89wWb0DG4c+K zri|!dVqS1jmBH&VGio#Jj{@N;D%!Zi7uAUp29}M2QVq0dQ-KE2A9NbA`5K8PwxhQstl39-?Owz+f<|@euW)P9c%gHlX2+E%U&^D;T-> z$CGpN>v$geu|5Xpx6bN}Xo;V+BVr51?}KyRse$-d2Qlxbo;SaC4N?hoWQ%KPgKeI1 zW3Bkvoo4p-D{HBqs|&uX9XzNOOf7eqb|1-$w$i-5j6XYYl9$UsE>=4d9xgm7Ube7+ z3>8nUs%fh`zL* zSlg1sQO*DX)^jebofNW1y6QA`|HkO{1xu7cD;Te5Vt2Gv;#^_GA1PU-_h{jgXyJF( zf)TxH3#e<<0f!xph_plV;GwW9+0t?X;%#3yQc#&G=2QW^u0kx0t2l|a7tDgk7i6!h zNS!82fF$4mAdTEASH`gKG+J%CH~@@i5J$%-L-%LmWVjscnTh|AZ~MOH>Wh!=$7dL35&$r^NcrkHTng| z2uJ}sFS_4p;=_(^(y`C%Y_pV_lLREf*4IWEwjKT=C_~VQwr?QKf7Y>2mr6R`2TQS- z1jJ|v@6nWGeE3V8yL=gLex}>aQTn{%74W^09uKVMt6%e)KK&YokoZe862BBhXLb*F z66&0SF!UlqIF55IgS<06(`H61->8X zuuI8_teZ1?#~~39t}0IXwjkJCgkEJ+f6sQ__zE*MLZpG?rE-y*kl8yl&@+37V-zz= zKmnc@`FSSBNbhEda|P1YHg zt#oh&QFjgQ$9&BiT^>=)msm@`gt6kd{+z!+ab+2MHbx6&X(hlc@G`PJFH= z{y9!u*Upg!U@Q0My`}Ri{DElN#~(OU9EU$#>pF)35wcU|hW|dm@Cjql?E2zW8Is-? z;%)1nKJ32HTrY!y1_K?QSYIs z=N{LYqV?e@;0@~#J7B|)Mm=xX81bK7pERHxP|ou|9<>^7n&0Y{CY&lG&JzF>f1Wt; zx${a1-9=n7$sBQMuiyiVl6PsnWTPoik-6$fpyFdX3F8pM8l0y$^k6SpIq}dXKSj2} zSdU1$jRiHeFZcuCthtie_evq0gLhR^Ja9twf0*8aj?ZsC{ZNJ+Mc1UG=9? zN%wdWyNY&xrn~TcT&l65xrwn*k}r?8-P=gM`E4s;EaM+&w-|s!Mtsq` zrEI9OiU-^+Wu+mzrF?&=yQQo+WVe*>hwPT}{gB;KzCW1V^6Mk8TmGZ>Al8ZDuwU4D zXLaNIMM5pCZ*NJ?ifN+x27HH{`04EEAI>LKKBP)Jt%AVMqv#w zmY}v!8)tmc+P2ap%oGgySE^dDb>uWexBISip#KqX>!G@jDSshH&rqR!3b;H|Jm4^* zh7Viu)%e54R%YBA@)4!k?X&~qWQCh#gfm^>t%bf-nS4NkQbe49Ix@4J_$t*e0DS*CO$EkgD`h^I6uJX9z z{vW9YsI)ji>p(Tpe9yN@nH#YHTAjaAIjYa$EH5Qdf5I*=qUQ~TwdI{x+a%!os*52h z=~W-%r_YyemQ|ao6eqNwNj4)J{~DAQe;>*;+JyOwfdxU`ylyxaK=2N`X*`6Ad!9FC;Ax zZ2%)mX>t>^0&u%dPh}(*)Up1OF0cUTY}&v~1s`UqA4zQ++w0B%=x*EQG_Zh(H8~t> z&b?UJ0R*UM=&oqU&kkJ?bk(=2d?CEiYdh^jQOQrbVFr`CqvW12m=rgTZ2q38PiVJap-_s zj-c&DR=I?FJ95-Bo~*RF9g*^wPgcxxQzr0DJC?#|NYac6wxZ?g!98i8RD?ebCfPE` zDCVFdx^W!DCMmo1O~NB5tpY7dQqs|$YyKE~gjrx=55&N3 z7?e#r1Iv>m_FwFgjZxB_f937XPV45+OQN7Jnelq`LmMv!H!qZ0jEtQ0n?1GL_^vr0HB$=+foSF{{78=JbtBu zX{U5ZYPr?<$?VWa9z|;rK4vf)<(hO~+F>qC$~CDk94xkc61iw8ErD|I7=(gO{HgmL zRjJ;ZLD`V=VRVNoe)V8AYw2m(X|*;gIjccKO+bBJymwYZzDZEeWoWV?3ObtD^`MI} z`sS&0(Ux=6LVZC1pRD@c{vzke+dWUH)fQ=4uar7d@2ZQ}uQ>^^eaJQl6=NVJ&YUD4*Zb#3KK#JEI(yQ9Fr z8!tp6XdrNtP|Fe-@%!2$9HIYfE>8y^y0U|h$Yb>qJDAf!7(o+{S-e;do5)|`TDRkw zwE~}I%Wy^diTIp^&&j8paw;Y`go)jm5l(60_9l)CChm+zA<1Z};WWy$aOXjb^rT#| zvCp|ej2ELCt;-92PpM+ax@f`?o8v3K^F&n~GQlBMZGBX7#6E>>Lk2k|BgY$}q>GCu zqhz!+8}EG!oP_sg%-`STAyLZzwC@jeNemxJJHSV{+{;VVg!qlou+NLiw&Lc;tMjrn z2r-&XQOV~usd=SiK1yB^C4FAY*!*oHo4+(FdGoLJ=5rzbvMA}zpTOq-_2KI1p_!^} z_RFJ^H-Ef0Z(K=?{)#B+%`av1qlNg*QOTQMf=bcomGRz}a)KBa1+I<)zcFG!#-O}} zdaj(1jNg1q=cEGqCuJ94!UDy6Z7=3n5h?7r_EWmLyxPaL(TDGdS6jTj>8sBBb6sYR zsvX4NBU{E=YX7J_J{iIP#5?*rPoPIA`ifq^_uuf7`b)Yw!wDDr>i(|0R!H;2ImG;K zh`t@=6b^RFn(7&03mBDdj7kpGdN|lk@!p}jn0zzGdcM}blt3@=pO8RHPdHj@IV*n! zKd*)}+y|nA*>S0ekHM-e@0`SypsUUt(Rap^#i(zMN+(b;L-^ zO^d+RhFp7ZqeW`)G-0z{w(tf!qmJ7ykx~K_BV#{u^TVg2nzJ7iwWK7#^=J+-xhGLf zXM?+%e8~gRi1Q_LhnD?9qpWPK>4tku(j=uo&omfQg41;{WHM9H});87IoDA$pJ!N6xsP8*_}Tr=2}F&xNPK*7S&JDF7+vO-IG zrwuJthxD?kwWy#u+x>I$Ge={S(Xe7&S4{J8?mJ=)eU>15S-zZPooAc?#HU8SoGTlh z9ZTPuGG7ks!Ek~{Wxkw);Lu%iv-~}{{;|t*g$68>ry3Vm@D*($v@_oCwj@5IMTA(i zyYfsK530hPZ=@4Yo`R4Z6)H;sFF#8ev=jy4Gu8mX)&>X`)j+^{AbE!bg02boSO|FA zFYOhZ<=IFAWjei}aCb-V4|Q|^k-~{2f=Cp<|L^d8)Up;z;z!p&S0_>UJ>MtK8x5rx zqpn8KR}v*yQY%T6uoD--HN2Kb=?$m|U$6#H{yv7~`+7kQD69t!)1d+7PzSe*{&oBBUgo6-BiXCfmQ_DRuu^*W)gl;z^lyTW} zgCj0?;Z9Q-Q59FNhlBe(;CLDW`Cun|r3CVk=<<`+ik&);o|56>O@No5G`5rtTkS`q z5nm8Lu4!r%^QWYj`pT%CvHl$06?_(2)?vjVVjFs(j)?&VSz{oD2ACVcrcfDtrx3U6 z`doE!Ukt@_Gty8}h7Sp2VQh1ZEkleXN?#~LTNQOgJN$&h@Gy+?@dqQD*3MQl?RYJr zw2nFF8$Fozpn3FW)3U^NVVGcn+5fl%CH!zu*1o@l%AHCnDNwlGn zXbnSU2}6wm35S8sd}~KX(@Vs-^KZ{Ri1QF<-3c9h;+*3*`RAEytb%fotAe7IoobC( zzTMf8Mtm$i2AXE9)q}Ev;~pz;c~%e_*``?=r9WZlKH`+i8x~R@+$qnCAIpqSivb&;9en95`oqsTX@C6u65LWk?D6`^ z*C#v;i=e?tZdcHYE@Hn*ia=L79ejOaG)N@K@$RKIEGc9T>D(jF-NyKBjfM1OuQPtE zm+^gVk;sPI&(R2duvu7uX?T@ z7%%PA0mDB=|EIEfL++NaS$yo%{;i}fbc;BKTnIH#(J`jCODGrbkV)keIJ4E4z())_W zIHAG>CMKLOlPb_}m_cKVVmNHJ*#DX}&Jn1Km#R06(>Ec#d#TA}yx-s4iIG<#mzjmq z`Kxy1D7JpT!VMPt8WCCVk3oCjRLK$55b4G!_p@=S2k3!SW%tA?0WQSpQu9ro@7MPw zPXX%0PZoxXmnu0!@KVl<1m@lp9o}uR-KMm3?n#^!T$Q}TvMKIB<7=X+o1-aDSjg>H zju%bU!IU6c?xI_wfm(D~9k_cMz}?!Y7ygQ0Vywc!68-A#JJ5IR&i_+;li@)2ks}Fx zNh~PY^K~uIJpdMxEKQ_c1OQc}8&Y{006(}8Al(UIkqm&IaZiYvX)sVvWV@TjwVCn` z0B&3hH?L5s)q}FqT637AoehNCcefLA`nW?wz5^yz`RM7!dAhk{Eq8W-TkfdSnn&9Y zu3oWUDZ#{sT;N<$F5zv6@i@hSjjfVCzu%(`0jG=!@Mz1`oDBuhr7bO4r`#sQ)N}F2 zB&0ytE27rV$F$id1P{dV11gh1`o$O9w=;YH$KR$?c?BpJwfB4@$*}_A>!ZarCffCr z{l=^y(fJKg)Gu_QeK75Gu85slD~dj-CA!1mv_e9%91~G;*v|H)`{waUhJ!=&#rAm|zL!kBw9;YM)h)959oC2e^ zIZw6h#F1pvMCI+pg7SN;(T*7Z{WgAD3q1?YVDO~2ARp*}AZWbdWcr%aZ?B^7(fGa5 zxO-e4y>LcB?MEGWq`n19NPj#U^N}9qjX`NbkSu{_xVxqbly6hpO6@vq2J8EC8bDK+ zxil!%9Is|v!gcF=%gH0rwv=RP@&o^k$wOX{QUmYVNC^!T$)NGsn1DlrJhXbIh61EX zpaJ*Xx{Apmw`~QPv{1+AG+$Tlt71dDFH-M{q;^tYY`HnH9NbCEvL*dabX&{XR6ow2 zX&mR@je5=o#Bu(cE{^kLJ?u^M9}Z$%&E4sAX^FJ+vT;}%vWBBDRgcN`$72qb3i$|D zd3sz2myTFp6x3qT#fcnSxHZK!ibLn?u`xv^B|xq7w;4>A# z^}e)dZYv@GJTeb+S-~gD3S5xoodqD8-StbLhU4N)-1#aVn220hV)1U2bWE64d9cV@ zY+rjfe!C8!ST`v9d5c($c?%WV$w(RNFRPE_cUcn~qKP-F30eEwplO2VZ;37`+N9ho zFCh@qM|;LM0!J~K5vDbRrxG{=4Nz{1a6w+aStuuP$QJXFrUkI+odD^0$t;f5j6!*Kl{JI1hJ)Vn zJ|b}mcwzw?3ThsPIb=6PP3J7hwK$tkV-N!pETwjP0urV<0b2<{y}KR>Xt2!u|AmzC zvEr26A#KY=b~##7a3cq?0%HOB>*J5KJKX{rLvd`B7G1YeaxB-yD1Y1$0@(crQ2zUY zPj@5bvmwig;M#r<+<0OhsdZujF(}gQq#F==NSy%qNTbf+1!N1N68%IJrjm^mJSpC2 zFZ8^;nla`(0j9AD(ycLAXQa)3f{9Tw_SHaWRknX_je5R_Qd?JfW-Lr%oFKPzouqxO z2o<+SBdZq*QqBZHH&X#HY8ty4Eash2(>eIV7S7P6K>keZtI~ig6QcG#joQ*LA24gp zj;QzixW=2gLEqab5C{AN2V;OpyBNE)-?0xiskWwaWP2hoTup-QIebh0Jlm4e+L}iY zVbdgrWd&c%MdTk*umC?xBp@D+iL9g7Ii-ALSB!K@#S~*3h<27+kcP6k?@6KO3-Jyd zrGm^C74vw}2P3g*nL{yRJ!?~WWTEO*3)48jyU@Tu$l%6jSSoU*#nYehkoj2Gs|Mvf zTu7zLr`Y`IM#*cUItrIRTFNTvPdiCiEO z-YgJ$!6+p=a^>iPqKma1v?Tf#bG|9MxXvVD9=xbQGhKdT-Yrqs$3qP`NEkY#dR(e@ z=wuqXWbEAi$)TWd1(jt}12&hayg-UxJ7s{$JZVPedw(XwXL+HfyO2RwGUBvmP*(71 zO7KL%z-JhFgwK>BiO-^*B_h-OLIOMtk)?elS{fn~b7}r?L}qPLiV~55=`3*g zLRmh%6GpLOA?WkPMZf{2(48eHDBCqp8Ku|eh!Sq}@qOSPWz1z~npZ4-KSL5+{E{Ge zy&(y9)-dFLe-tivQLzhqh&^jF@e7g}!_AXV{g@`I7TdfS`nT^yMOfNkQElHzTcb1I zNwyK8nN8Zb#Z7eNX~_~U#I=?vZh4|A!<~_VOdBf@-!gng|ffxT52f<(Q z8~|$qb}gd%n5M~%cW?wXS5UvFYB4{$hn07*))L2@dg^JXoqqc1Q&Y>&c-`w?|N1k} ze8X8Q-uR|BzvZpNkCJB-;y8DA4vMDeVb^}xlbWSDmjEcg*_f3`>5@Ci%cwFrNFjB&4&N%l24jn-XwZBN$a0-gGksR=LH2S zGWA*d85rQi-dQR^Fni?rz?XZPK^ZJpW@HApwPf?Ou2zollEl>~sgBR+jg=We@-VXz zeO6WoIJyyweiCQtr$zM9@#GEojm@Fd)|Y(}`hinK7l z$Ls7l=ISX&2v9~7o?-A5Z#kuY^6*>SNRlSvi@Y4=n5@&hJQM2(6)a#~>_MK#RtEI; zXvYC!{h?l3=l4M2sgazv5DRNxPmQn2AtVY;ZkXOtCv#fJzi6CGEcA?g)EPje35z1A z69x*3pFbQ#WpzJ`zPl%e_?!v*Y(o6HGxX#4o;UN#!Q8NjwTB#Xp%>>J`f=Jje(>z2{@K~o}E&YKO9iU zEG)o{6mY#{?=S_B{t$6uVHo6QUx9NZ$-XJ^K1al-^VkJfpz3qJYo9^wynX zb{Qt1CQY4&Ee%b2xux+vZE3BWc&4rM!PLoOkjy7(J#oEI;&Zka-*WZOt4#gVmUMzU zmu-~xaW#-EJ!~LxP3^Tcri>H%Ud;7pwpv`E;=?23-M$}{YAW#0j#QlgpiwL2Nxc+om|1d;JANZpQMUx3Q@FI{Pw@6EY5`mDAL!%BmiQwlL3%q zltoBIwhJzg?wl+WZI^dWbb~i9OQDmKXi92~77mjrbfhJwy3}WFjz<5@@WZqvtz7p^ z>r?H-4DGIoW*zM)xE8mM48^}TDmA$F-vAfhORY?AI!7NMOkKrZ>djLMC(imlpiai( ztscCP(8kw%+}zWhxr~$k|qhp(ic8t{>(9L+)$M2 zc$!9T6EPeh=43dMrjrbKX$Yq#)l5v$)S77O0dwKu?s zkZUy$dJOBLDIWv(&+BNZB`aNp3sI!t_-lkWn z4th3v@?cz^FvSlat;QX{D%(XHqmsuRo63vh0JyW#o1*mNLFxnGm&ALI_ocon-d`H; zJ>FM)_A9qnhxm%D)61e#W6wS@4`{n!XnNv0;>Itaa9;-iC1QQ(p@d8~E)r9lM5X%> zq+Xj4)QGtBPK?2XGyV;m^p`u=I6t_z=1 z?o(7%9He6P@Td`;uqoPh8U$|YV3Qd$>=DW;sb5->8DAA`yZS|5ysfwL%rAB$s+U*= z4#>VE^nPA(&W7Tw+5WtXior!|kjt`z2z=aT0K|d*S8N-nk0Y$Cz693;n3zjZ6MF+c z`|~cIm|vjo#S`Pj)^Gm0gQmyP^cwWVh9o=i9t9p>P_tdU1o;Ct}pdnSiTZQ+YDBQ zd^vT}QO`gP?0j9}z%5jZ49Usd&C&REwks_rqB1x@DBD#ZXjBST>aJntX6zeTNpVtA znPlkk2g?rUgWvA>BB?$ zooXSQK5R+j!|--Cx^f+*X}w`&t#e4jnDxi#e z8VabgP8Cp0PoCiN-U?h?7fjZIc09e8i6u?$a;WjJ^TQUK%? z#x^8VG4G^dz$Xx62o7z|KtnNbCJ|atL2z5*xT#LZG6AWC|;==Q#E^ytdk2Q#|gk{AvX!2w6y zAZTL4a9G}yjke~bw7i20;H9c&ypW~&{qb&^hg?7?@>6cjplr}50Pi9SUE(`G|46lN z9=fuwQTG6DMYkL_Mi;!^MeRalu%Cze4WK(IfzDV|UgUMeB4qDyn+^><;Z2og|2n;)a<*GMKXMT_49ao)BGMtejk=(z-;QhwcK{?1cvH~#4ryw8 z@yd#3!@naS-kzTfC0jWiP5pmxPD~7nKzo1l%sF~~{=lXb# zpT3R95=~;gG}q&&`*Z&W5MXrBqJ>Iwf|EUJ+^QM~<^_REPoFu5_`*mioU|D8n74n_ zG<2k7?jd&1tMoY!2O;_dfgLO6^C(RoAmH(Vp=C*ogo{ByQgpU~mc459>TZU)QoxDN zU9>@JTywC0}c&xr+=Vu<0XZ|Ou-8w<440=`S#SGv&yy8AA6TZF8z`#5Yo<*6tR8(@#YpM@7*2YLd}<;K<1u4Qvi zb;N%1#KHE%Px8)G?r8_20QZi>`oQUuD<&J9vxZ2qp62K{Ee+P7?Y_?%lZn1F>0)Cv zRTr+4~a8m*>T5$Wp>@)ge`whqPbQypP5&5JUs zaR2c3c0>rW!Lj0RE2YRrNx~{iP4R5_i7;NKPi2?FR7Hd|ztWhbp$(4sLjNO+;;0REooy1^c`GcCT9+Xu) z3986xi`qjH*ozp_&O;wkS><4c^aB!;WV_*x(VjVA=+FIa!%E5(i;o7llFq|p5$-4XpgDB421hl8$Dl38rA;i#|^Roi_!sLc$+4B&VPRo#z<#fuoH-&Zo`}e=pF{ z!#I(Xd8`r9;l;--yQG0e^b1F*odc6 zy_EHDj`!X^RVV~PKGIvFq?~VtEvD+>cKQ32RK86iucv_SdM6SMJ3;3-g_K+yD@SErlxZ9Ap#kpp<`Yk=#EnURb^&PwSp`a#GBh^*M36}^wc}`k zb}XzZH*+G5V6&*D4cpNxw$gd17+mwSCwcM}+wAAIZ+w!Opo+(sL|;yVK90Qc4egDe z*?VvfmA`X9GohJ18$bK-%)awi9cI(|O$T`SZdkXg)avqR$-Qt1MA6COX^Q70pU@D| zjQl(scqioc9e&Y`YfY6Bn95`--&f-O(_chI4Sfp0A|n^s~>Q&C`ewAj3jL`dpicfzz} zF>rBvOv}ZWN*JR;>T!GVjJ$@c$zO;k9vM}Vmm6X{|6~D=1^No|bz{8$j*WK)?~7gc zRGmY5GDN67>nEPvSC8etA>@A*1 zmpX8fseXSe7x{T>)_nnfMdV{NMTfO?W=|b*-I$lDxUb21d-C4SB~3f&>|$TPkQ^$$7#n+)U|2>sNHuXH%-#=6}ZOYr0ZEde5c zimg9*7HsFtDd_tQqXD}t$k9hNg%``U2tZ-GH**i}?6wi^9peE4rSH!;_R|;o4v|g^ zarIKE=2KtafG*=o{RV&xFhbzjtW(uLa0q5q(`EW;eeM4iS#!z7>k&VDi) z@FY8@vLslj%%S&FQP6ubAxjr7HyGznx0RMhlc*Wpi$K)&Bn$)s{)jMxNLJkbAV>+g z|2xw|2x7&yHAf!b<^OX;_?&mtM1&Jb661QsSotr+*xa?8lAAc%xRhfzhqDYl6CD)v za)R0`FZ_u19&NODLbJUuvppG>OPBG$O6~PxoI(!9@v@Q%iM#c@$I;*8(chI8u>oT= z=bBTQuSUVGhFTQicyV`aFFg^({5Cn*rW+UBej`fx`o9K+aIT`Y8O4__;hz1S zsOj$9G(CeWH7hF4vZv?E-BBC|SH1Tu~+7yRI_pSycORRP%I1GEOtpcp3yC#FN$&?&+xQCmdxj zKjEaK&XAlg`U^Is&-=7eLj$EkQh$s#fH{VnB9zHrFEdLzcxc9I;X^W3sU5)NN zA*=OFqn2FEil2=1RQ|U{Ets`2!cUBhNqDwVOO}S>qo1kH>)33BziiZ^WuaSa`PXW# zepYLLqn2z6#jo$J);cDu_3K70*}97jBO(7nqZa&UfP{fSzmF0hF!5YU;QcMKf|P#0 zJis-@(4K%Z$H%?8;nEF|;LK>VB^yf=$)6-{)sjDri~f==pdw6Gv=r`vZQCIBYn{uA z8-O68<%bZ>I0n4tA+#|X@Iy%E6X>F|LkQ`7GxnSMR|a~tjq9?u()l5T`fW~UW~{rM zaBnJGAr#F4#Cufk4gvC>G)|XHs9g4-sY=#vfRa$Ad<+yRwm1`%D9EB>YkJ}ul<{I) zdII{O3_A5Z-Bg1D_5unm7WNe<1M=sp`QmBu0M>G`N7ULHEp~5m?w}6aWD0YZG zf=^_CsF|gTJ&oJBkdZXi_?+?6+8V>GQuofo3JvqT>rJ=+!}=}N`Z0eKbF=cQUs_I> zUL!f@j?AmEH;vJkS9vw;cKgcmaviyGm<1@UGxTG{-odYGynB}CTG}96IFK^kl=J9FWU<)K0lxth_jZ+AxepOa_FD1|zUBTKSjq77Fv4#sD(XczG0d zNAj1LhxNW@*{hHoxgRF>XRim6 zS*<;37{*+^tioI!=HKH|iD>-BXxy2r1z>ZEpI5JYrG-JKM^w8ds<{$N#;RMtr~PPi zE%IAdJ`j~$mnLW5QuN#!?_IMsci{{>=N>Aq`at#MIx1V9Tcd6xcIa=0Z{nCylaE_H zcrszV^Km10<`05ajAi=}`;Trnu1nIS{rvHJ$AA!w{=&)A#Z0$;tbu*VotMV)J;Q-{ zSSCj*zpR&u>2;2@@T9X*-{&GjUQ3kVsN><=On361eE~0kwW^bU06Qw;bd8kmDOZv! zCZS6gNhJ&2ak!5cH}Y2Unb11N)5tSJ50Na9=PyAxJia#r!5K7lzL)iTr&cX`PVxvmjyaZ9+TFOVg#gshBqwa{TDZiy z@EOD7^Cv)b=76rVG>5elP@oH^T*XdB?o^tu8qRIL6_dv>cW7LF3+%ep-+C< zfeA8u5WjCbk~;z!>&Obd8Dq6Hkrh$9getfb@wO!BaZ20OPy2qGuhGtcw_p84KkkFO z`e_U98Us&+g@}zSU{Yx&ftds0W(D}US-JacGA`z4H-~M`!H62zr-IqJeghOcMRTAU zY7U!v4n3>6Fa}^E34sCdrD1U=gZzNX&_Pre{=oN}ur(^jyqgL^WxWf5ZRGya!q=}} zn{62)sa@)we{p%;44ZVOu7z$s5Kwo67tM_ho*hRDh>uZaVM6_`-{oG^4@Lui$sB2; zHvrP*q^`swfiM9dGZUZ3S%Ua+(zDRQ_Q!->%C#c3K#4|VegX5u{FaRHfzj)s80R71 zEH)Iqq@xlO$q`N)e!*CEAoRL`Q>biGRJg#9Yq|}&uv>{(L@-3G)k{>7%N#$6Tqwqr z@YtyENahdj)Zv3Epb_ zkOSP?1-^rS3U15N##xpJ%7vAWMaeS+3Hg2T;T^(uW9Ko)EI#&?ujH*AiQyv4h0hXv zVEsJdwX}S~?0Fh2o@cxcQ=i$A+{aHG+uFRX^XZKHI#bZvO4@_-SUMQX;N~gH@Md}E z^><>izQ@J#1Z65eZs)ghLLomHkxb7Q*>h$6mr=u?^KL4%BlYQ2rTi*;{tdQ&x<`V} zdKSee_z*^hA>8DpgM2=4;yO5Pa&t@7196jAx75)Y6x<|edCpB<-&Tv5PHr+WRC95Z zA~`E}1#e-4wFD*t<;@elJlPmRab8x{4nTgd9e_(v8C)rL(0}{@yg3H$6pAeD!5x6S zY_s(M;x{$VXZ zqQ;P;V2)fiM536LPabp}F2-rBH_i-Ftc*f!Z8-p)4q>E_1QCFtO=84Ww<(8z$Z&R- z+3dg}H`v{~V||>nKEB58vYy!FV0S?sS~%PVqTnQ+I4U^N^M#hcPXveo!^BVa=ZT}- z#T`io*HI5r2o2}+km6yUWR>|PZvki`^8@O4kQSobU!W^;EdvL6N?j~NG=)nS8So3e zEc~JS;{@&~StU_^-G#uzN}|e2<8>~CYy?0Lx)X36o?n+-n1f=zB$uynCd@g9a|5FQ z?>rZjh&%8cydZC#r|bP>1K_W!+SgT={yYpuv`n?m6K9Ch;E6FE^ zj9TAp)OrbUsaxD~X|=E8vs&M3)Pl|vwf2v+U45rfOHnh$-jTJw+o&Z&PVu!Z)e*in z8{zjGwOoZZvacUBYK=kRVm5=>&;uG91{Ui8c?Eu+c%N!0i)jb}tj~=E@#;ZY+n2M4 zp~#B%B1ZDe$dPRMwteuZ!)1kxU*^wg|?6b{ay6?e_xy2fpg;RaE zSeH;)Gh!@dnm=!M@Pb+)ZvhdVrVY&4B(cWi_oohjT(NMrSeCRj+p0Hn9Ee*70v*-C z$5JZL578YFv6a9Xw%I&w++p*ic_dx6u@pH@sswSmp`1iAyEGXmyQt4PrDrqJ&8i9K zH>UJcuJUBA;FTO`u{IiWQvscVi%Xxc;?hJ0PNc+3BXCmz9fC|W=UNL&h-_cM z$pUJ&0R)MfasiwfHimRps_Q=yFP5^5mWS3AF^1XkrJafHOX^0T&GFvRMW*Dk{+03G z-J@m6DBoWd?;Rqt9)10VDwvPRmj3Ffl#{Oi*)$%_!(PPcE^ClcX#lTy@@rLuJ}z@Q zT00nAM=l&&(i7cS^(NCR`tS){F*77ZWlk+X9bUr$aYV9@Fyp(dyE5(KjvieAQfB`k z73+&PnT3a*uTy8NVmd}ix%bu{SfQr}?L#(N)~8|j|P z-OAn{C1>pfn5+JusQVvf{ofR|y#G2n-xBY=e>oJigijjxv1c4=q|r$Las*1hfk>|v zA~`bk%;1(1=28d5Of*bH1DFpvcxDrtI4h$toxRCJ9ZYV<;jbB#HJl`|2Fi`dmAf(O zxJMkN2j)-(O|>c&L9f`U!BE#+84UIG zeO!+Q8zE9VXlS%c8kIm<4h@6|F^FO-N=fXORY~l;wsGlnT1lOWjaY?}^=JwD0Qo2< zyrfrbc0Xh#PNNFTL=Zj}ZrEvNCtDDj8)9k7d!x!`B}*3j6Lz(?a8tDKq>)TqIYolh zf|XmNtc!#^#-WjH9uH`sGVX>C>}}DK+u}@~d1R!I;T@G)MuS71d8S+OII7T!19^m9 zno$DLwUkCXfEOTNJt(Vu*8oORSCQOdm(yx$*`nT>sOM(_k5;cI8(PV?Ou{IFH^vII zWuVsKdm9s}q%ixj=``o`7j*LFB#}IDJvfL*F8Ulo6E|m&Am8Vb#xR6fHz+GPnSxuC zlc`RHOihd_4<=bCZcuIAJRSLLv{m8yur0L%snZ})(YEUAE17!R4>(Q{jey?)ZKMy> zbeaz690aco(cN=|Khs3%tnNHVY_ z$BX%XDmwtz4$4-2bqtPEz7)_ElZx6J5qRa&Of{Frnrbc$M*uqt4>eF)tg0>dB2rOk zmzjNf49kN}kEI^UTikmL_C?b>)Ik3K&;PN|o4OtQK(0?~E&dn&jWCJQLkQP~>Ea{f zUQ#rF<>n*Vtd=rpkDn7xVCWuW_a+s+cM{_FPCn%ngzzbXPq!i=gzt3-;=>1Ve0DVw zgZPFc*_I5+-bPS+_&>ZH9%gJA-LXO99^v=J8I{{GC|kJKC!0qD|1erUI_m*3mW1b0cT?jM93BP2OM}% zip^2^V|J*pG$eT7@~$$<2&l(YdWgBg!8XyGVJ^EjA(RNgd3{{&0{#KfM#$~YW}m4L6|lxv;6yb|4EBwKehJ$ zzIgwfAu+0%tN&C~+Gi73hDv38BM#a!ia$!*Ri~`^8|~_!Q}6;8*@o;4xR3 zvI&pamDtF*mRI*GBz|U+1aQ|irl+fN=9+*Xo`C_6#Kdu?X7fuwH_xpIMiPa-MgW+Z5nzP36*|Pk26NNQG67BL6Y2umxuk!p$2kq= zmhfvpgxmTMAo9(asYB$rAv5itHMUpmgiRbj_f`EtHB&iZlre7QO!v?~M{9VfGu<=C z=!SS=58vG*Ky4eVer6%#f>C_f8$-o+F+oIpYrFfLYkyc!{ zw}ahVb0;^ULYEnx!E;tyNM>|Bh9h7x`w21?3=f}CR5Su=Ha`H)1m5QGh3)(|G}|q( zgw`%5)yQh{e2n)iM!l#s)Z9Q+%(({s2hs{iENEHN-$fgx*Ilva`_Iv7)GYRE*aBt# zy?k1b8t2<>HH&}~Ock--2I}d$DSujoNUay2-os_ZVY|=zau44PYzlsC#nXH)@jLHr zJ&Qm~n5vHMP3@~4zy=IqtHi%&q(yh*`%2c(wbvoN-@Bkidhbmi_#ZgylRM=Hyme`P z;?>gp7;mi$c}J=QZ^}4d?wV2?-8{3A$vahWO3Mn;T9e*QjZh43imI*{v`ACRQs(f< z{RJ@$x*BpzW@w3nFq$!KTcVsJfR`Jw^0!1CUwLDDsn8g<@=zzm;BT!oU`s>8 zLh-YaD}P&5a@bL|qd8?Oe|wblm8X)S7`^g$L?v&Y3I{fyulxt2q%RGX2*o2K!;$Zd zO5VH_6tEoUzh|#htoD3e%Y$7 zACwI`))}T6h4K0zF<7(W1>}Cns&8sk$Dtuvo@XqMsMnJ^fmU7Y=QB=irj(bXcl#w_ zJcBce7DF_=7UKPAq&oPD7+4MQFrI7*o1>&>l@#KAb)-@I%BWO9yg;|B;=Q8_(XDu3 zQfj?Tf$G*dcFUUis(@8EoK|RK6^?`hxdrPT3k{rn$d9uOS`6Ex6Zw+iE3qxj z%QrB^*`!6o;(ZN>)j5UTZgrnc0dF*?jDpHT9Y3wqY6SD9y2Kdq_>_SbSEIYcqK&hswh4Vy|`N*$` zsuh_PW0hcf0X$2)Ql05$jFMPi6}5h0Xldz7^4718a^AX^Q|q90JGy`q2YP-+G_H%9 zzcjhvRkD;126UVlqtP>ZXBl6X9U-WlyipXIpAyKbEo_)Pe(bq()e z11>a%K6oI%ISRWKoF-DCdZC+zYyCr2v&&7R6c;rdI+dGo8`_msso8D4AwXHhg{_Ya zcH;_AwgH&x#diZuLTUwmgk%8jkKCz^+5i$HjHly!j+f@v+aR~Z>r?E8mYH}~PF z?J-y{t*!~@ndH+FD0F3(v#Y6`9M)Tg0cB+qD6&?o9-G*LI}wH}yUI|mrfO@7AUSx| z)+b}GuE->31;aDVRzstMX@4WkvUKi{HYLHl0u-G*;PunQlU1+BH__1Wk<6SRJAc z?{kfbk_l;>D0FkCv9gKcXH#SKMe61(_NzM6&{!SnOrf#TA=Q-Z&60U_uk`gwCoRs? zg*;E~L>-lP<(_ns_<^Xtl9jzFTdf|H6`WAA0?J9#^Q1Q2?J50$c0!S>ig5u%>T_R5 zYOpa;?``#JxqH;csP;9hCK;fGy^##?99g!eACs|b0Lv(t>`3Etn2@b1v%cHy^mtGn zc&i6x1&0X&efKj3iB#Xk;C=petav6pmD+Psh`b-W5{>E*7(o49#>0!E@*WOYz5B@k zEQS!jKnG;3pF}6mFlfljjn66~DQB5BnOs`h;Z zR9RdA^i#W2SLgw1ym2cvN&xxomgSeY=5jSvWiQ6O4d|SOt!f|2qV_S@1G2*M$24O! zt>znV{oXEVbDR_ey|MZU)XZgR+8ylNC^Igw|wZ)G764L%8TmqNq0y z)mkN>QF1CTnoq_Xq@w`lwkOQk+|ro!ivxI0F^73xUyqGr0rNoMscyH}@j+}u&y#2u zo`DaZ7{h;abUT=?3{B`(+!$SaY+O`|@3o=pN4!OtVLSHw+M|>BL$LX-0mo7x1+8|_ z;rO0Y!&{=CUmCYe^%)5-f{FnG5dm^zrGG3A9ku4XP~U$t1wf@=glY4qn28Flx;46c z#HK|R21~X!8$|B5sQ3x12!%N764%v=Kgq!Ekwk!aoL zGhT~DWIZVBfqrG`jhPkAqq>R}G4zi`<3F?2=W$y6{m68AACF26>HPO}-<|shjsgdL zdRvE|QipHZbCCOsf;ltjSa`SHb@2+MwnlWf3Fo+O5(#w_+C4%nzdxf@$8&*=3lU54 zrKJ3FmLkKDb%U~jUB(+M#ojKSNJ*$b4k)10V%(YN&F~(jKH>cI{LGBKF&c6oY?fR zvH{`Df8(SViK7&PI}_&I31Bd{pk&r21hz!e4gm;#!TB%ARW-0qDvyqd)P_D8FM;?+PLEw@G*B_zJsi3biY66JzktS zNLYNfyCg-uvLt<)72=FobT7$7opZ&veiUu`_End(OEf{VJqGKbk^Q2D104nq`WeCM zRf1z~b_U-YJp}EX8{lBvGnKbYRx-uuP0Ry0ELjpmdl9kV;Ls%bh$0t@103^Qwx=Y< z&_<;^>CYoL_=x((c?lf&^1c5_)gxHTnO&4<;Kz;3A@-ds%)Auv(O!$wlf&wI8j6n{ z{vw&6-t@44AU|h-_RtLzAE^eR9Rybdr&;;vwWRO@!ND2=7;V9AyE1A+eOwv2cV=%A zYzXgDGcOW+89Nss8p9+(K**<{fMVK4*}F`Xzr>mxic^}dmxJV3CjCik?g5)f?nHb_>VY-GIMj#!6u`MDD!JLfavcN8S;?EDq+8qQ=TU6`mg&@uC?jGW>k-Z0 z5|zApGSF3g$trvxDtJI2t*epFg7-q}at!;{c<;71+LYt{ zZSmfXDam}CL+$n`>CBAG$LqdTU6j{n!@DCYIWwbZ^63B0DBw#?jhk(bha%|Y;)o4FxysiJBzqU&ASxy)YAZDli zxVFEdC_;ouEe}A~am`oi-Z#6vD7KG`^~T*_sgmy# z^P-4V%n%Wmfu#z*Pt2zMM3uacXO(b6SgPc`m@`GJe^vokhNTMLOMSQDqOkPdccb)- zZL&h+(_(G~g(l82?VDFYN*aC4D%M@lYsT&k|O%kq1;vGq6Fu;PBB=MFcyCdoB zv(Mo*NkGY&r#r3(JF|CTG3c);xjl0#r1|}A#?W2F*S?|SWszPQBgoBoVRhHfLjyA` zqnuLkm)@hL=5MJ{S>E^ZgSu7c%pPv|5PQcO878e8>@G3I6dcng$$|?XlVtl=bOjZT z%bD1trjCN<3+gCXdNaziF&gw;ZVg;ulm~|lYOcglQ`gkQprOg)oNdg3eYi#`4b%zH zTLc3rc3knsi(=kvz)Jvw%1-?t2ShPPe6odb&?vyc=PImgq7zp-zEPb(nS?a5;6=f# zQ^LkAIjjz=sA59ifM3O+kv@G(wC1VwSy0vVcM_mee21rv>jUC_w0;JM7c;*lnsLwI zGgKYkK+71!hN*B(YISaF)S0q6?7uHf0VN9rU|^klGfzQ2&=3m_v7QWPw2`#j0ecMs4L`1@FizkI*}ULb>l-5VwR zcYJ=TfzPOsA@ql1SPpb0PK!;1{n!&KP>Z_^0C>D|^9?m_%3Ov)0IxpVE#_l~cI_t8 z*Wu*}w(=K9nEedB2w2koukziC-hyiWe0k?HU5Q6OAb=_2Q6-2~e~7;)^xN?AQ9f`1 zjy><_N<~{7&C<*}OFxQUaZLJ22mM~LSQAlQNJljc*cEW_<)N!Ql*~5P6UTOSFGh@x zl%~aw2i#%Z*a0)k1TH)nZT-MRKf9z8Q0Sb6hAb!LvGoBw9F=?kl%o=~s>4Vl+TF!s z?$*XkEu#iVfs;S1oPhTo!it^=TuFfETl~#ryJ?f};{)Z{vSq9RQ`r%z_;G0JHysNS zI8_^}o*Fp6*_e&#>}~B03aV&)7RUb0)`jKjGkv~wIKn3O*2HP7YM&YYkj=efx~7yIk!Xfg`ECMspJY0iHZ$xqP&#UT#&lwetjdoSE5VLspiE7-)OCZhn{v6Z%W3kY7%&D&9U9tp`}wApx)=e-bcPdGGzxP0P_9))QJDMX z_JWwO(a<86@0w`Kg#+`la^Zm3N#}H}X&d##u6%r??2CJD65t!M@2v+N5`fek)olq6 zWVy=^p}|k49(`l-Sg)HB%u=v`3%Ur?lhwSk)bdr}3)+QRR$%R*?82AX%iUSL+IHm7 z)mSiMUv7+MeKAN@9{rJR^7O8g}nGLFNS@iBl zChbw^9-5+bp=_(B$V%8XpDzkWu8f`=IC9TiknX0-SdAVS>Fx&QW@eC)#9&{BAtK#n zLaXJS^Ne(ZvVuFC27N8=L8x=^A)WwFOG8dx@MaSJ^u3SoM>Y)NWw)D*Cs|;$e7bm9 zc|HuMEt>{q^^&#}yDtAF`ldq=k|Hdj!|^zHEdB)tNm>J^vE9}CHsrd(14oO?>A@qI zVlcw4QEQhjV_~h#AyVuo+CyK-UwIWdb2?Y!a3)nF!%Tdc#M}pirvzfhAD&g`2^>}+ zI}omlsg+mf6}xydGc**in(yXUO{v(EzRoH3rmyg`^P7=Pq3O3GC%$n%h2P{nhZ{64 zZ$C&vdnP7?Oh2=+L;V9j8XuaAk<)NEWS(x@rhAf_Q1h7S%uK$pQ2UR2 zZZPcaJdULclE$8QkOM#^ z1G{!m7WKUf_PxpnXv5G@+fdlgwp2B{fT4nRYS!H)Ep^ZXsZn$Dr-Q<`yMz&lpmiTh zIjL%M1FNhhZtk26+CAe{G8izpA_jGdkvp;$pckV&z*goSVC2NWeKf#yO|N0U!mxuqD;f-6BbR#@!zGwt?@OnV&I&r* zjX9EH$Cjju-hxPypK#mNz5!q)iB9`tO;CWDsiwL@yY!n?=j(KSVrS0p;DfW1WM>G4 zdM5Sb43(rcqfkVO9slvOaqXb&!_P(zhue25J4M$=$rp_L9y;CQ_U8Ui$Avb3Ixcos zj|(YQZ4ri&zYV=MSAT#N#0~+h!@>G&8(8~p1mWB#9V>_-*f~><3`7$A#5pY7AfDjo zbc0-#?f)*FQwOzLfnnUjbZ)%#Dp8fPEhVK+?_*%*vU*g zCW{zzj^P8Vn3=_76MOTU-~5)hycM6b@i}LDdU|GNrg+=i-|@$P@+W_?@}2K`_q*Ty zU;gw@|LdQXSOv8F)B52v80^mw>pfhxZFWual znroxu=MCdlA>ym%hJ*muD3_q?(h2ckxr?+4za*o+nrL+ z!rK|lc$ib_-O-!FZHB(1rBmu8>carr>XgcN=kT53J}n=7bha0-IHmIOTk#k^l;n_8 zN#wDkFDek`qZOxA7Jid(b8~+4)h8RHeX|!tvrVQP=`c`Ha{5Y)e`0(*jy0 zF!v|g#YW9OKG#xD+qpfuX6w7$Jz7rENNWIReyBCFt^Ori8s1dd>$(AF z1>g`n=gZNNZ+5;XQf8Z78~Q>+)Rm>{^O8A8n_Rk7&z(^Qt~0UF#4)>SkoP-w`sU*O zG)F{}@th@EUO3;@Dd*Q?IF4k<^*2vQW|q&dvW3^71qF7Uk3Wzrw_dDuRGGFNC^#)EM$GW3sOaR! zEZtrY4Db+C(tt-#_@wLv_yuPx`?xd8My`#kiy{3yhUB#R#LQs%OqB3JFB5EqlWcp1 zrOrBmfW^;2x%&X;=;*mdGpxYtg#@$FbH}9{-a1aNXmfwG`6J`_m!eoY6r~CT*8CeG z0h76HQfyBGl4Sk(Vduziqg@Zbp5U%Qs*>Y*9Kj0gCU%~hRn^#ewJEQ8U&%u_uxBVWsaON^rXIg<` z_oFq-abEkO_=$ z@ta2967Y?Ese4a-@xR~HD9X_vMG9d*B&z{6od}bG1?EmMgt+k&)$+JFO`#;j?GC-^b0kZl$syis|s217=9Mp zM=^MI!z!gjd?qL-GCeijCLtn1NOTDiZj%raEAru+C>=5>b@4Xrsv-KC7c%+p9Vj~U zjOk5>?AkShvXY}6Djl505|=Th{>rKx8L6R89*{chvErE&FBoJAcNe9q?!@wT43(FD zSjH0u$H?c?4J%O-HwvYiznvpt4YCEcFZh@0i5I6Mhaz@|ufao^LKtLNbc5O;|oNk|CeEoGix~MQ`jM-TNLWaV-l>jI1|V>r9qQoL)t9R zKQ_|OKM{kv%614_fqi9SOl?l;*M;o#n}o(BI>l>9H74b}wywDNb~NX#UY z$p;LK8-=Bljm>s1Cfvr1tNanW!9}+CZ7k)F`CuvgE%tuB#uS=yFp%)6=-pY$B@1W% zk<~3i`THYl|D;hH?x~q@{Bt%2mKW?GS;8KuGak^o(R z6ZT6s#4BO7gp>G#WuuKZtsYl0=YpS&u0CrL9$iieQ)8T*el=BJ&qYNSr@$arC-JK& z;CTQTfJa`kE_y#7_-OJ>FSi%y{|kh+;@*2uf@KvRC%N0vJ+-~RC4D!am|1f6fT`= z^Bbb1=k27gYw_7HF7mSs3tZS@2QJM(VSK}|4T6(y_LRY!yI>Zs(+ z&&8Mm%-6*GYIx9SFkTy#8tyM!M!Um-Jw3eBQ4}^=Qr%ZnCPkv|c(M2}NQuUYy`^&m zjuq~d`PeAQ*MujM@kT}%jALNDje7u*;16_zGG^O!Qd~C}T<_N)`rb`WWNcWziXb@S z>8tkz;&pK`7^k+Zwbj{1tAsUMLrtc>_wUV^lwb{DNWc)iiJ&f`x?M+wzVWp1i-~(MgorvlAz$;&I=_~Vfz`TUcuvTr6 z@oN)s-TF#ulKiX1WjA!hs|RHrUl7z`(auu2Hf_ro%vmV1OIv(J+Sg<9Q^9!lQ~HFG6ZKsfKCneH*vg@j;APRLi{#YEOY@-=sgQo?Y&ii5tJv04(4m|&F-fCO z4-i%iUqfV!$RY_ALe?q+cjqA_Y=v1;u%UC4^ySIg4G$Hhs>Oul;76lWzn*lk;=YNw z=_rej_sr_QiQS}RbbQPd=@X-ud@VxRV<#*$DTs#i)+Nv0R=|Dy;Idb zVYPFvHLM@_I$2|);{Au?{q^?#sG-Py zZB@+y*`y^-RXkw@w0qAfo#$dyzU;=w533&n`9 zSg0?=dtWHOdA7wb>T=Lm;{66&bh6#W zS4SrM|7uifa2vai#i2Uye{0t=9Lv{tJB^R=`{4F1g#wvd-kl}M*>22&}VwPMAJH{$aq8V1a9Os-?_9FyDF zJLovJ@|}SGkhA@o>}-EGv2K6zv8G^fo*nTG_Iu5stn0@(>K?4gpjmZDFPqwX@w}BH z1m}SUSFevFH72`#KHj#uO%^-V>ma#?5d1?sU$8eZRYD!8@Rr73n?&pG}?+L zdNXfA8^2=Vzk2gY$J-SopDMDi{vd_grVD23^Y8)$VtB{ick4M%q^8){`6A z3`a8+8xpwDfm>v$!CE?uMf*aG)DI;~-O-rR7o(t0DHW_v>HMKndU)uRPOsv16{Q~~ zn}6z1oR;$v?J&RqZcZ_jB4HpC6|R0&!x;3X#$4cHCBH~!<*fPM$~*34kf-FFB0~&B zFKll(2UQpC>(Q#49$3uRTLggLMUYl8r0C4v@eoeN;C|49&jSjcUv7Ig59c@A>{oICS<{y3iXkv-aYv#J2nj_u!xkvq1th2&IM zj*4T{$SDBL)0+?~dv}o?}$Mwl-|2%3tuWG_lK3gVmT;5p^9hoZw4cN> z&mvVx+EgH-=_?55%)b&&NV+)WOni>7m8yih3Bq?>clYlxUMC1h$7pzIe88pT175z+ ztaQV#F?l}PamM0hRY_Pp!V4S{%Q-KeHe_~QQeRkI>2$?*TWMy+sk+A$xJ%&1_= z-gN#ClEq{veGsamq`Q`K*V3~|wD8<)00m&&rp4Qmar#O*I%)B0(u_7Z{MCc9PV5U7 zjoTOd4ej3g)=J`7s*3O`8`)0EH%3EF%9#%`<;{H!5D~c_%Wc#c{3TJ{2cL`}Jh-?; zsO6Jk0KY@fzRc@28J0yu<>4!%FW>k_1RVpV5{CogBnAh6O~!DeH8ZQh5K=td=9bd8 z{bnymd!^hQgK$c~ebE-SHtZ=mj+*)G)@btJZLqgRrOXDqINK+;N6CY?!QK&-T5Yf& zjQ0m`gS|5FF#%54B^qp0srh!qE?JeX~(ib>!`ks+O3(pJOhn9gMC+|LjX2dZ#EhNQSY zI03@#bco0(_0zCdgzOI&uVKeD?%7SPIE6SZ8Ucj>H!asO21pcxkK{LwUmw-|inCLy zoCW#XDqBt|VwLOKNnXJ9*9{yN4MHB6{zKB3 zSMz(4dVy9Nx-?|t+u9f(?yLwCQtSAZV75$9D9HT*#)pUe)Nv%#n%<)7`vY&}MyJ>Q@L)+K;* zX|WR~S(R?fSY~iBt}9Z+82s4!Zo=b+R)NX}{(OwXovz6VihLk*;F6vT=#obj`H}i= z;NwHlk^}tZReYqm4+{meUh+cLJ&4TMEt#=zgPTsJ$d+Md8J0>kHIz&{dfMdpzO-aQ zRutL^**%Sv9G*dkqNyBEDech7`KY>5L`f{cec_k|Mc9q&s6_q(2frF~G>2r`fCQ{? zNd5+8I{CiE5VB^z9?g7ZT-HC?e-JmPU8_u-l4G_Pdy#+uv}vpM4IA9Yj0BpG8s%4% z$vW5@9e8$Q<5j;Jvch8+U;o=)wF7su7Z1KP&0ok#GooxtsRv0ztqtNfU_19hl_xj<_bZN z4{Zu=)5YS5EMp>DZ@Fpx(rD4?7%irWj%iylhnu!Rfb)u|b-9@)<>c7r=*NXQyLVi5 z7FRWDLm!4&9H;bt{I-}L>gky2_x=)^EqZ|T7An(R!r7l4tQG*6{6`&lF=3HBUlKx& z_<_t%=fQ=9;t>4amMxfEepe*^-3Xn)ReJfidG_O~?bOaC1~8+5h_ump1So+_;5aG< zd3M1yQPtT!j#gb(sx}>j) z?t|6=Nj^w5;4=VzLuJlS&sI3&YsAh0BF51467w=9aea)=gA+miGO|cNBljT`U!+}* z4l=i#3RQ$Mg8t3mq0)gS?u)6;s|dI;I(N`4Xmrl2)P(gQ+*qU8?vUQ8Vk8jIY1#Xv ze&P+I*;$`Xc|WLp|Dk`kw`cYqoTI?+2Vn)k*rnlNHR8lhkT#wjbbr*m@NAFB{I2_| z5fpyydhF3_W0LMFW2vJE8Y#VjJsvpAhO?9K`l$UA6HqLqadZ7H+no2ub>j)o_ZflW z*47NN4sME)SK5vM{qMG2FlesA_c71qA*=je+mW*{m3>TSC=UYcdAo*zNoijCQUn_= zk~gqrodU_^(ZIAu%P{a_@L)qiUpKfXP4c@oN!Cw061<=Cgj4Ax|6tqMA>bZCmSTBl z1u_kSt{shH^59+GS!OzXQaWgd)p`9m$f12j48#N9K>JxQFL+H9^b6h&TUY?2XL`c& z+B}6D4QzUUwD2vPGdG$HCNzLzA}63JQwIkQ-V(JujX!Y^Gxe_LaI{hUwnlMcPZa0E zXfLp5<(o2c)0VEwu;#N}U`=u`uN>RRL*0>L2uA`Mbx&}@p*$nCo{UeN%t+VT!H%^2 z4s|wx?XNu=2xATS2upX|*{J=b0aBbui)XPok$uA_;7To<- zpav*vLt4N^#Ho&h7c0nzU!Yewjjv*vaALDk!;DWN%F-0qto=rY$)2|&3{>Yga-m_akF z85Ivk>B7rIV3}MtTU7dw?*<5!smCXBrK^v^G0cl%4fprq{1d?+eki+iZ|P;y`h84@D(6s!*09 z?twF`LGO!E(rq?8O%D)$xH~FUOhU0F5664A+3>JEK=|P!QORvKW}AKfBURh%N!j?n z)TkA<*=G-qQ3I`p>`a-AA981wG?2^@@UhMIdVktZRoU6Owpx%3O%c*0xkHCWuS~b4 zkTwbR5J&^^^gjPfkqIYcOw=y<8Kg8jA=eJd0XQCWtSFa6ID9RT>yiSL4o&qgVnYIr z%(|tDg1rw0vv*m(lwx1g3bZLYb1RS#Fpbt{L{*2Fuxx#BUvq-hH{-&Twtg;+lCDoB zCbkoS;-jCb`V<_Sb$WR;<*0-}C2pGL>^4VHpPe|t;`3jqc91(QTphI<_Qk)OcSzy^ zux|;u1Vw$OR3sH1!L5VCadB6Iuj8U52*0AF{q$cwDC;=-$ds;Y4U)SoLU(Y;B*}s8 zZ1HpibV#M(K;r#mm;5&GewN^%_(MB2lSCLq0r%#nk@~4g#RG!!GUUEA%K7M6P9@39 zG?uz-^?OGB4N)u39yV`TU-2wpbj|y&i zBvBsL{0&jsoB#jVdlNXjiYkA+@9R#|A*dNaMRA6g1SAocL=%aMkatJN=%ABPM>Ec1 zTxN!G78%EJm=W})vvoq24g_fS1_CroAS^;ygk}$`0a1ejMnDbX5*0Km!vFg{=Tx2h z>fZM{Vf_E+|M~xa??L*#cdJfSojP^4I&})A)eSNPY_!SDzwMccz991#C&)V8VH(+r zvn+q&*tDTnbofb9T1iMN=0EIz z2?BuLuP=)QK(Zkm_1hOOh63P)g9P%LGzqzeBp?7s{`564;5#7y2xzIj6Hlp7)yrO9nr_5%4+$FyPk0fH>oY zZ$N!>X>cy2({tno`pD>)5jn3zLkyA+>1mem$Afgd^D$}c5w}oZD;-K>Nw4&Fzo-0q z8rl^k1`DW<043nSx`WAqCWFqk_KI27vHW{z5{(g!W{4lqvl zzA`ILDaP#<@03yVYXUXz(oVD3dk0k51)EEN4`{Iqq#}~qw3t1cE5j(A4)1fIKURk* z&Z7c5a2M+O*(cw$d@m+^1mciH&VFrs7V-gyXQaTiID{BXcv0?x?A0)3JXOz&_v=B2 zV>yH9h~P@r92Ih1ACKL8>~G=xXIpiP%%(wW*R_7y&C?EVyz%SZq? z4F8fb_gD%1zAcj`6(z8sV9ZrdnhqW`_!H6~%=&g?|B<(8a{$v`)?+gE9bVAJ&I6#p z(Qb`>C%Ys0aT4&)l)#IpAe!k?QSAFs$4(QY#gcv2VVfn(oH(Oofcc$QGE zQ8`;$s--I3Z`T)rHD0_B;E(h$CzLO!Ur6?dOpnmJrtvxe zxewqCcuBTLs$hB}z|5Jmc)(LG%C?-3@8m@QyaoV7)kZnHCx~fN&fZ7*R98chNju5n z?#)oeB<$g+g4;_(GB+t){}g)0#^UKUQC#HFd%>gpm=R?;_wjjV5>}0DeZLz_3=6O- zxMsCCt-&?#M$19ALp{QwFUnOyrPuXcWO3f{FyklyxhUtDFdqa5f>yq0>}Bw_D2n_bQsn}DEhQeyz7pT*}VkJx1APj;wRC$Y!&uIFMf+MJTeqy?K zI@+QvC83GL5xzlTZ!UXzHal#~b@BQDJFaBOpGh-9mu$WR$g#W0ZdS7 zp^N>zYzVTV+PqzOq&&)KJV6ftSe2 zuX)|GwcP_b;3{`!yXGHq5Z3(ufKVE+?6Pji$J320pB;jQ0# z-RZ+)4#E0B>!Jz|0yWV`pYYnY6lqh?(=8WdpeH`s?OxWBjOsq&YeJ%hTX{h|?Y%M#GLL=L_%WD#xQgrh5P$8!>{$Lj z71N;`@6{ynTZdrN!Kme`?(E()|E>gA64O-NUbcI1pD)3cb8i1*xC<9XEy?hpkvHWq zO!QZMQa%lfy|P&{G)hLXWR`d(Gc_cJ8Kfy;V+BH9>LtyRp;0o5C9}*c8F*SM-sgUQ zZk7!B(I}S8a<62T3_O+<2wCan3?Z_M*f~e)Dz9WcM#!@8mJ}hYy`&*T_7giN_gv$Z z418-+n*o2m>j%r$dL=`Mn?OtV_#c=+FihUog%|zAeAzxE(#-fvqQwv+s!n4joZ*WX zm@!FI8~b5PFb2$iAj7bnqUv=m#arOA`cTJsF6vPI*+jn@6sXxyLg34&cgxozk>Muz zq$;=z6Pazv;H9IwBnc}CK>QorFxp38%kC1jGsgHLhU=a(Z&Z(#U2l}+1WbZ zE7;B!8CE;+!(Q6JqjX_st6t56an_?a=^Gr1u^gH6^R6m-Fb+zzvP-;@@dWPhG0uDM zq~xVu(pU~R>+(xFI!HEpB?B*8*pa|4^XJBL$no0Y>2fb^cnU{4bW^`X30HZAr_?bl zZ1RK~i>{z_ul#DS)UvyG->-|cCMD>(rc}%M;I^?ZfDeNI?N9zE98khAcq<1_#WNqK zZh}jSEg-B7r+YB49^-VvB=kT7k(_#w`Blt#JKvB)S*v;7|3E zwiLN&M^T4P^GXJu>(_yv?$2#0ipJ78wf7lb$<~TGTL;c9u9ei;dRD2HI$PJ?UaXad zn4D9pA5>R=AaxG-F+LE744X*U~&f4B*6}%&LXl?=@{9YkC?kEfkpZw6RVd7K1~^J=!Dbt@O{hSxl~KJ))gJ^1iQLa%emIsz2I6eB=H7#)d65s8a(5v z_QTm3o}3ZYU@xwMHjL@vgfY=#YK?ITPQ^L-6N?du8KM!G(p>BjE{1u6B=gAIXCAWC zP?2(s=jP>USk$6s?8*Il(UmUUIkGj9tluSG*w*h}rPEx!6D6!*Ca)y z^t&c2dAg-h&<5ovJk{f2^OE+Lm)b8Uz~bpNIb5V!4q|eGqz7||t%@EHsiL{a@wj=y zbRPoGO|h+e9=iXLW~^T2-Lw;YR9*;}6Em!^1oCC}S)alw$craLo6)SqVAR~0LZmiJ z%mGR(uG3xX&DpGo{erWva%vP7nuHoKy^!yu0WvdpK$`L-ERS|I{t(|=m6B5(vgPUH zbM8C9RV`G<&p6`~!&@k^rT~uUA)I)`PEilEgrHqk&BA@1`JLr0-QGK;3)!n_DzL32 z<|B2*ob44Ylbo;xK`8PUBur$zm)@+=zjDT@Dp*28_m=-1ctp?ta_C;Gru2Wl{eKw) zkS!Z}x+q-K-c*YdJ~x`2)O#sgcrH`iY?72I=5%Ht073!wt54!tH5$Muz9N;q~^nAMy^o4n6cR-2d2U(GuTOva zpZ*!IfBBbx#p^Ri9(m-yefG2e{<;6a>+^X1=YJmcUwHlZe}CZ%UpV@hFMjchU;0ur zTbT9Pdr`J1TbwP)mS)TB-JkVm%d-{oJ~lfxTWRlA8Q-h3HQ9i@*Jf+8XJ4`R z4cQIZjoFC2Z^~}YZpm)VZp&`B_Z=DEoAJIgyDPr$&hEkcUVGn{@%`0oi@op9?#~{; z`)k>Qcz<2q-^jk1ZOtCazLkADdsyC&WRGNz;{Ba$8{XfQ_hZ@P*%R6KvhQaMuVUR2|Iaczmcm)4fnmf_uBTaNb%c^_L_SzA?GU0YKdkoVf!akb-X z>*Rex?S$Hic%Ov#VC`gipHe%uc3SQ9+8MPoYeTiOYG>EZsjaV_TRX3Ier>pRLG8lY zMYW4-8)}!-F0F0k2~5?|8Y8t&zpwQ;e6zVN(bF!M6PqL55`=3m84GCKS!+-^6NoO^ z7C8vB38cWZ?w#NUHB3~-}MV&Mkg`Ps4ATBP@@0;kRFV;NHYg*4Q z3?++U7cW;3EsdVwRaa=E!_qBcXj8ZE-M3SU9nmK_q(^j5|2!Qy&Lf$Q!^uI2CXiw2 zC`_H*T2!Too>!r#=b|5Zh9K_A_;OCIeOS_&-moGZg;tEd4nNm$1io_V3C`B;QA%D6Q%$pC|X;VR`;@Its zk{UPcy|`S%n@-cADf%QP9bH+@uAC|@$muW9A_-haDHg+4pq(=cdYCx5CqLnm%lnW1 zV%RtM+NL`v%_rXPU}Vq9faFmpJqW=Dx#^=pJZk5)xZFEyUW=1za06h+yAXClZ>AB$^2-{tU;vsB}L(?rK3C0M|gVPl%wv<$i=?!>?0mShHxQR`Q&1TJeCt`R# z2yrt5#bcDnyW0)xHXoKbDF!$PGrHbQto*KqR@V?KU?z?lTZxEO0m~7fuD%x)(wwA0Vq3f+3yfN+4Z(g5wyuP<97_~!{*|6Z1nMPP zXE{)hc>sFNA1D3jN72Yp%M2h*0Ps!k!q1h{E)xKG^Vm|Ju7|wrT{SUKmPEXS?n;=` z;EuYwx#gA}^&( z{E-*@j`rm@#l8gLHU!2jL3PGTgsm{H2FFGs^Og*5o0tv{hG`ccjPQ%xNrf+)`2{Ka z;1}41WwygRX3Ol??3gXHMa0d{fPjjt$$#n9ZJqrpj!R=nfyQ4GjlU#@$#a?vwtG5L zoW{Gq8*w-9cO{T0Y;r|GTD&VD_Yv051LRfwwgZqc0~IlJOBO~g$YSVF)&K+Fx}gML zPuHG5ZGre>g}5~YA?b=t8Nsm*{i|KFvQUrE&0QT%fXZqY`F8@FdJ0XUyXxt3B&>00 zc5(X;i+xqcg+iupN@&CAgmZs5f7(GpP_=ABzEkK0R6*n%BuiRo46+fzHBP^=!DK;XE&VhVqCN@-2_6Gv^D zC0WtdEHA{6qxMFEd=Ry+{u@9Lg|ztX|qs4ATl4d6*y?KRbF+3>y6aK5RWF6wHB-BgKqPu0ZT%Za;N zp+tq$dw7jQxk-C?7s`s{sbIV}cxhw2n`4`i@!rIK-vKDXcsKLgZS5KFZ6%N>Y|F(N zFQ#0$*FA)GOMnfHw`(x~Ty-1A66!vtPBM<$!OrK-r`!lXT;2Z1_fW zgYy@u{wpk}za&b*gWioDx+0~l(1EZvrRj}c@SLNyV-4r&#f*P$<@GB8UwXUa@<*)kkK!$n`eY6~^+zURZ6n>*7=c zy($X7L)2bts1*xl_&uhkevgl?!J~GadEDWfTCs@@6sG7Z5KF7VMY(Yk*9ab2Sr;fj zWQ$+M10m&~^4k?EP-1LvBl40Td+WA1P}V6K>D!Fwv&ml()@9OUCB^*Aff*0qXn3ud zglD|4jr-DM+#C4aySmdW*lx8H0Ew|Po4OfUb`iC(i(?OsbqdL{P)U&d#$j4;{zW?c zR@#O2--eW)a{xAq3&SX6MwEyT>G~5Dn+s`-T_F7v+qb)MI)6Do*4gDP|HXY#MYAn` z0TPuc+4H}E=r|9}wd?*0hhi(?+!CIz)V*qFu$1cNc|Q1Ii4AN16R(7_=n*f*@jaORAxr<{ci= z4xh{sdG=_@i$Gln2|T&BDg^gg4#RlUNeTlaje>hUr{qM8Q@Gt_{I;&W;2ti4L}6!l z%FQn#kmCh)9GNlljr{dE{L0=&n@LzpX-!<>&1~rs3umo1qih8b!Brd5*)>>iCZsWI zH?Wb_Y19016L)6M-R3u(PIoA5WC0J;UxCX9wAZGKe$R;sqfy-n zQVLycou(3Le%+zi6dheb(Zo_oSZ*y<{Xz?hNMzq3`u>|riH=Fe4@Fpfr1J2;_|Ql7 zr~|d#lA~l)Q9=EDTjBM%S2f}Fc~q_J`uDu3Wls4I>7wyWQ$Dxtn!oi)2WFD$a{xv^ z5HauzV&LC7NcLn~Dr$b@l}${1R(e7LXhGIs?zjT~Lx4V{3kh64ARJIH`f7cc{YuN6mb`?9T9I|2OljQR)VLR&x z@#7-lXusDQgZ$xR=z%Yz6CI8P?(li!K1Sz^eGxwdkp|g&q!MXSP0qz13M}l2X-GYH zCwnUv=kzzy%8^CtIFr5m>p-Mi!n~pj?9h>>NSNvtn}+IE;#H@6b9eQM82u{_08px- zIy%nqnieGVQKf`HZn53nBR9d`c47}{h5EtFy~(q@Nn6+-vCfv(>DgY?*6D`@joT6O zi&@#Ue?kD~6Qh4oAb^Yb!v|5vo4>$e8UgTmB>|v`c^CmEW|$*Ep?>_-#f5@N>PP?= zdn-l&e=e=eD-yuv?A^RT0K*9ZNF*SdG6INAR}sKQZ_Wtd&(IuuTn*LHahcaN0(gHb z0mOD+00Ha(+VaxI#g*QqZCv~*Ix9G}X&}l6L<3MgP_+SQ*rpA%?pySW7GM)Iz%OCn zVvt{UdEa7__shi9d(p2TuFj#-h3p!N)*UUAC07Y0tnfOAwq51KTp1;ME5i&z;w%Dw zcLLZa=thTQ%jHk352fWY;zez_;IeWcHmv1=K)t&;mE|eC*;}$H{9|dURZSS&B!lH;cm#$hhz%xbZ9n(b7Yk4ZOas%PQZr| zup@i$1tME^_LaNIjwal65Y+|o-751QBo9F%639Esyq?BZ{_u8m#YyNJJ`Q7fd|qOC zXrzZfZ|WAOJmntmJO=}p4DJPr@5uTd^45&?G3^L$Dlf9W@35DWcZ82N7GO(JTgd1yCLgas-wEcki zLwXTXoNme$l{VR#!xR2Zl{S=4$oxsigDGv(0e5EY@CuFg=WLhB3c=XRD(&HkO1r}$ zo6^Q~B&`JeD?&ty5hLJQ|Mj=HiD?rS&z_P7$Nqhq1hG{QZgmG{IU z?4wArxkLM3^qAogF);iXVhWWfi!+{A8I}<(vQ~@SDLV7MxMn@*R&Ra8D zwu|74w0sJC$rE%!bt47X?AQ^lv^*Rpu1fzL^yZ9~d9IF7s-Ze9pX@b_mgVf7GvU~7 znU*_FRDQ;~;`#Ce5~g>Ww`)hOG!sGRT4$7M$(@RM-}+)(=}C;CQY|^(J4z4FF4dC5 zE~B)yzElebS-`BHTvF`elmr{+m1=25!;Kveo(-33$>Em#ryUQZUs$T8$JNg5cr^Fo zQY}BOcFMRHcwDVE2ZsvY*o7B->zN!|!{Gwt863-_?BSj_oGrk)0!cRbQl2dUI@=sw zdm;&m<|1h5y>As8lW)N41F>tUG`4?Q1A&(`BQ)FG#z8ps4%5LDSb?vk5mv%B*lq5TPuapUqs@upgTd+d+#~<{1YN~&oQzmoDvYec1w+J2!D;-gCM$ooM0k5N>kfi6J>G#I&JuObF+M-iSn@I3|QSveOY0 z%ZDSjC!BybNn;=@oQ)_g_`YVWWD6dZe8EQxP!E6(B0Qb;9{wML|Hn3Xx)got;mJna zfYy`ue2`0?;rB>!ZcJue!eovuwK;P_eH=Co2lkxQD<9VFIca>oH~)jB_1-0ud+Xzu zOxmM99#J&)J@BgrAm-!xmn=c?p1d1D5PM{(S08^UK=4EFp|y2;=Gzt{panc+@;K-p zpk4qv8Z{=!Mt}q;zZq*X0G!mT6_8+J@_1`x@&we}6BWnxO?nakG*N#~sV|oR(-sQ# z>l6AyEj08YqTy?d7oEX%PgROuy*&=;nwf8Bzo3JmYHjJ!lY7}mwB9voe4b63AlGHQ z5p~2l5ZtaCaylrY$|w$spc_G1cJI>&zl_yHe*;_<6Q|9?#FW zVl7I?=*pOh3BaF&CxJL7jX_TJu~f4VV+!>U2WdI?TAgzsW+uSa$JuAO051fe6D}vH zt3E-*1MdrYz3}!4js5ZYpb402kkk13xPVX2-=4z8&_Qhhv%$I4x!6KHA4EJW3-LJ_ z*N28e-#8i>rVY6lL{sl&+Lm#sKTYNdPQ0TqPe9--`~imPgr9Io*TEvbDgux$a$?p1 zB${u+9Ao^EvP~V4ARXWZ?o|3HKsF?*9#9i{ zjTjJ65;K8eE_kj(ZnUo&*{wtnuDVP0mTSB@V`I$iSVtgQ$Q^3(s%49#B($${Fm?oq z*Xo5cF)`}&P;|nsraub2t-+Hcydq8(!%>VkAN1zqb#~5J+P9Jx8 z-;F+0>r?t59r%Uxg~7*Jj3F-KtphD3sZH;6_&-wmV=lMg!VkE)o4B#;1Pc^5a+So4 zuD94SVx|CP#BrEqMvTdsZ|g#MF}??%jId+S`dd14WQ-!Z?&#=kX)L<#gzE$N+@!H! zG>67!b#9Ce80lAu6*LgG0mEoQd=VQ6`dPJbi3C7mP}|-o{i{AH0~)g`W}+8(zzdwJ z1;iq(_u7C7bbPW3zV3AlsMv!J^qXG5fQsqo1s*CDa4YYzG0-G;`!e4@>Z0-&Zi~~ORQL>~ge37VRry99k14NiYBAF{fSXVnB3qX++eW{@~ z;KiO$PC-Mcg^RNLOpqpoMXH|OuFVr1m~90yZ^j1fWhqLh>tL%AT(kpuY6+w&TLc*d zSQWg`Y^O46EuG7I5O*c125g&`1j>f9LUJHrcx^~|M?%VyG0v`y;=~&%^JA08bV<^j zY9ncA9!Rz)Bn`UlsgDs2fj=r~zZk`ZeJE**ijBMF14;k>DLjtHD4bd5f)|1K$9bzbN_DCOwxd*0iWMYf%0~u@=^zF zorr#kU0;Q}wP=+yuC8U-m!@=0%4&1ETR0uL9=P3$yYR}g8q;V}DFkNPaI&2VCzJeN z6UBiC0a4|qUfhgz%uP*UGOfE;yi^lFU*@@uk;g7smY3>|ozS2hA=}Z8oGwgBx+uYCEc@t};gKEjee8W@4OpW^`%XoFEmYX*> zyaF@zzkL;|t&-a_E|WkKpb5T0x>-r)NUu3|#o#g5m*%$*`a*gsDy~Gui<*PHcrPk0 z<=W4j>ynIXe|s@07qW866{)$UPio-V%LfMi`WX2^A2Z{};JzL2>KFI?Ou znY)m-iDY-MmRURCRz&WLrDoc^(Iv=+9nTB6qnwjW~^dl%qlGCK@TQ$c`sCJ zfB=c{5cT$n)y2!kdHt!c>{Sll!UObr)Gi9!pkcVeoaQ645CrTk zpslIJ5CrCMr0X9n)jc&P1gDw+HKR9}#4vhGTGNoXW$_1ZnjrZh5y{k&fpIF@n=b9a zWy;a0U={?M!^G$0T!(703ET{z?~eCV_|)6ynKgLlU>sp4Fk{o9$OqsMsHPj4SDf33 zR?EgB(0F%PF9^0O8}dco8Kb{9kY`%nOS?mrs^P&HBE0xIHu%gDN&!EAl)AWV-oI>> zFX#-qT$TOc%igG^QFt8y3$_@FTWdT*w;hAA=ypapHo#P9P1iXX(|uV*#5?s>$ZUS2 zqC}`Xpn!46Rsy#IYLl6@sJK{ead?J{X#x*8Cp@@9dt{75$m(SYSO7yWp_45DUIx`u z0((~p>{RSk^@w|YC~Mf3fTb&<%iR(b$vkUjBJ2``G)YH?{SNdhV!y0f5&3P<_MrF2 zl&JkD6SG|UVAn*d@{3MAq#K$EU|J6x*;Y27QiZLROxS7yxH~s>#q8B|$3c_8pa{0&* zybo4c7mSwK&N7Iv;-i2;`69YCel*evr&H3TYEL;Ljb8S}#C98v5GsdEYamdGo4 zSf-Mnmw+Mvc{hlzKq}v4hhZUh8#CYvlmRv53FAU^St|J}!Jn0(5^rn4GsCvJP!7e+ zwjq%v3!_vjSe0=+VQB?$wzN)ROWcSkFRfJ$&`_oJCr2>q+L9D4FiR`2wyp$s@8a6R zb~fWmIuy(FM=; z<}Hd+gIbJ-$r&`AVHxQ`k+$A1(nZvXBSLfQU zu-5AcmVUSLqS;geJH9ym*R$rh&eQ*UWvw@Re{AxTorv4KfY}N>6IRJL)$)AcCD7k@ zZ+oIP=lAi3{r34Tys*uoHmzPmWf!q9CoWZVy?+YcJYEZdD{^1?s(ta2D{`TX*Xxty zH95YZlp{rMRLY@|%f-2ffx)f0OqR0P*O^qanBtYd_SIyH!# zEtv%$%-f)sT0KqXswycIthy*cn{cKPPpSXxfv1RgDGI}-4tr2H7T%2KaM56mY=WN} zYb5GwSg#?HD;kc=z5c0M|4mw7cR*%zZOiCwl-zF9)o!Pz$R<>Yb)9mhgF0D3sZLo} zP@>MI;%mU`7;4^N;_HyE!S`bPGjRLG`5gPpFm~#GyvS={FK9gYZ3ofyI{9%{4M*{q zH*%#U0g)#Xtl|AT(c3yr`$ttxScxJDrblpls&qP}Yd`*kTP-b|ppKh5|42u#J}`%V zl0&x)uG64HDZU~5xTS`9X zvmJ!-%mdn%J+D-Df6^9dCt{sJd6Qcy?jo;tj-qiA%)iZ4Mu8;~3!^`w4~aR*D@Xni zQ(B-H8By5ajf8lagB|Rpo9jgy6){nePs569hLrFF&N?C?+R2Sg4#{xvDqJUB>>#hV z#XT;01~vaCLZjB=BwgLX8y&25P<0*cpmqD>0&emDG^6*!bq zYU^l!0eU3XQ4@9{s=`;Wpgsn|X#=A*8Pa%QeXOu)hSMVqP|I```?}h}Zq~HblLag~ z#a_tmEfVj^ZwuJWjIIMGVFQQ$u5pN`5267N&I35j%6ILqe=#KrMZ$I;l=gw_X@ z=%C}z2|rnf(1Y0%e<>SaAOSv{!)ex!h+^s`b-YHrVi*T{=9h55XhXwM2V?1~i7W6_p+R=eKwpM)f>D zgGFvse>=Ms-3<#8I={_p->K|_+v#KxY8|0H+GRl!$}Vg@%kTASrgF%RpX2C$;z&YqIIt8) zTfDmAC~*Qj;04ZAEnYBbous1yOIO9&C15m-1d2v@mL+bQzvx^CVZ4X@4LZN^9vavZ z4b*m=KK182EL+iuBXKXTD61k7(j$n|uG>282J|iOfmtVeOvvwnZ$_LMlpv3C$wYVdyc2uDZCW;DqFgs33wQ@$7Rcn4zl zB8rY6BQ8)`IqvR2jOc5|>bpXDgD(Q*y^srGYjfJY zL92%cQl*lk&INHTl>QNA2f>+miMqp6x-Ci!&*`?O@Sy}#Q%K>(@b`qo7d2xIBXQP% zY1u)=SnhR9#h|&4IOdXeaVJ^jBxTg|z(B85*F8M}vUM&kfu`pqjBAy*ut{V8sE`G( z1#LNBNOJiTH`QsyPs?k#nkZYO+W~J!JF=B7?G#A3Xn`;1#wU;zJtxO`}*HCZ~2AcALm6cQqJ@EcC~9cXu!%|erE{Hi%6Gg@@75k9)epghEUXsk-?Ow^0BT?D%Ydhv<*<7j>CF;DSfxEouuB&W!d!>@fww}3P zcICtr5oX&*DD<6_th|IJ%@0mKQB7QDiXz*dP~b?H2o2)^QBmvzB&k*CC_-i_-K%6a0Pj)9GyXk*WdoHDi^H1$SzkgGK(_s7lP?-g39a9NtN1 z>$u(8_yma^OcEoJ1(U;0&&sKAo@$U}UrhMb@|ws^`!@z)RRvnJmI?U>Lx9q{R@Wio+uD;Yk7MyqGjmu?T&YIRu3~pRXViZ)tN7)bZ<71J3 zED)j-&5Bu5j!9^6xkJB750?>x={Qoxv%+gx{D^LPOcWWzVx9K=3G5~EZ_t5ks#Kc7V z2-SZd`#4<#?^qVvEYcYS7x(l6rbIJQOhH#+hlsT85jh8U?_XN^mGzmzC?ur0)L(XuwM3?b*9>W9BeCO9op<$;u-Q3v~nX~R} zM_b$I4m)56asNv(J=}fG*%OydU>&-baPlBP*A=72opbXuy`}GJOM0k8ku==hPV+d& z>)EOW-)*CLoLfaV=zETBU^3_psmBYEcAQ#$ivprh_=O4up zI0=G22O6Mh4Mkvc1`Y{Qlqz!XBFw?=8tpzClDGya%d3Y zb4vUCOG|KjL-{&<1E|V%G2cL7JuQ$9;;sN_^^&1ORM;xNFbQq_L#inVo#km#mX+SP z8BeM;+|x0&=bBP2_mbZ;aTk=i+ML~eLpFa{=FE*VQvfvqCv)>jIs%PgMi4W?n8T4m zJy=-y_Yd)6VDltIG>gA)tA-F&*klOkY*7s9xO3v{Z*B@iVTvK2Q!Il26ct0^*rxn} z-A$osCi6JGgM@&7E%;KR>uf)%?8*Inzn$3~eCpk|QQB>Wh!BU^Z zC&>L5+kmE2;|8;Y&C2Gor#-J_l} z9F9>BoP{D_H(yn{E&d!Ytl`_#3S}8dN+Cf!cb6qqQoeC-9Bs`0K<4JP1RGU!{h&wO}AI?Br&gpHD&+x@Az z+~L?LP4Oh@mPdJ|7q?Nu2)0qChY~hbmF3xjy}1nmW`>1-r3777w{=}r{WciAv9fI5 zbF?-^=_y*dwv>9eZmz7&iRh6K?_oh~buTwp))jd@h-%TjMH?h_Mc?Ihzor_VCGDul zU3s6E)n&oV1j(|H9H!z~&4)|t;(iBU6hn1#_bKK9hhr3Dd5Ws>^Pm?uih;wxB^hrE zqmk6u+BRfrXI9YVg3bV4U^MT8ay}g3|GKhp@jj^YX9{+M$(n;1MWY4o6bfvbcl6VQ z=vCQ5NW?>*aaF*+r&nwMIzfoaz*|`hUsdgL(YDAdnuA9C7Zq+7@n0NYOlTKIp8f?U zG-pXj%^?dI(tc`f;`>@pMF)}NI1z`~RB?y}oRqj#p9w0|vKd4z;_Ik@K0RS2ZUEv< zu_+D$!=__ku>-Sx6Y{P6(Qg-bGX5~Z_Y$vU`zG}H5y2|F9Q;x*xg{he1o*4(C@R3I zp|#8_8F*R(KAjG}-%A>JuEKodO3mY;`gMAN>vFGT;2FeHMII}>q=DxW&A-{P_s4oA z1K;9i%UAky+vXv$<{LW3z^w90W)svPvHx!(O4ZGFmndVcR-!!O1rcQgRwT;bjzW~N z(x^lkOYRO)#!90SWh}WnL>ViMN|dqW?hs|H)P^YI^W7oJSScmSON*ScdrrzD)9>J! zQ@Z$qlb6OMW1#Hlie2omhs2R!p|oM7n}f+`**_qvC^WNNDaFhp+X5> z?qyZlQ-__=)oX?aPjT`#1aOf&)>iJ5`b*b1q!HCIUIaHM)NU~FE?P1g69RRUnW&*| z>cgB|OdF_3*Kx7~jp2SAf7uUT&q^ZTbgyiyjqEnxc7IU>ygCs9XLuzeD01E^CVHlq zyiY{{*=>GfM+uTQ*N<*w<{27&~ zGz`=E38DzP)@;&n1&J+hMgX>2_5(S#gyJx(Xfddq&VbgS@&N~8u9;m3DxaQT&*i~H zGq^mV-otd9bSS{mhZm?v4oNY$BO+ZA|H}#9oDG_hKT;B=h){i#&%fo#BDgY{)B`vP-MKxT@BB3A=}zY_yEm^Sqql)yj#I4cl($y;4oS&ZdPa z(aL-KMAr0UompwP5md9tQiOO0OB?=#e58smGPsFR8S+s0qFClI?^_Z_(OQ?2wiSqW zMsm3i#gGD)+fHI!?S+eMcBH~o0-4dBSj6siUVGR1?DbwL;j`+#^O1bTOYSJ0 z^4S~x`L6TX5wBF@vm3b)P#sqQt~s^~8vqD@2GzA;eOm(SGb55xC#0!Jj7aWr(TJ4j zJ>C79(Y25AIZ1&KR~@axa8i;hFb#X@YsO~p)g?y}<}oYGc^iX_3vN|m4YDYGnie~( z+ZC23gsh06*GP;(n%f~EWNi-Lz|<%~?hhttqKRRBm;#1R>I80jlfLyeW4$dsq7jKX z+-^Jnt1tW(FC9l5&4HMARs2Lu$~|5axWA8+QhLD;m%)>s6R(F8ffFjfnFU zfyFexfoIQcFNly@4nn{wXN`Bw1QCJ6qnYCLE(jv*QcFT%|ld`H9!f|-H`7Wqm+W{`(eQ>yF8ul7#5L}pZZHei>G>X z<{qPOM8H};4(8`ah!B6&6nT19qnaCA855?}Ww>1DCfzvGyYV&MXbHZEQP%m8SG-;; zl2t)fD0-9+zz|~ON#8!#o124+|%vm#BdI6YP}?S8xcWU$9qc7+%DiWrkLD47ibjRb)~9$5CN z_cgZ#7GT;9rktlxt{g)(4|RBWB~dk(wyU%^)N4lDe1Lil@86T1VeT~o8wfNmk^`B9 zkb^90I?1CJ7(PQhVH4?zxRQ`=Lcmy2*B=30ps*$Gamu%ZxL0|nqYGN+AQ{~nFK8&C zxy8AvLg3n}(rxf|LUmbH8GT=ZoUZDanbPeqi%LZhEuexuA`x_oic@4d0gJoNGGC3Z zQozStB8EPjAotJ$W;L-bZdVlf^%#`WUPmbqM`|MUJ5VzbfKs5!%1mg^Jmf@bKgcA+#Y&sULPjt zj|ZNs?bs#FSjp^Irc1Q7=G`Xe%ftr=Wn0D88>i{L& zpu~p~l;iD8ul#`GO(irow}T~HK~2N~OBmO$EJ5W2`j$6!jyJXI_SAZ>l-N`0*2TGA za@Xyt^Sn}}J$1f6-*tOx*ejLnsmuNVOK?|DQ&cU*-Te(qw=c7`E3R5sf<>avNbLw71eq?{d^eQqT7!Zc$(;+txzd4{ z9l__*+5{niu1Vh55@(sY#@e|>t==d-1(tSnjkjTeIj@s8M8zaTu%)U2r=hp&9F7h6 zAo_){;w89)=D};ZirKeHACsypsT4ZN!J5@PtrHMm*n?itG~KCfk9FXNr!ZNjnH;F1 zwj$%t=@n%$ecezIA)P5{%lQY+t*8UKt5SQ;uPCbE4SM_h0~@`n38mK*bNf+sd<$mb zfG`V13Q5s^rNgp-?EQiEU?z%Vk{&e4VO0`)S9@g>dy}OyNKt6F!NaI^T9i}_NVBsk z2PH#vK@y_B5Ao2f-9^O5-<8x4_>t(L$1LLAz+#_HZt=@k5Rhc^J`o-}rG#e#CpG;yz|E zad9u{v=N`y3Zr`S=y8W<@}8-hs+^?1VaMQxC<=Vc8g*M9W&I;*t-{U!6K}zUKlL6L z{=XpHj}{m3vtE1GRhHj*r9@>(m9OW#1)OsgSzj_gJUymvo$Y16@2RXknHu^N631477YR8FcPrhDf;O{&=mG& zo>iHq;bQL`3vMZ3_2eU6AKG{F7;U9q<2F_=fQkE;a1iCBC&ru2r)5a|PWwKDK261E zy$e=L%93)@T;=03Yo1mgJmBIXm`Dbm4~>J%4GroV z$cFrt@v|?5K0_H=y;ZrmIbSE$OnFO#V;6Z1qYKnvQf~NRx*=9#H@H_6P>wDIqc$Fi z#7$RWO6?%-*d+53If%G!y}!%7k|kc!O`(dZ(Z#mxmEfWOyLV540{)9!n*N*k3fK1T z!I$KIL6n1}vPWt=iE+?<98G1<6CZM|lwB<~c`{Sj<1#7QdDC!z6f@V$^-*$r6t9oM z%~8BB>aCI98oi$`MO8LWZoMk%?IgMWOu{O;s0T8rtn}bEdN3DnqhgU?duB0oWbb6@ z;4Y~E^Fj?`d23sfWT}@mQkqT1DS7cT3xFp7syHyRqN1u2Y;ZfxE1gHhJyfA<#pZ-^ z%~#c=wr5o9M7P!}-l2i%lCZ4Hyi(sfZG1-th-T{m#fLR3qp~v%M)27o3 z6t!s6gRtuyqFJ;v0g+QSKbepdyyW+FLiB=TGv&h9dX`gwN>x1fpNg;2?>l z`Sn_dv_WS$EK3{21C%l}W+oi_0Z`R5)K}j~c$&DiH(wyvOsl=bAK~o^_&F-UkMee( zrn9`kg>qQ&Me0eIFJc{$BD1v_{)=x-MHhDoMlQ?{cY*V5UI1vEs|Y=+z+zEzAdQke z+nYU01?uZ%JcH>qYv*`DL#`Io{tfc7H8R8jQLFUFA$%VsZK7clZ9d*}9o}t9Rj-2; z6A$DPZGlFq7>JAFK;ZiznLkMABXzjAFf9f(&1ua&dnCsWiyzI;v3-~$WA0gU`XT8o z*hH)HFzj8kp}yAUn4kvaUb%z2hjpa+x3Ji2g_URIpJbG~#9^9A7rZ2xD-rB;1EnU@ zMz3W?{#2ntNF>`GJq##0koI2-=7?`h2(nxU)G}jfe+E4`%U(v;A8;qdFZ9K-aJt9UL5*SR1V_2pvHI@hg-%vY_0N1>%(8 zl4HlW;7Oq*ffjv1{*neENCv&^xf3URPy<~ECy=Mu|llLHdGk$v>ua_*! z$Mx68ELno$D0ehWjd7AjY!a>w1hpec_rRX~0NJx{PepJYiNJ3}esh@t$!Ll22z^A& z=7!9^*v5ylGf|Bz@(VPThlr~QXYjhy1OxZ^2ra?DD^tg+oS4C>JeXSD_`jytJjk|A z)UdwpV9d43=TUn%R~2b;M%QpQS!40U9VJ;+g+B1;0*r5CmiJ5=)A$xC191{KppRN) z0QAIyhQKR%&0oR>zU>{bnWC421wr*YW%bL)X14^hJx1u_(V+GAI&i&wD>5n?}|xex>>Y&AF{No{g|#B+IVJZyoDcF8gFRQ%CMgzPQ>-1BsHw88nxzn$JkD= zbjdAM+2rqWPb(mBD)RM2VX$SLtC% zhHRMJr{zOc>NpEB@8T-M+4Cu>I*NbZGs|7_qvR``3=9UpdB;VfgX!*`kEk9bmiYZ;HPGT-1!9Y(g}icvv%P33H?qNW!`{4+3lVl6nD=<9q&w~GKrqF}6yA^-)ZP!j!56*6abI^@aY1ZB zdC@cC>fplBmEvTu!pFN&&*CWq+k)OoUu_GTu&~mM=Mc<}LVrMuTe^9xq_+t-SNAdb zVaxKVi@=Cvb+Ua7NIrAbqSn^%-GWy(>v!)TuG|V!``hsa{x|*T^BY}_f$nD~030C= z2Zw;@NQD;BaXUS&F10t=GqjlNXK!tlx3)(41P^y?$fvf9e1sz(SvS@Ip}~$QUhO~) z#pIig&iqa6|48=-5kU|>gCzEq36|bVzz}nc3Y%nO+tG#CC_7LbrQkX5UMl_b!Qm#d zfXY6#9>@fz0hTCB8}gmqg4C&kQ~es-XoAqSn>OnH^oIfa!B&bD8*KTN)K^eLg}`D) zoj}|eii~I)NX(#cMEDsUlplOd$NQLuf&*6uwWB-KIKMIVSw#O}%7%W$dtYJyNB!Xh zuWtTdI){QyVb@b^K`)RgK!(rH6VnketAK{?VSL-VTN4o37^dL?(X3$Nz{o!g$Bk3wgMZ zh%08|(o-$)_~?Fry3udj{1VTr48G*U=?`RU%$?UB;AXt&!zpQHi<+^DF>zL*rqaQh zU+$I6n&$=~lK_h$FRGhq#G*op585<6s=?H9^G&xtElH|m#WECtIVh?;hE9X4yxo)4 zy4EmbG-C5Djqo!Z&hazVK%DbU^wBjAtVMhs1(=2Xj;5A$w%n?UVHAjqsQlF+a+oqR5e04=e{#EZ!)T0GELg!jHG>kbw%XvTH@i#Wfamx?*5bq}jE;+F> z7Snx1zfnAKhe9-iIFRXvQ~o|1pNqqIm=l0_-+YHf$yW~Jq0%tMA^ZkprNfZA)~bzS zC&5{R9E5xigP_MLub91U-i+<+kC`B6=V&SCgAW(&hV;Py<6gJ4o%_Sy-;2nR-NLzD zv;`!r3|k5e*Vf=Nxx9|o*HPxgQz0RMjCbQm@R&x9@#Z>m@iu~GWg=J@D`GiF$pv|A zf~xwf+b)Bp%?QE}$=0MMSWd#5mwREOQJi6+>lut0*08$17-7ZJjFC*R$d!}vs0d<1 zd>zOWSQD%QbEe&7?dQUm0_aDZXO@n5XL!Zx}z3oy z_%t39IgK9Mv_nO_O&5NINTd}|q)p{UXrK8m)B*cAMVFqNtd z1`?Za`uG~BgMo_=4??j_Q2*WWGObe0~Y;8 ztSsL3P?Q8@-OQOu<~*7dNLkjJQk!7Su0GcRR)Y9c`y%gt0j2Z<+o#oj@ zvh<+Mik?lP!z`%Y8U9iyBLC|W=7B1T@OCYdV1xRMxd`pO9_?ZJV|#ey+B1a+pyE$! zW0o+iLjStLv11~ckuZt&%)zspqH*S0ycnvr?c+{O?rk0|+ zuJzs+eNgFCIWm+Pn?_S;7X6_Bh^jMHcMiIv>I|I5aVU~>7*L}Hi5$jMd=B;iq+?K> zWe{>74uwk8iK<3%YiSf?ild0CGg`G#MAaD$auBC9R$e&m`B4|*+V6RvgDP{$;!vfmrDrGQ<)8ZOD8w?Tk`TLXFzece6q z)N2Zoaad+>ypfPWUWoFn)y++U4TpVIcc@6fqw!mh&}ixu16!L@{l=8-*M*lx-Ki&z zp;kOAFURGON2dKOu1{uBHdgICJ#m}{>i0Ec4MUA?wax|en^~J@0%)!rQ-Ng+03yjY zia!aTxg)%3uY&6oQ^QjE$X>E-z>hn-fK}TTL`0sb0|RY+6ZQcu(LfePPt_XNVHu<5pfI+gyhY) zVLg#!MQe)Z>g9;O^bshS-5?C^Dfr646*6IdzpVZl-K*tn3Hw7F8mCR2dHH_J;s&Pt z4D#K#|LDm^#6%3r;>QJxj)^}~VCQ3&VRc~@M0X&>WWI5sEJLg|RMBt*u0z|N!roQA zwv<2Adn6+;-RBgpIEJAWxxZCg8g`8+lG9j>bw0d9g`wa|%K@tlK42eVkcE$$`Xfjf zf($AuMR}0;kWNm_j?5FiweM;e5~IX%j;!pO1Th4_Y(xP&q>~-efconpos08^D{;cS zouUPFS9Wd3o1f0`S|y*%*Z!y50AMqJO345%ISKGoomo!&g@2$n^VqIz3fRs-^wDTa zD{iN@u}p@;&`q%LgiK?L`}q;jXM4AmCvw246L!9|89^G)LhB5l>4#8|4=drRB_WC@ zBDk}KyYo4B@mJzQKG1zMXcE`(898HfP1J~zAM)5zi?6_X2rfT(SU?{_7DM;|owsoE zNDmxgamwqTmmZGN!vO<(g$Sp#TUV62g|tzW$&9fE!Z+RtQBdXRy}GiZmWTJFb@}Of z_vLr3SN@i6wcw2OHeQA6_lnTzA*Kl#r3F~T{kH2Jz*EZ6$yTLgzIp$Y|9{0x@6=mV zLYRvPJ(FORZ3V`ZH+vJ6?nVdmoNj@WXM~^{6|e}ZDG6AijGO3phO1O76eTCz8yax4 zc?uak`PRgVziJ~o_i@pQ2qks1X*dz&s|rbt>)AX-u|ZL81GE4t@%4i#=FN0kZY~Xw zDrFd;h+P1u*e$3JGCJA&5f-XLSrFRXr!~q`LWfid;7ANQ+rSe@aJ8f08r&!>h(E}# z1Un(KVMUUexy?HslV$|0&X#R8RS28SizD2r5DSU`RTmSGn@b=W2NG~WT8Vvfy1uJW zNd**5hEQo}|9tyOu2K0H3?_7O=X;c5L&2Tzu}Ux@p~8XnmIa*ZtWVJO)S8H@Hb>tO z7vmrH5)&tCJGn!=p zeD4c<>x&}Vr7}curyJOm)_o2b4N{te91aMHOQOp;-@Gs7pb0;uU~B?8R8I3PoAkpm zIA^QBQWb|{n1~}>ZxyD)Br;f24@lGMqmF)7)d{*HjDxaZ$4yfS7<7*k8*w!IihDa; z_RaB|9u;!KOwd&CZr!`4>-zss|6)z8 zs*#CN1>R&}%4yfToUDe)^=zR_RPP|TG#flt8MHo2B} z@zm?FT$jgY)K6yC254_i?#}DWCL_BmBQ@nQTI6bj4LApXU{YiIEM2&@XC4)6fvD1BBMg-E1>!b68{=+9glo zHLByX`Z!TUnBR7Z_7h=&o7q9|zXkYHj1tuFGu_ve@v3Vm_HDrXwy9U_+QsZV+uR%i z>SLDfcteu5XVl&%Z23Hi>JlmP@S5vejN8bnRvvw1c32l*Gz zIahOVuAp|z7pXw7hnSTk6qMP#GMoDytu{YqJ9-%4SkSpX8ae;WB@jJ#y}?HS#thej zD3FKN-U-%@er?Kxvmb&^ebKhNH{M!uHlF39G+uoSJjd!7lv^YS2;e=6iJA9~Rt*`4 z06=^YB=g?|>RV3Y`~rr*lhuXiHn^GmUl?&dvRd_Yk^?GfU-itDY6?N8r-LEYc+c}r zT1Y5idPpcRiYm>B7YO0J8T=bi&0_22rhq6~0+=KL7bOL~?WsHBeD8(@*B%uH8^CC@ zM87~y74T_5$A1Dt(er9L|8Ul-fUC~08u&1}*K1V-FtLN-&#b)@vjSQHHd`Dw^tbwS z(GdL{rihswh=n}uWMb_aK_+O!{wY(_SYrgaa2OH#L|%jRzYCIG9AZAu zt*2T4uQ?qK?yo4gT6C6gu+&GvlE~wsx9AD9`51=dVyic2It!n3je;XZ42zI-`he0B z2ne=OQCX2pMIRO-z!IL1iGX4+3`4XL~4)^C!KgDO4Xs z&A1*N&(-68%B$PBKVSuA+^IkG$5qAEA6jzh{;Z-b^kLaTUyab_!f06-LjSB2 zLi?(UD~_DMg*#iG*LEX+2^(&$w#||fNOV;_3Df1Tc+E;9UFOv+5!U-s9zDQskT0Ji%+)s`(QPOZG4=u8D>L*%oCO6m9ItpUlDjF&lu1cX&~RjtQ=& zq?JK$_Joh%vE-Tq_}4N!U#yj6c3NzMA=s-JUWLvvuf-keT zK2{j>_@w@o74_@mRUnPe>gWNl7`TMZ&y-~b8lH=>z&PBAe-miel%UPTs3gn}Y8@*< zTlCd*ofrR}()pW#Ct0(W+TkuX{3guTb{r!|ui#jLr0>R@X*l`Kd_E&Q7v{Z@GBV%6 z^7=1hpXBNl%!LS9oLtXDqsPw8G)zhBkI)iXU{bAd4}rgdGbg`D=ar%0`w_`l?)I@f zrek4E1&SffIX=yS-V(R*m^LqJeb(+!rQI|jsRj0gP~LS$BFfflwo{w~vlx(5JlAu3N5 z!KsBvyXpG5C*LV}l1WcY$;a4Dp7zc8G9Z2kI$V}AH z*_=+q0kau}4SkkT>Kf>;mG{vioz=(p0RcUj!11KhAXkFP^;7onRTCNy^Dhqu8k5jX}_4LFwBolC^I8T}M;!+(6X6mS5 zE%iEvbDVI~wHDh^HsNFHFV&Ha?~e1dqEtu2iH5Hz9`SlbLJ=#yRw}$ppTjt2g$*QCn`Pc zlaK{fvf}bR&Rep38o0qtbnPQ0qd-o#t&jJLrmEvm4l!P4R=Vl`ET_KH6%Uy7eY)_% z=D&mxGZ-wq1U;I|lLP<{u=!_FqZ1c62Rg9H!q%>O04&&v={ID#8Vf!fjshvL7@q$Zu;C**YT#Rv!K)L ze|^j@E&SRXzCj5u7fJvJ01qf8bipXvtbfI$$0IPxs5LuiZ|UqppJ5-h3{9vdjz3x< z9Cw|*FUz~ayICm+y79f$wqI6)^AhTYK=wweGXMp4%*(Su2h_D_s_tD}hPdiEkgcV2 zCi}{->3Eeh?tc!IEZ=fqObB*rS>>y|q@{BvS?8OYoo=^Y?Uf8XmQsN=xNKSDCBLdV z03%%U+dB4sz$+PeE^?}MY0AvCUebEc#pcZ)=g;rb<{8f8&yV-#mUmi$c<#KoD8*i$ zplqF2GAV|o29~XPn=?B`_@iBsXHL#BzJ{lfJBQcY8m87Z!X>V=}*S-2GkN}hIDuE6VPh~VaHr065dM=muKN8o=i{|C*+5@nB}kd zIyKFKX(ZJ*^(Y5!%Qn|~KaFjY>*x1(WIV@tC1X6y(j?M5;Q_~c$@`VDyqMrGy-$@P zp~XBkIM#V315Z}&6kMdph-CxMMV^1TBlr_b;AJAQK++X)l9$|~y(j<9&wISsd&vh@ z;FW`3$$C##QN@*UQ+S|E?!`-xN2>t#tTTrnQHTCzws6=PAm=M>kiC?YTE;>#8-W4X}DHY@d>&`9xQTR3<(v$l`= zR8{^%gB8zc#l;y*nh}tBbH`1{pB9Ik{0oO0JrVoxSStLS)aoR%WjxlPsQ*r3{SIoY z@;socUAwEiaPe&7#C8h(lY4_3j{SdCEFd`T=i+op*qz4R*)8cfavfssByZF!UnzG( zF@-o@xFQNU#OsqL^L{A24wT&CNFL5>q7a5R9WTV-y%{lhk~sWrZ$E?)b_lVX(`Zi= zTN0w+RzqW(o=U;G%6H=YKtisIo3WCmlFCs@xQ!k(0K;V%Qv*W(K^{M#H}_rmkpXOT zL=&hrnC}g{0Gq>eJf>oBXyNf84DiaIEq7p5sRM_!c7Tmd1T?z(=`v+wZ>0u;un=(# zb1S=BiIyLG^2I#n!H*CaVIAZ<&Fh@^+Yy&zCXYoLta{He^)bg-Da6Rt>f^W}&I^NP zgV~MK*uQPu`97G;PtN~FhmM?eZ#Ewkyz`-)?v_G=Xa0mT3C>UQA#Yb^`IZ0~dXj|B zFr^9h2-+>5(;R{=A2{c;{MK(5&)dEwY4!}SWZB@~43us|TpEOJmzj){(J-9wMV0m} zulJaS1Wm_tao~%Cl1}L7B}8%xD!&mhJ;W+}#QC01?bQhhjd&%K*prDbbT@TP z-Q*=rVoxIY8}BG81gfaJ2)WrS8F;$G{rN5a+{E~P1iI?hVxM1?^!Zk=WC9t!?{*98 zPA_Z=i&>KLZ5J{fv)oWj*cxn;FYWeCWWo>gf})sdBVFJ9MNK{ zBxy9A+*HH6O8$dyI4sxLX+Dj-$9RCGvlgAblJwf)?hyxUBV&HneEYg0Q#v4-o$q)h zV@fz(*N)`raK}a;&pPgpKiEyF;}62IUR|V;#~q|mHg)d&zI%#PvTxFlC%lr89@TH^ zKKmynzvm^*0U_>_pFC5f>=!4MzVDR`yt+?j)>8M$54@y-CqKxadawvSb?k5VN(Mf- zPo}GAOSpq~=7Fr1!C2$J9vX4+v@`0;Qk-SU8XjF|H?psmRf2$0@D( z=n<2~al5QL?_rz*RX#~OnU9yeaV|0A8J9K|{VP6|li>4~?GHdfIJ)+QXfL1am0A|ytkMEJ#Ys#L{hAWKLyl^6n zr@=lT$G~v>>#zPAXTEUU>*JsJq@MKpw4Cw!%x7@S>)+&z*XKV!+A*(Vvz6JZY<0FK z8_3pX$7RQ7>#`HF6SI@D!R+Mhl$7vS^Rn}^;p~F! z!t5e@Uz}Z>ZQx-h<=so#t)vL0}; zumLpJ63WoKf*x2o**0&hv99t4%!6}LCbsrauv)w`176mW6kW)U3!A3BY`aDE3S&9g z(aI{15@{UmB5&b@QVSPUweV`-C?76&aL}up7#U`DSVIwI$K)f6-!XBiWQ7l$`$%^L z*bwH#EDvE&hqyQjKVhH2dwyD>X=V85v+4Z0jvms}y_T`$^H_^rJ~Gic&hVn96rC## z40X(xa;Dd^2G&cha5^z*WXOwKBj-r*>pKdTv%Hoya<-15te&3jMXiCeq=6eBDyoiY zu+KSO%NiKc2Er*FpNI8c)EYQb8hCs~QK8e%Uh7=1WeuDWMvy9}=Xp_U;B;x=*^UbQ z`CiK!I87UvRZD&0!(P;c@2NV1pB7Q{qGaYS@LJZuDPaV2lA;%SQ5(U@(!j-!78}?j zsdbUpvIYi21BWC#f#pptY$zO=xjpX;I*uQHQE5;Q4`$W=tXV* zR!aj{btI4xuVoFa3Js(La+4Re2ITB?{z%8ou$#S>HGt#PilV(?6KqJ(bc+`^G|7Q( zr@~vkfN8NfQC%d{+q{60X+H~)OvQU_Irt_cQII<-ZPW3HoF|+%)7gmA(q!lZnP$|( z$8hFNA@QM{wZp|`vO6LNTW}tlgG0RFJOqxKje)>U@ydknO?*$xue-d{W`60(>RR4k zx>MvHFKhA=N2%GJCPGiUC0j(W!BodMv_``*^}F3$0@Ft@v8oAG_*`U#cgqU@DN%!C z+16fh-xQ8Uxw>H%Zb7!XGviNtho9id@wxnJp$obuaGD#7?&{4&o@V>E(P_NJYZ*m- z36M-%)59a+YMUdh0J!NAW< zdjEAVY2g2x;CFPCDBti(2A(IkxxG3)0sl=eY2c3{_~%-jwJGkmdL;w@pQz+B`j9`j z#rJtU7rM~6Fb4ly?EiO3OaB2<;^IIUldYDcitrwFc*d4LC&MYL5a02VHrM~&(z9*; z+Vi+AC9{>_f0HQ<$OKHu2_bge(Pt}%AQ6jdOfK@jWMnFhQu0B|ck$P+Y)gI&}B;FHHG&qNhy(V=m2Pz2;5T`vc#@s`i=maXTr0Xo07 zqZYZ|E7|1Wtfxr6qY|cdu9q~~!N`sLnLCSXISn&C&np@DS*YZFKHr}kwiwJYqwD3u z=;eqm0yUISi*_v300(k`1F?a>30342Su%zTy`+s{MoV`t^5@o_=@S~z$@KiBx46N} zS&KX+If{04iB~dQFv`P$Uh2=SaYT9)3tZ*}tku`D)tfqc=`Qz5*6OqtpjY^FYgHpS zgkB35f^Q-g7@uK8>N=W_;L8rnI`|s2#o0^MsH?oBvBLvedUdrww_fc(p>aLCz@Q6n z@ft5@E%Ny&6LGCqGL%ee0eYQ3x5n)ba^PfU4TzAjOP(`X*RyKqnf>;JKMh^*9KbeoqnWN~Xd|3ydew|gZU4fn4J z{+$W3?(mWZo;%k0qaEjBvsW_k+_DzNn>eEG^pfU?lE9YxJNgdp@=6Atfh`38iUj=K zUedr%WbeP#5&S(~$-pzn#V7P$e{SoS@hm2SHx;7Js9AiSOohisJMgs!9H1>HjbJJB zwXb6qTPyn+R5_Ow;E9`&-OZt>VhrMhM36tV4UH?FjXgJWZMY*&{YM+1a5;UW(wyO4#E z=KXe&xVaNVmFNMAC1^X}`sg#FK_=^HQ8R+v8A7-@BURyt`L+_OmU#7>{nSfUbshb$ zc%4W{&D=Wv+MG^rVCPMO9Uk7aB*HwsiFE$R=a1Z{a^d2h;qt2xirpTQ+Y(HYJ2kdy z;B+C6AY~5^gyMb)L1;G+ia@)3>+?Y&#|p>uxvd!m#TTh52v@0<>Kmbh46q z=XyQE&Onh)5{e||UiNBS(896_xQ~&AjHZVT=R4Tty6SM-k-qQ1SP~3d?}e@J2ia~a zmfhfG^@NCicDVy05Uz170OHYfrUC>hQb+@KwL{xh5iecT13B4w)*&`rM(4*aYsBm` zZDO8*S99$*_V1mg3O3O`l#m@yJ0x4vqq zWu6T2qH$coC$S)h9P%vq&|pLz==s+ZDnt>?vYc~j8?N*o(rKkvw;~W*XXM zX978dzIDtDiyJ%ig*+8RMH9B9M+L&hnu1~3E`H@Hsst+|q!?Y`(N&Wd+|iS;R`4{w zz&jHi39}smWG{o38A&l)jrWNFg!%>^2B3`b>nQ-;Pyl*}gg^73ZMNFvl|#=Mw7W`} zt7FivBmr5jBo}}*>T-Xwc1dD7vYqUmew6{st%jW@`<>nu+ZdF=POjmEtI1ol4>ZCA z(wvaNO@*2V4hk^~w5(X=mO>Sgs!HzaBGQy@8103UM|Bq6oXufMl7vjX$D6uD$rJ@I zjElxG*lw`!3@H!khp=Qo1LmfMaDh|Pdh^Bj4k-!bq{Innt3x*@BuZY=E1*}9S8yCW zS|hH>bTS|mZOjK;+^tHgU$vm<+p9SlB5u$D*`O2=0J@m5V0mkI*lLEDl+&28AO@8n zWjC0;INU;KBy*Kh(=-{C+}DT+k0+9A9kfNku?r>xH7f_J`S7x8MLz5*(2%APu^e-psHoDTYNm3`^K6veK!5Kr&G`Pcjzjc?bM=(T?PQ zYxDwOPrQMM8BUq+3i;l80ESXcp8(=@2_y|nggOgDq3v}!p412-yQfSyz6`K%^-oA5 zCK%m(Hb7E6Ql=j^tLz~znOr2qx0o++#^ZO)m;E8uDjryVI7DLDn8X`^Ie{Uh_{cn7 ziR_c1UQENokY|j?W`J?eypw_@NMV`7Wosl(oyL>q>b$n~c!KC){Ah`jGK>8gA%XY~p*A=+Z;K*q3XB|vJl9RmL}H}MZCfJ0f9~{V zuFz94zYyZ#8g@;2R+s(Km-d9Yu$WoVm%?q3IIhT!TuB*>-xQa#-f0@5?HAtRVlCMc zz`AO<84g5ZOj4=29HbdHNIsC#Bi;|^L}FztcE#K_DCgJ>srU;?6v3D5$+Lpjy!*$L z()Ng!sLFQJ{6nj~Mawef(|YB;@=9QG=Tty-G&c%*+ChGKBAH*xz)g=ywonvK@yRu$ zA#F>vAIX5ye7VjZPNq{ogp}IyWC@y-!?bkRcoBSkQ#IzT%tMq(zHuBEsr=AC* zHtGMcelOJZV=4&!h--IHltojPt3p&xrKk6y!?YcCSn0jVO4Ewj)Ib$X2c{rB`diV8 zRV+Ou&6)En1EN8Yp-c8R1WJ6Y>E@UgQgwcIZ7rdSBs>Izhu=7 z=?0+XtDWQ3jPcW?$k3J@a*G?<5H_E$Gvjq^v(mU2HmMM3W-kFt3Ry}kIDoap@4VO1 zzRJChj5(nY-5VQHtO*!I`Y4p&$Y+{r{37p+-S5Z<8je7iF!$7`6De{}xg9ewU0j5L zC;5#97n~mMEZkz!s7ne{URnSRJ|t`BHH)U3tRT@;( zvE~K`ZIQY(DG-*@ORd#oiayr@uhQMT(Se+&xfE##6>bL|OYoUjO^~JIX}Fuspp<4F z$=-E+UXx8}_q)77(_}RRU%(TRe8nFh>E>J=-5-)&#|zx*1=?=!T(>6Qm3avzdym&D zDAkuyseY<5ElAVR6@Fj{l~ioVdJ%$8v(`Z1ubD`U-PjvM z1~`Wzi!<-4?KKg&Po8i$hFt}nxR1LLX@?uVvKx8h3$Bk3L}UPzBS_jvkJA?*VK?@y z;e$r6>_&$1Yd%O|MkCbbrUYrijsy?p$aP2dB|9?BQo6y%tUL06+%~U;9Zym>!@DtX zvmG<{U@D##sk_`;HByIZkkwS!(9M9ICAdKxTB;({v}x z%|8ub%LwM2LIRl<^-0_OG(7MJb47%GI#H&dm)yVP`}O)<`?{eM8RAASP>>-$M!~r} z6K0g{XvU%x+F^^eF6Rj%LP_(ob4ZftbLkyk(TY_pp98bmV9|6V@+;9qH8zUQGM>$u z=f={MO-kj;Qaxe~@p70L5JQQ|>Hb>pi>2As^+8*r9&&jml-ds~#p{?^a+((%mg^w3 z$?y-8dSFFKTFAZCabi~`6H8`dqLj>68lAhc6>FFXLq@~toG5V+U+tw$cp>hytht99 z72uN@z1^HR+Te_+7D9QP0rv=z5H_3Vr)vt(qdgn?ixQdBYRnFbCR0AT)+>LhB8;9^ zCTTWj(;n8!DNmgC$~G?UywGQAPDA1wSOa3okry6_J|#~F1G+&MpixyWUtYkkCmOn~B~19ASqIHl5&sC{MbW znI1W}E$M|W{SNA6PgT?*aR5r->_F{zJh^0IK0ht6gUi7|9va}o^Gi89$XoCfeVSYQ zi&3fT5)_hC%&oyRDWtVoX-*G3Ifzv{rS=e{=u>Jt29}Km`97;oo3w&QEy=9+BCH7w zf0)m0a+eWnfYUQMg3nfLX=ot^ca}*@MAOi#`_cQ1&HR`WsJ@5!%k9^OTL(S6r zXiE+cul63>ft0ox&Nq3sBF0o|#b}i3KhI8J?`#xLlx}orHhz*x=>|L9^+<_E1}aWP z)8^&^)H#?{ST#X8W~*}QfUJ01sC^1C+4qrBn3{^w$}&ScM_zW^dZ+isPL@x^cg;H&}wZb~Ux!YR-3(#k2L*Fofz z!@?<*$qcKi(?F~sQ>w5B%`zilPgcsh`Wt``#&)k+hZ9n z(K8wW)*KE8XxZ!=?Sm-O53JH_UU^JHp3S>rW~;cv0<=^z`siz>Wu;)$D-tl|61?WE za6>o|!FF!4I+-9yHu!3e<)?go*5@n7I!mTNS?8t9&AlJ;Gg9(bM0Td> zpq0qcY6IX>Q@zL11ZJ46XvGSKRjhz=n68;asH2Ewk7y;998$lA6i_)C_|sirIVpmqH4E~@`{+}QKswv<&I?EP{D_^P*SMW@e!{y z`JdUdh`%A5%0c`bEa$RvG>g1Y@_8mda1sF`cA%Xb5+oN1Z=3q55odIywp*EtGS0y+ z`5^)hvS}1HLj-J_L9OY`P?*~c&j*rl~YDOeX~ zt4*2;VdH}{f&hxyCgvAdU8*X;O_T?lBJL2X;Y$-&*4Zk|8qB2-Y(W`<4Yi>x z@8b;BCG%3I+FPzafFHJF&YeCq!<;^1PG1S;;AT}J|B}UmDrrA1TWyDSZvh%Q+J`$; ztK{a;0f0Iupr2r(ePGLBcM1=d7vdLEHbY8}uBLPB++U6!H7e2UAUTP_!Jt!$E@@eb zu{s?{%#~#%M){~LdCEvvwqgyNRXtMMCp%j06&2f+4mh?4#08#BMj^y^%bK))KI5EV zB@|mSEjh7=YU_Hg(1E5I`?D4{J9iAt4{~4ADYXSE)lKo7j_55nflcC`VqBUlE@l)# z=U3ip?sCJZX}Rf4eh8$8Z$vCL#;7c|C(|3-=r18w`Ye^I&h^1ftGQRjlQFR@3rB{v zj^xLvh-tJ&`pcw{iyUMpDTFg%Qb@`oF7ev7%xeFh;sh;7B?BSdc{XGxaUHm|aw?@n zWku49kuNWF2BJ(qg%r7Gv2W?fTwJ%4X52P#Ho~elO zo0t}{OA#X>1PbM|(E(i>ebRHKr?p03YDT!)dut>$`oaW`$BD<0KZ%5pMa*fV<8&x} zxQl{xxlO+|>Hnau9a6yuvWZ>@Vs}AwCIGVu0igZ^N-n2q9C?ZvD_XIJVFqiUoN7rT zkSYhlLpr?6OIa)v7{!&D6A9rFZ-v>I$hbM9EfHI7VdA5>%3FO*&57I~NX8@rgLoWK zZddlSRHAy>?gR`yB~mOep~aSmC@c11IvfaxGsa|R5M{&~*Z`!U$crtEz_%Qm6@D)x za-wyvcUy_xfN*RQ84g^D-!cwljGZ>(#q^lWe;IACQ;{C(zDN1v6Gnc%x1@TRnp;&o z3DS8vhek(KT-45&4?FwnUHODuc5V{&s|&sPg0bNfhXHlFSiqk~4>wZi1kMjL^|4K-fOsx+a9sbj6O5HQ5i+f!(08WNmx+7yEA~{<44AA~f>>MQ3?+C2jlY zP;ZlrR$|+?l-*z{NunQ$)zG0RQ&N+a)VdfNT09D^W0oTxUuvVuhNd@;RGO7Wh6I z!mPe{(5F&}D^fY&uTBWno)jytaS(1^s;*=_7J$#npgPA*+F+ z-nDBT?p6(Yc@d^W2$HNgze5n=cM|%bAUUCTQ15h5_v#e`4BL;@t@RBuOel&5o*;M0 zqP{ez>Du=J*0=9C`t!D~^R_IkkkS6xIsZIl+y@=Z^vuXBUGJ4FtngG+;_Pk6j|;zd zX{4=Jy`fN*;s4qFUGqiUSg3R|Dml=N{@%hEUx*74J`y$?yT;MyMx+E7a`) zV{g@#DXouqzsVa|qy7%eClLIFiRfar4~vUmw@WH!KIaODSpfnVTldc2CY;icY49Ci_ z_hT7u^QyKC$DnGq`K$T8m|h$8ohj2eY|$BR%iQnJ0X8Zi~_+>=Sd(L}MsCOrk%5 z_oIW&uaMC}HQ`f|{V(fpbfnOVY~v^70+|e6%YIp~ zh%Gd))p+Xr?ZXbo7Mj;@aQ^nW-#+41ZJ{L@!w~Lp@v63vG}~l9>6*#mp+Y6vYJ4Fd_V>1sJg@inpY`|F zUmnE!`_K7%%SS|~On<-A-y8gc2SwVVrfTd-*p_idulYrgWkl z&~7PTr0UYHLLITgbnV+$3w1<4%-;P^dBrTf4(DHTwNz>o(?+)Ap}gbo3leeQn}u2) zp|D|pj`V7i;{DR7*axR2FiF@+36v~}-lv9z73pA^+?1$8w2mV|YgC68Bo^8gtysh4 zUeD^!L^-PV;YJM+>O=f82hTyUO??K?sJ9r;z6Cfg5wvxXaozTKO71U79=n( z=aeUgF}0JLSq2@%CIku;PZ`ukc0MDUIwzQbst;vOK14=fBOS6jBjC*m0&+HEd^T3I zfPb-q;h&mJ8;Bze_&3Cbw{b+-du=OLH0MT`B%x~#XrwJYcd$Z+GI>cUjdxh*fXwfe zQ_uNLoiWezl6%yg#sk?7al~JGEKgwcT4yJjGY+a?`MGa@Nd?J;5R4-#Jj#&ek@aD8 z026)Ky%gwV2Wqh;SuEigUC%LM4O=aB?4P8?!KlS}`D(?AMjUuJP~4*MsKckRDsG^0 zL0_|WCL8~pRs?FBM$ZCsr=&HYfiNTbJ`(iMN;|dU$-Nx?@w9=NV(HF6>xSGhN3S$t zNPNpo7LsVWS!Q<^)C6hs#l6(~Wt^C(xsO}pHh3kI8Mw*H(C{)ZX{m#Vu=}_*?sBhW z;01T%cDlmf8~3N_X&<-7UFnqySo}|;zvR)JV)g&m{tq&FO;xs`Fl@RvD5c~+v>+XI zU1g*WL(g&XsW>v^45Ya1w4t}1s&SOJobm(vD2$^gpJKP1zJ&Lj?#Fd8;j);&`J2Dh z`(m)79SFhg2_bkpiZ=JU*wCsn)qouL(#F1o7D!94yeMq^DQt!dKuz!LaP^Lk1hEh zTk}7*@rU^(?k!=(Vdiko8kAH@!0$+A@*6X;(P4+wmrPN4{mnEYac*A*K4t6YP&5=NSj#$x@Y zKrX|k8y(Vjl?(qxfMgyZ(Ig7LD@tp`sy`oWGR453p{UFcrHitDzT2UjSivfStAMVu z#eGz1|CAj(roK=a7P$&qdO2P!(ihXPdGjFQG(3_N)S>KzA* zr)as{e01R30F<5yvcV^mfGpO@m>eO~Y#)P;bS=C5JM1!gNFQ_CJh5yYM-t8n zE8X{uW%RDFZ=+xf`q8m#=N~ugtw2ADz?a zmwnLalN2aofO|clAsdWljpk=0OH(M` z&$AyH#|}PvH69^~R@(R!AMhNruQ9*_^H1~lD+ilD<=@jW5VR!EULmbEdPfEt{UdXD zq)AhsFkP7wd=uks8IP!u{|e>(F~MeNE=c*Bp5d7oMgxfG679*!%(i zB7t`=ZPhp{#eZ|v2#u`V@Q-06&Rm{i!YjGg7EI2FUo5@q6C(LN0%4x+If4r6U^!^x zl+qJ;2}`(iMIP|JbRZ5Ipz&L-i#c_$`6vPL1dQl6I!#v`eColmcxg7eM&1!smIen1 z74aXKtUvK47CX;wq8&Qh91 zS}n!)O|xP>GClJdiCW0xP9WB+N7oD3OF6-2FIY!=Cp-U>d0U<8kzQ+$ z*D}@R#6n9-vc1mtb9Jz)qsBk)+u2^nI?udcVn~#Y#KlPaw$AHV-y{u#CE67HD;^-h<$Ae?0&Hm2Ky|ho`g5qK9~8dJX{got6zl| z8d9RH$I2;wTnGwqPxrTh4WP-XTo*|3~q zWJ8UbleLoT3HFfgl>?C|=CWe5k72rlh+j=$tMHc_Pg?T1H2iXTvyqV!v z*g3h|f=0ECh)FTW8DoIHRyXN%%>#d#8uRA`9EvB22*uhkgkUG32%rASpu$>RlvSWo5gPwzW zOdaR@$!GR9pV=F9@4(L@+f9ll2CnS!@Ri0mOz-AVy=;=MGw`ecNvJhxRQV071@x1! zeQ69ojtqK)m^b8(~1DB7z32MyL-pw=WxD{g05=@kj?T zz6yZU7?K8&91USglqzBx`kLaV0+p=~qcf+t3Mu!H%i(Z8A-Q#wn-k&W3@Jr0g%w{^U+R8~~?L_L@I&8R?8pias2 zLq5|cKe%7PTAtqSJ0dfj;#P&1hr>Z2URjpXk{F(La9wl0-D9?~2okYv z5*2eyN-}@}9(i|Ih;7M2U})huy%XbG-HMe=Aex&Kh|qh^i-^o-*4M|Y8k#9cfg?n{~rZNAX_@DL^-=T+uOWR*^S-ZQqsTkylifE%W^sBbY8KqL|~XwrhifeLnoAHLkalh7rk5!_3UEcv)bSBFCe?*SNdFKcK|3vB$W}=x@Xij?(v$dGDVS%mCRBJry$9 z+FqhJ#!9x=da1AZ_@-O2fbljm4sf$%#m@F}wqjN;%!3dshkL%4H@G@)L!mswqpMj- zm)Cnu+kQYf^tedPDud1H;E$eqvQbR_Niz8||2p?f!9|B6%fSVk4nw@?#DEXn7|?|d z`*laMD&o-E)fq9?u$g3y#2Jy3V|ea!I^Bvj@2`lyN#|Hgq{x$5o+%@4S!Q-iIDPZ_ z=N0PHu}St3HaT5`M87x@P$Y(#9T>wR&EB0FZ!dC48`K=34wYjxQvp!VWFE)Xduban zN^97WNKOmHxFyyqeuWt0y$Uw3amb^Qx67h#(nM3!q%c zuo*W-3A;*~0y+uPnY=e;r_rufiGQc6Rgh#wt(u?$Ak~B_$r9q{q)<<_izp>kM=zFC zMjg#0SNcTloFfZN;xEJx(zhfO<{bed*3h!o*JM&y81{%Qu_<5h>l~gT3^{pNaM3q} zo+s;dlUH-0Md+Lq&m+NRD_L9`kyOiEH&MOpu@csg?{A(e?Dj(|{D9Pw z*lO;24dTRXblBAoCA*sVZHa_sd(9TN*XmZRWV5Z;zT}*Pxtlf>Yo1-GY0klMPf|Ic zojL3p{)OwX39$D45Y&G{bFmb498^siabP-Y305|xWKphR}qSAo2W$fhB3jKo|>&R z%n!ZoXatiuW`uxa;k^fmw6dbLGvM4kDrp=%IFB?LK54R`R3dOj0ffcgFC?&8<<*_Y z){%Gym#5aLe~RWv%@lTptZKL;C`D``a3GinjC8_g-n(kH7q-@fMy>O9%y)<)zpR#8 zjF3f@cuJte5A{#ZHr!W$bfH7~lCm=jG=Vye;wA<$;6)@eY*obA_k3RL;B7v|2+{1A z%kyW!cy4&%O%vpgms|jyTS}v)@piY!!#vZHJj#zi%dHSDwnm+&z}`5 zg)Dc?UeStBx9E;NXs`{IaBh(?vaN37-R55tLn}2kTK$AbPi0$Jkkw5D8E+Rs#ScUyyag+uTYHbh<~w=7 zfO7(!2ynbBMD$U%J{ei1GQRey%Smrx>Lx)E2|=Wh9UZ+_0}(Ido)`Hb3nt9<2LQV} z2cQJZemZ}#D~=7jA|#lTTU>Gnmq<^6BTJ;F7(1r(Uio^mSB~ReQLdKFf{t&@js;W5 zHpy2dck%9XQXye!L>O3FCHUx^+-1*zIimRR64{RUl zI3pOIA05^XMmxBYWp<^E_Cg2zN$sHq`l_CXmCJ#qvd6&Q+}OQ`>m88wkoRxK9$M=h zC}k4~^DUDq0Q}NDLpcmRFqzUzy&dyalAMbBsC8MPmSjlG&hFaQ6@^-o;A|hYt}4_L z!$5XpR~Lh83bll(Wk37ZZnJT1p%xV$-16P^qWkL#wbba}z19tdT550ZUTb5amMA~_ z=;2L;T7Izgt!MR6(0fH4Lt%WNpsiJ7AVy@jG}0J2*i@u!x}fpA$0hsHEj7V!wu1@52(O*nSkJR`%-f zszE86r@`vB4dQm!E+M@S@#Oeb5d`y&YLV==O?8qiDey`yfb$}|8H+78@p>@6NOk3BS zdU@)cw%*LQjz&Jo#_32cgQ7n{*2Bi-oSbga`aIL?feMZ5V{QD*L`lE2Fmxt=5-u2q zE*|bLi>dPUr3iEy6BX)zWQ@>+Kye#Re`TsuCKWl;zBKV_gFlcd_N8n+dyOB zPcii$=Ip?q4e1~U{*1i( zrUz=r!7~mTVUt#R$ncOyc_t?mhV&@gR(b1T)acegIYZ1xYlug6^zVZF9O(rf6CF>* zyG&j&)g<2}>KKbQ*E%opB`F?+)mddf~yS8;tp_YoRXLYT0Z=se- zq(A>!zK7|!K2)eB0%-RAuH*Vhp_Yo8ySvuaecZ_OGV8ecdhlA zLM;_Ff6x^-9xl{!QS&=AuXVO=)+Y1+qJhoByEV-Mc54SQ?eRoRle{})YG2#-aT*OM zQe=Dl>-v9=Pp_1(B0jOuj&J`^EKImbu@-&|Km@9T{P5^d1AjGR6HL}-+orz~SHGr7 z91DjLt6Q;;W?+TGR}budjTo;5YXezB4Uk|B$4i)Ld7FkjH4{0~gf}RkNGaI9S!h^n zq@k*y1r2b+jVf(X_pPFQ`C8({DU>8OG4rr9ND?7|u*^*`j{Myl5-J zOrYe)a}tPSW{2^XX1t{pYKNoEoo$U9`y&MWR70U!Q&L6yf&vhPMBFS(xP||x(0RLk zS(R;#-&7E#wU}hYvZ;lnY zkXn;Jvab^zpg3>lgAG}Z{&Di(8MpT&xGgR@;YN{YF!otq(TX+fcs!nwz*aJ1=3E{I zez|M5EZhzrTHd7&EWtsCh9trX_7^=K7?XpsQp2ba9ij$~0AWuJ^#wiKZKHw+?I+vu z+)t594nX5Err1RUXu`M8^4@<=PqXRdlfA1eQ#{8j*^p_Fjl+~7;{cGuFUNadg>?>U zRz(>Y$5+wRFUK_03v?frBs@_hdZ-UHbKjY@NjZT|aOep~5|V2_WWtDe)!bT=+V_dD z!uf-Vts%AV=B$O}w#`a&T&`*pi4?!KSN&(!f)+77GrO&&i4+ho&3w3+vk6rwd`4EZ zVr%Bi#AEHv*|b!^oXQGvEw_bp4%%UJvE zAaps~_5Oi8UG<3*jAm^i+dR_Nb9rB^bG$DX>E>7G4b6iZHEntZ$f?IM=m<#y1HtO? zCIoc*sl0%Z7s>Zth?%oXJJ?UM+AFu zpYGp3?B>4-yIGG?aA^kJz+mO#N7LCn=Q+SEaBoyp8vXKHmASxm9KjB)N7nT3>8yZ$@IEnaL!4{enClwJL%OFf@tjO zYkraH@+$$8sLqrXz}F@ECrTc{L5q^d@reOrZ7YuCyOntrWX>b7a6$^hfUc zJrJc$^abFd30dJX8zm9?d`$g}ggUSHz8Nt==5Ndih6xWf znIq}Y0@@HHQi1GMY;9+W=&sx+Dmc$0F<7OD zeR6Hm3uTffvxAuArh%8RKgE~xxh|MKoohXrx;-9@5JL`1hHoMH}gb|J*(@r&N zinnr)d~Y}$g#juuKLnE*9~_{cBvul^AG~wvghH&ZBCd0ncY9Z^(iuG=*AQzn`nMRd#$7s`om2?lcYT2)=}1-_W< zV?!1b?-$t~x6Y`>=1Y37cfgiZ4}Nvoh+PrW>L4{@A#Bv%#GGTGzS!4{aL4JyN?Cm| zmW#=Z8(ISA#9AzohsV?xV{(R~)+=vlDMO?fPYcupf0*nZmUR7CZ1b>=ah?Oa;CRwA zh6j8wCTs98mz%Y&z`>R$N%|rODY{KjY0?+@EAS$csm8A+7eX zSG!Q-oQnw$P)(IO5bDwrZDIugGHpGJpDSKQiMhvo3ITYXY~_(EWWM3`BfId zHMz`JP?wvsC~^R|`hjVEpsYN}qAD0utq=he8GKH@;e)d|5eryMF;!M)x7V==ar@Wx zRY;v0x>ld8*+0m6bt-Lx*-6AET=rC5DZ?arfwh5KhJ^h67Y741c5`-!k#!+*&C0@$)a-FqY&D&#Al3nV#$fp~mEjLZ_1vRbK1A28Tx%8A7*gSRjo zuUtRH$lxN^_Nj_?3V0nXc&o0U5Yem*nWRZ|qp21=;`(?(VOO+b1*5R6fO0qt8L6QS zd@XpXt|_ZTFV!7Y9%O{;7Ei-(_`bHgIi6Eemt-W!WSpcl@9p_sXIDj}PTIS8xvg83 z1g~UCvQ}$aCc#Lh3`bn+^g+VTFLdA!sDVLHrn6CM57(=+6ByR)a9c5~6+VmyvX2C( zbY45{HrDQ8?Fj8n=A1gOD)vx8Le3TPJ0ugk!bXkiwvzDv^_lfOxz-C>G?CgVhhR$? zioWWWm6(%l=9i&D3aDmFaL=B_T&d)di>pVz{ny-eq_e4L3VvO-< zf3Ti1IQ~pJv%z6mXAmU_!DaeeVfz!u(lp0ccrBA#oa#KvyBo`QXrMv+`U|W$&9New zD`QwK6CjJF>45Oj+Z~63OU9wYjKS})=hr2Bo-8{$u)~s2z?4|QCR=&@nCy8+85M^0 zKs1j&v9@hS@^oy*sQodVg@<4vYbjoc(U{^lgZ-JNNFNP`M{@c_57Fa6b@tVR^IK^T z^x6cFX7`j3V?TR>BeH-gV+p2Q?0{@1@bUvStTwn4M(U6;1QH{5cx*<3I9t;suaJE( zvm&aK(^ECUHKDbR&0Xis8DfIdci0e{ysWJee4T4TVsS1EWf&aWd_vI4D)$P!Fm|B3 zcIVxEbXejHlEuHJ0QeyGVSeSdsz{8i2RQ?evM>Jw=!~FJnIb?gh@%llj5{2%<&vg_ zeIL1`-{+Mq*)xeA7hyPAtUJA=<&q}Z+D9(wtzIdYs@nT}m%q1M(j;8_$R&NZS29we z$9k(iktZ;RCH=prP|FF-4hAihvlI{xgdJBT?n%N+5#oq0cAx|^2_+EjuTH;$*afaM`Ph-nI7n&ckxd7Ji%78uG-ap&;=&z@Xr(2s*80eqDM$sT zPs=IlsV=02li54h8#FFW(@&YhrkW?;SH+Bm90y9AF_U%7Bkh_UW=}ik{8yS779*YU z-ys?sgb08oL0DAPBglgkGE+|)TudL<`^-5pTm3lrZ2?BG?c~X#eb=s>~SGCGQ#QKnXNZ+#h^k@$Zus^M~@ZXus zvc5GCkuf4F1Ar-i8}j$G+IZIb_P;S*3$1l(q*Vq)UuT#~vT3^%4#r;a9_9#v^#fX3 zy~%5BN0WVu3(>;@*ghTgF>$-n&k83Xw9mqTpgkTNsR=M#wF|gXej&n&%-l?#3X4KE z;~k-)nU85z(B9GyAC`o6qA^?O41LB`!@?glYaQWolfBULA%EpIblM7lI%T{_x=$mw z-vlFfJEZF97Vm*E{AUNVjM5$@Q>p&(Ua$6m>L1~LrPOqAhnF)xH86aFCqZb=fy6oisZg1%VRZSR5Py9KhHg0(FGAuddnGBm$l8f_Dl4a5<`k=$I zDbnLh2<6zD8g>YLl1sS`7;GK`uxe-mto$OSa_L7Lt}T)aeyPpnelKg17)>NHAi+ae zLNxKM*w6H+P>{2s_bSHuT$D-faUf=No&31NUa51Xr}l)NFtty3(Jw2-As6j{HBx8=Y0`-+#FTiuB2jR+xocXn2XTTNqpp<{SA5=dqi$z8s_B27gkSI^^Lvb(IW6guih9%F)8ehL=zq3S%MgeL5gh{q<7+J$sQ=O`h;zC zm_|Ee?vLQy%lhJT$%csG zA(%Xb6bP!dnzAbEK_DQHQ|B<*0a&DL$X;x|SEvNEggY{@ zP|*zd1kS4s6~&1nd@>N&0&GC~1X)p02FI^MLqCyC3W~;eLdf+i1R!{Z%G1SS!e3ldLXZLyKD{P~icK<;m2MN}MuqQ) zV)%s^^JI?*q&)6AAEwYSNt z(jI2k8m1=&{l+LI(Zqd1u~~Z494~_gvSZe5-NiVOjJTxrDWU-T3p+wYw28vlM$m{@ zb95CaJ0OneaRtN)lZY)dnVU32QlOMA-#j!THlH>ml^%+Dr+wG#FOp8lx?%okQlf<> zNe9BL2jZZjL+jMsK8H3%!UEw{Clni`MiR$!l)4B|6#Src7(&qr4etxRIS!@h52D*Q z>=pSLw^l=bN&+_`CN3(+norT4h3ED|Lwoboeax{OL?Tdk&~cnl3bqXysTLHdi?M40 z5S3W#Uu682-&4)sLib=4k_IDU(j|$RtCNXkLTic8;^HY{P6q1mOCqKo<_s5_q5}_g z3-+rMZk8aw4cYeGWC1LdH%4&j{Kmx)D$IsV@oEhHTYkpVhIE=S`NI3!+cZ+l$(}?r z)O{RdIN7vB)qzWfE*&Ia6Zd)FXkHe)yTD9g79#hUIRJgt4cOqs(wL9YRkQp&0LWlwSU5)o}=2FpM>4| z8xZyPog}=IQ2y`r9K!zVEBKg###C{ZE3Q*+9`PaPRU&pJYT`AH>FXfsZ%Rb{S8}Fz zx#??hvI%i5dZ=NdK5IZkjuI_>_au;kII8InUZKb+=6z=VBL63mqboM4QBHj2`CpTW zXX2|0!ziZWEAt<~L)yew{=(H{f>oeBq|6HhU;~Yy4SIk>_Jvg4Bey`lBsn6O@xj=6 z1w>;EMl=#KA^2jEEb{UOvBOYGlm;f5Bn?r1XyjRFL|mFN2_rS(DReX@FU!jZGU#Wc zECpAUpN+*ODY_<|#f_V?f!5gx_6L9LzDAMfKoigoJk(u|&Jit>NhUxQJzuGauVk$Y zQ7b3gCEZw9>_(w|_GTfIzM**lEES+_kPEE`6e}szvgsiXOO%>+S?HH&dI&k{6t5^i zmWZ=Q;4#J7zAi&9nfcB`W<)0?+v0SKU$suK&UyoFL)4Wq5B%!JJP^lBi{o)ck%bcI zvHu=pmXS=_gpZ*W$hpONpbV!IKw0(q=!i&kigr;jefnrO)ufm?FW&>%Y`n!~o=tnM zxwd<-u)~C#7S@@oML8xX2Ls6|1ZO~5VVq2mzzf{?9F{A}zx)mwp(5>6;jH-5+R%k4f2|^4SZZ?cRru_$aMbRjlj)9V=-Y^%(5LHSTG%x|fLEaDAKtGTL ziCk417#czE>0+N~1L+8LuqE0+$8iVUfbDR2K{ptZ-(r=}iHL#=CxUA%QVb_T2{4&v zaUw_{!4%qwxAMFJauD*6jo=|n_`$OPPQ{SzD>=HQyxu40984ralfD!I=TT}$lRky& zJ`w7AMW_Qj7B0GjtL){*)q5NrO;mfvpyc;pqD#`{D5<42@AaA{so|oUQ_(0)`0U_> z432DGve&@F3jne93*q=JlwX1=cq8Cb}36t25ox6}Itvh!}Z-zzA$V7_2 zpTa0lSqVNzkDnU&0R@jJ_5{4-@}Y|sH+EEO$J_5c3UsFgIn+aAKqnG}L3U)-E>oGF z^R#T!5GHZ&AL2`l!st^{K4!r>UgL0)z4R;AHN4D+F z++Lsyx#7#mC?u0I5P_renNWW~4`$dv{Y!cRe#K@JK}H&(;aD9_J2xU|tfMJ5BI6W^ zIq0Aif2lrGs}%FW0-*!X#A6&HrlX{>89t?2I;hymC{ue-+kCSsr*^1G8>c}MKDdC< zEDSXSl}VeWi8rdgPp8=dX;xhvrxGN;w1DJAIz>@goH-!*W5NcWQeR}J;ldFNAEczC zm&YZS<-I)8gV3wImxU9?|42%-_MWSCuiF_G5Q=*}f z|Lc@Uw?#^chW>v_L?Pz?ZAz3P`F{*0`s6ivO7tudK3!D3sug=#phRa^a{+L*N%3yj zhwJt22>}t;YrTOC7RA{|!xa(?-I*;|6j!ujeX}Um;7TG6)q8&>u{$Ti^d}#Q<`OqI zu>c}wCwRF%lhPX9qz~;HtFtv3C^b8~l0?W4|2HMtESa$AXgCT;nAOTw1Y_irF*qm( zu2dOS?FPw7VTMC6T&p$28yso3lc*e#B`C+3w-k;}&K#+WNsdR=&mPR)(Wtew9}FvI zholI(HvmzKhpeNJ8+F3wBlB*W(m+%`p&EqB3s||tB)5CIrY3CZ};ZZnQ~R;!+(WC{};`HM12f`Bp_q5 zqoW**lQOxqu0T#w&J?_2_)yg@v@Y59J=Y-5LX8Wgt|%ZaMDX> zknBkgBpHGuF4X!bv=R*m9Imqrp9M^lBcAqkZBym)L)T)aw^CqJS!(a)qO`>;6+uMW-)0q2G&7S z{6Lrk(-i4=AE^#*8)C>bP6m5qL3v`0gVk&olC(8y2v=CDv8U!XX^HzJ_KieE?MS-z z*|u-)tvE7g!7Nj@t8gJ}=+)Uh^D4+CLv1vmSv>uvDOHum7giTR3j?_s#UuK2QlIA@ zB%$MTnssTkfx_N`He=&jgG3OZZuKTD&Tz+1PchH-ei$)@cRy_=W1~H^nvC>8E0ulC zg9VZ~YIzkH2ysAZ<}-Xn@8l455hb*dURYPyB|63k9aJl1l@u&uuaY3&1Q&Ww*6WNY zA#8|O%;s!6aaO0aS%R>@*L&Za=h=rQd*Nb-Z#zTHm7~kj z7#5OPN6*LX+6(f-)x0DQ=~{?TG1JC{3j4U9KzC5|uC8`kf(Px-7i~;D$mi zi3!Xvw`~UR-^N@Wb^rHs(ECU{Li}32lr)r)3w;Kn0f9w7)%c;4z6E>nva2Y#AiV20 z7(m;BbZiTo)JTVf;b=%M z3r)dFe^vq7p+H-OH+MSQd*n*ZC5T6yaF~9Q?yM^XkbSK}&IF9KW%8xD&?~%HNRvhw z17E<-H3|AL=r~P27}YR|1!VyM;-;quyof{dE8}gHl`?=(gB)$eF|Fg3KudP*2Jee) z2r(pEvnoc6fj0L{f~H3%ex=v46?g`mtLf??;8|NH&;+Vs(l3RD7kYZKDBFdb!(hR# z2=yZ&rsxD;5it_+w|JVTqohDUGZA8cBL~^%DBtP*HQJ}n=fiRe0J@Q|7N03${e`&8 z>m1$%N=AeTl|_uk^%sIv*rqo+B)bqON;`p)7wT*()KMZb^OHQm8cA0AUAbE77@9jFwmmGOu^+*)khK^3P%<$qTCsvn z3@gm9OtsNr8gc~}0YGL9qVF1}#gp|LFF{T{=Z%hJJdMm5fQL&_ciQ{1Qgt(q6O>o! zEKWc~JcM;eQBnFBaRleC1x9$jL$uNHhDVBB*b%ym3clCdW{<3fkB-ggH2#m+St z4@Ja|3imLP87J&OXIc$3Py}c$cSW;ks&Z{`_-#l$E(obo6y&*pp2W#gX|^j)Ug3=t zaB_xZZ(s3_AbZ1+?2+gpIS;Rn7S}GUQwMSApF86t$&&1NEVG^&^1Me5vBQ2(r)o_r z!n3I&ip;MZ$~;PNaDuaDb)~6gw0T-6>Pst!>MPJe=dl5QVK>jw8YQc#s&TG2Y`Ce% zBI$m@4d7wGhH+Ld5Sj-1shFpSepIxmCy^eNE-R0kBDMnM;yFGDvkX1K){DFchOHVR zFs^tyOgts+cAblcv)W*@hCfw1rG1pyYJYtqh=6-%RPd2AUtk@0Ed_F3Rxarm4o3O~ zIscX93zDbyH~C?zT8W^Q1PqOke&HDU8RB!|i6`MBxoYR@=LIi7jFEgiX>G)9+{XTf zcA>G=+7VXU$SrT>X-;dRTI>jH+X7Kq;gt+UP)TW09U*>lU(t_v!Y`Nkz&RM~n*WD~ z&PwF6iTUI~U!GtwgwSL=Eopq)TT&ke(r9h12LRMFc_u(!%eWeOJzBTe9dV|m6QML| zm1^06R6}5d(*PeL?28Apy-X`^*qJLXcC7kR^f$wXUKZ|G4S2s8<7p#RyMF%DU<0Au z<0p3onU87bRB&*PkL%pSls~9Ug5f_Q&^B5@DCtO?4_n=wZJ?WrO7fetS@}Uqyx2lI zr^{1!KH4>U@dEFOsmpYXtY=kB6%u%YAi=c)b4EtMEp~Dc<`!f8umdc@AD98ANb9m) zpDf%Ie7VCnlB0=Pr?Nw2{lqcl1z7yusLRnzc@91`J<*7Z#%boELm|m6m5`G#VWc7p z+t;CBW5h-3VX95VU`;wqhLGM#=x<`uENT)J+T%GjkS)+b zW@kPYze?1XMI!u_t1mZu8)h6Mkb-ecQg$AL)>Oh<3{w}rCo<6%hh-adOgAV5kt!}C zy6r~XP#etD;sT_ufxxdbs?}^uc#Wxl2}Z*h7s}7{;e9!N&qK!?pYQR;?idi&neS~= zx%AyIH{LTi_Y5KzgBiE6bYMhq3u`*AxU~f3$!3B*k-S1#ni_t?R**~?xviUs*B|lD z{X``nNil-%EwQx_CIl*%RJ_kC-l?NvAU?7N3zP1$Cv$!2zBjv@m+trWZEqqV2J?X~ zOnJ{^PRkHC{jpp%)eUK^ZQs)PsZ}&pYa|WkvK%gIlppZA{RXDB~8Dhu{2_swSt?B zb($6=EBbk_Zkw1VMqIAo7Sz}LR}KP4J-r+n7P(%qvg~pwwzUwDul{zaLFTI^MZq^r zxZ9&madD`@i9RA$_X<4=85Yw|()TSE6Wa=@e~V)a+klv>Ib3`*?)Ek>R(w~ZN~uNZTs1IGzpM21EmjNk3z!Q&3jMhoT2jNurHIbPx~xj!5?kt_w;c^|0Y$>_Eu zb_*L7y)76`zUScg+tBiZLLD`R>^Vp^NddDzn0!UTJW$V$_%iF-gH zZ1RJ^77;cnXhO`i41&4u2ZpXzRxuotu!&Pa{BrB(~*QkwMS z+OpcUE@uH7y@H+v%*W&ipNVGyqGTYLB^t~{Ns;!6*$3Q|CN~s%OB$; zV47@^x&g9pW2aF!U>by@v4p~!I%)&kym@2vnmR9N0}}8EQ4<4c(+6^U0T`OfX&-T@ zc2;r}4=PLbk^8-@NdWV7I!D-d0PiMQJ>Zp%SBc1~>kPRX5U@SR0LS;|C%uj(NTm?T zmQu6Or@Z72mD_ktyF=RH??0yRnaN2gOCsic+Dm>~OUluIJSKY3-#?)5#UUxa|BS!4 z1gZ2i%D&w72=yVaWYQ`fk3>5Rgsgau@j0(#=NKY@DvAa569TH>nA{s9;w6;cWP?BA zfQ-~=R$qoe7OfXwE-Ov>1y}Jf^SyD53Ag|Nx4%OA#1lN0h%)eZ`ILupA}B^bij`zj zn#&1-*^&D#1AoK2WLtw-p18UbdF-EGIWiH6cY8%Ml^rbD&#I~X`?!}i>_14cpCX;f zyL|;mfbV%Nn_CE!62Vs}`h$|9*c2x3F6Z3vM6S=}T~J5x7!@8RfB#Q8ukp-i3FZJX zjRAuS!tP#g@DgQzw57(lY;nsc2Zs4jty6H|DD?X04#WmX3%iCER!~pHZTwY#37*{! z2o0uL)M#w^AI;#qGim+qsQ?F^W+JJwk{lE;*iR%s~$aP^dnw*)j*K zawa1*dv_V<9^_UwRh@T%QU4$O#}R}{LZBWwuyH_R?otR^e9$;>rEtE%msaK>wy$x( zQar6T4uEA(;wI?9F~2gZa}`G6q0bzQ+<9|y?I?~vKSKVR8kx)b^F{`x%kbbhU}NJT z+-8C;El=oT@hgGP))tL`j?u1!A!5!dBL`I*2a0`e1hYVU#X+>^{^CfPWj+Hp(R*!k zIpoFLjP7tG`8|z;geuVtO=5qL1;q0=sl28kq?;?fBo4wnadg5!Fo%(Bsno7!E7jed zuixMZ`k{&#&**3>RzKS3z<_862BD@5PF21E@1^k$cKMAC%ytED-QAeMwE1nwX24Ti z=K{9E>6!^Qk5NNNZ}GX=0lnX?2r>dwbx6dZv;^}cQAEU_yv%ZoLow-xC$rfnz80+G zGzmOcCdwz|Rz6=QGrk|zI2uEHpl-Qn*|YLnx(`2KzV-lR63nPrc4o$EWj zl1XiD-uT5_u#E$LMQo!s3C3|s1)s8*NBYr+gyT#%j`ObYfhhvRP_9vSc=braI7rUI z;gw=}!Vp%pVinsWtitU;PC$W=F?S3p4-W?dZUfz|TqQgL{nv*%97xl_ul5!<>0aWH zWG|6#VB^Tq55I#;#0>>6d`Xqa{RTtA=4@QOSYW}UOtgrPCiIc89`Xu2+D(U1-Oih{ zJ?=dkBB&*|qlS|6=tgK1>qu94*d>=X^I%N_-oub5Ajj3$wB(wiFh0*7j42sVuM?jbmz6!5i`8_85j*09f3PRMJIZa;n1CL(Z?=_Ik zeg&tnbDCs{xce7h2OD#eZF8m1iftS4BIYkTKm?SnaEU@TJM@l8A_r8?fjXsv4%sO> zM@eQ|k3!eTc{=4V%v0Xf8Uw;?8LvTiy8(GTBg!9RN0GvauYeLRF{$@D$3hpT7H#>MljgH=+#J}IvwM?3u6R{oy&V}zUqfQl$2Z5q1*rlZK2IWGJYPlH)=9|3bZ0Ev0=W|Dd1zn z$N?c9d}Uhh zkhDoWqXyF(tsYh3ZFQO%_j0<4@5|H4k)rGy5aor$66M9}_coo&exLH!e_@&;A%_R1B z$DKenLI3SM{_z=)7lD8Jn3QN(+!RHhYNr#|6xzd<ji&qGc)qEKX^Aoa8zZ-&$Vvcr$-ye}5#rPd$VVu2 z_ApVVDIgC}!Ov}XLZe=a;>}&^=f>@~yJ%yIRct|7g$02ai$S9#^5X}zSiS`465dqw z`SecPjBNL* zV;$@L*h++K{HifOf4GnU$ZN=Zs*%mmxMbTZ{ z;n16%LE{jYI6T-99&DnI9Owxjsoo+>H@~t~uf3z$<`g@slZDwT4o3uuxsz%mxMO#u zA6cbPR6W-)y?C>|Dl#?2(HDl5&+elCE>E7qHjTRZl|DgwoQT6qj0aN!6OU5OFR}@E zxDonRGZ$`yUy5>x*uCaF6g#nmKOBqaOmC;8U-U)J5T}_3&W&D?#70r-c$AX&oG`qX zk?_TFQk@;+%;60rUvdJzJ4QMN|6B47;1`yW)5@<;g<{|86JZovB|RD60!5V2?K-A1 zNRX$Z3p`&GOv?A0FT`_AmNwsaijfP5M(F77fD)K-mO&EgPI4AQ36 zlKISc?B!^GURlTZ!mbPljI?94RVzMYnuT#v*!eJVKr9dXF0EAwT~Z{GA=tQ~SYeF9 zW2HGFQ8wF;VGij8h=9%Q1j`dPgIKqdj>$w}ge}fa3q{4g(5wLcpB${UG=nk8%Gd2Us8VnSWAe{<(uqaYo~*W!fZv7guk)!?;3WBz2wV ze$0#hT#JesK?7~E7$jFfYiK=9Nl}JV%p55ba`hQ56SRGFPH2V5ZacVV;U1yab5rlv zw?13^ZM4a|^RRd4GVP9-40e^73~B}Etesxl7!+huBwky}Ij)6x0`>3vEPH*(U{iWe z-7Z`CfJV>iTAn05^`3pnVVh~t?F-PbF0ta3LJuFgY8z{55dO+E$7nbF5hhqbUK?TdQjLTA2&k3p> z9Lu*k7SSOg?U51Es+(QECvQ|v1CPJ&@NH@Ii16I2^9y=(vY<~CYPqd<*Q92g%tEXP` z+Sk4Q4R8GI1#f!uTi*IRzx%d@zxVrpz|SAz^GARDCyV~{&;I-`{_?N>dhy@6#{c@q|GjkCneS*-mseL*S5{Y5S6A0m*H)*iXI0Ox zo>N^{J-2#Z+rRUx=T~Q{7udfGs~1);s;;kIT)m`vX>~*Ovg+m4E2>vkuc}^My{0-_ zy|(c0oz-_%ud7~Py`g$z6}WE#{HAJAfPXv@;5V^+b5l)RpG|yDUB6beVlCT?tR;kM zv>5)mrnIzV$`gZ9cFX@@X7=4xY}AcaP#|eG_X}w9B<(^FKaDaA}yTT^}PB$UdvjzIJB@SZQ;FM z)>>FEEqw52`7s=vjNx{#Wi4D3T9{2+xWmg@3l~ZYmpzbgK~01{^7nZyYvF>>f*ntK z**m?gwJ;+sT-CLOtzOGoI6t&tUKQTLU0&8&I8R!*t*eN4x7V^3&J8V0r?d2aFKaEV zlNP$q(g(bjwQx>oVN2S=JzmyYI9poiK1(0;TGql@p@ml3!o6PBT9}p=?*C+drPUSC z=XRUdvKH2c7B*l{w;5YMf6un@ruq)zC6-@foV8`uS@&&XH2=G8hO|D~j+H7IwQW~q1ER~>{k{&x{XQ9SyZ zmp1X}Kch7Cj-p#foFbb&%0ChZ|F@hcU(|0nNRu!A2Jf>6yT+n@(<>P*TFgpe^^)DV z+e?2^C-|>f`rOCz1XZ0ByV z_q>w9|6_w+V7TA+q6Ytu2>)|kdDRcRlEME&RPs50!r$BC{Q-eK-Zie{hhE8SO~2oc z%KzpCY$X>GYIjuL>y@mlZ)2rEU=mdRv6nVf{#};tj>7aZ~R3-t5Uls`Q}Z7O(EnwSIAl`^47M|q|d)_@HTG?IB(epy5@RczC2nh ztkxUD{>o-L9xtu+T6W*_>(P{LKpYdAB6WtbDI|B(N2k?}&(Fv?IWS5wUdJ9^@U3nX zW1UyBX?`s#I{>o41;j8)9E1l<+4E~hCKO>p(^Sz{D$*T$egI(q9 z8LwpEUnSsAsU4qyzrah{mV70_KiYLmUg(t!{OPFVqr1r88xp<(?}OqV7LMf9>#X-W zw&5~%K|~k^JzFNEYu3uVnj54(ziZ-jXmw+uCeP@zAOBMx?NhCFW1$k`gxOrW(3`xZVf{G4 zU)n!9T&^7X*@wlcu|9YEa7)ICEe=Wbi{sb-{Y{0WWH@%i)CI z-FS45S2FnG78|Y1AN2Re$~4koTk42*uNO3nPbdhUQjBl@P+9R91=en1S7t`bI+T9| zjF?3omnW2&CG_xI4X$z|E}JcwFC>~Gb?@-LOb>|Fh8f?po!`%s@kYXU@Apc^t|hpF ztPPx0I$=E~*INv8MGS0H$wbL~s`mf0gSDVGI$K0=#wp1}!*PF*z`#&B(k0T*$U_z< z-TtJ*zf(;^aK}J3wIg{;;xk2eU$jWhgp>d4$lVV?X^wG*J;6X0VPLs&PHUXBRAaFg zia7(@;f))=B)DvA*NOhLS27HxX9#<>C>h&>UeY!gyp*9FbY)#P~(~BB>ii+9tt_F?IdnJQUhZ9bJD~10BFKY1NQ<7W$FZz2Eo8g+0d;f^PH(CP+ z9yC;-HDB_AMr%UBQd;w9Y4H*f8G9;su-A#~aFgsZ8pJFy`$vR=A8Q!_`WNq@5g=OP zv&+xRYwt%Ti1kgcWCTb(Y(Crdu7z(EYPpBa@3dWy1ecI{rBbQFOFnT6Sl-$byc}%$ zYbfMyb1@i1ZaSK-cZmf-BL}06=xqX56Am3G?_;&0f_L;2p;?RIXhR=HMry=X9dt^P z7~qi*r&_ZIkB}y^#h#1jJ;G^{QLSl3@HQ&CIcYFZ1*gU(t{Br@svsgCYLDd}6EJ2r zCq$CQf!qyoa`M60AqLr4n=xBUrTxjh|gCtn1!-DNi7L1g;8LrRbg0%;3tZ2mwwgjx8s~COR zd2hF5FX8j~mD|M=C4`=^a2F@%v%LXzawY*6UKyR7dD$Zz`*QguX&`58pWKo}_?@j> z7dd>ha*-HI1F&dizxb1oq&4f2y9x*v!Av^F`IRleO;D5Ur0BVg@ULvw15aSV#SdG& zL0Cyr{Y%Jda8?~ETKd^C$&DR0btz#Eum5f(i0|Ts3-6#T_2RtNCv8S;dQOt=o&%KK z*G&Pn$^H8Wbe8)^s{DwD8}A*VL)#o)J0kHO7Ep#{bI&>K@FOUocR=kY6V#@z&>Xf5 zmk5k0pmwZasLcu}M*^k67{_B>k5pu6biuK+S`m`r7<(CTY!u0A8Uf3Mtk7W-sXEM= zDLtrN=g_QQ&@UKN1Wz$JYD2a+K~?%7A-ShyPUeo_Z@MMdvRZtPC^!`jQepW5Z{?kO z9;SCH0Uek?g7D~K1PR)@nfi`hA0i-1?fI0zi#0* z+2{l#uMl^aRkE*JrsucdDPyWM>dqi0<|DC%4?{Af z)=VWDZBOcyRE%U4w%@G7w+!Lj$|Y$UMK%Q8f#XHs`q7eetpl+%jT$*Hp(;KCd%3KW zwAb?*ZlhF4XuudW=vQq4$~8P=_-RelHZ*q7xV)YTl7$runYSHQ+poTKAPq`Qy@|mit$PF=i z;~@pK^|(%ojxNEA7E{OhVSw?T7IK&i3&4qp{eTk;k45lbuS8jM8FCTyjoK(P*HuQD zS($H4rpQ*cR)wu>JP0d_xBv6 z5rFGWor$)P9TU+W&Y5xvc_8MPWj7DQ6mC9 zRY;AV6p+Rff1%bvtHFBBsmO;p1Te`R2;_8_RU?p8K%0#y$&Dq;u%Z+na2!Fkk0XuEYP{@ zMmjI@x@3`giUbG5xXRP1J$pqfR;sgLwX+T=yZzQ8|lx_SJYlIAN#vgI`d9O#mtEqo@N2nI=W+5xIkhO}6}F z9J_rV7t@esk)fa=5w(21D97sXb78VsFZQ08C7vf!!O|b$4>3fC*&ZzDmI#qmekp{g z748Yx;C(P8$LSTdKRIgQlAS?%j7!@RvUYh{Mf&8LO!Lyp(OB|*Pr{WB$0mWwY%xXV zRbI|Is!Fe-pVVNlIak!yBsC?IUP5dv^nJDf3o0+SgbaFq<>*nlPkbKW$ZZx1XDB;k zCGuM`Hwav>lvUN=au~x-DEy!qu=J|f7H!wobBkmmUAPoS51`6-EfB}IXT%%XH-!|4 zH~CO(hidW}+m$9>E;a<`vf3jEQ!ZG%+o9O83`P9xx~_pFH+v;J7YG5xdgP=XM*mYL zwYgA{Cs5v-Tl~G95>S`+_qY0cJ0*}qr0=c_B!xC6Ju&f0TfCBKlA>-umASsdLD*dL zpeXFuFtKv>=LC{0e0;xl!krG@b^>jad4fY&3*sY*d*UOU`&p@>&1&Q@GXJ zvIXav)IJvcF0W(@P9=wpFKH)qD&qUx-(9FkqiFVtt|2(@FH{mHg4Px!bo2vW(oX#- zP-oY6J@vcCE7@RpRK>weCE!2kB@H}J9kM&Vt|+GbY%r;GuU9hgJfI?YEDcwi zB+OZ}iXkO5vqEd~IlXuqqNZg0K}u-(NLn%G6%%vtbMZM+KaIu+K9cxHlKzC4XT9kT zanHEnE?jQ+vX{N=G<;q@*~~2R`8BV3&1>;#i+_IG+upViA4EZi@Mo-{>MTfaQ4BSn zNkrPeMDb?#TtTslF;P~L>>N1OP$RTtu>T9$YoINNn6THdz5s#oNCOy=mLn%5&d7Qi5gpm zTno5C1&S>qtR+ST^F}x3zGxfyW6m$fl1NqSyi2w~e{2OISsiC_v|`VtSp7#Lr1pq) zi(c}~_n81(UjRsVd$yb%Mll3lL$~(4wxJ*%riAA}- zr7P8~6NlQ1#9Bnd_NDX>q369M03F2)ye&NaJ$u?S(u;ZN73&*KY6}I?U>$-(i|PHE zqg;}^^k)@X0ag<3+fcHv(NBo-`*#VEb`1mqA>z8<^`11rw>01%IY&&rC`uWn2z681w}5fdV`cIto>~TaBnnlTzfJ0Nj_n$J!M*L z$kx7UYj3LSn>L5FhwO{Bhs?_XanU7%*z2(vOx#UmkwurMuam{a-r0t!J-K$gt&8o; z7FS%>SHcxu%k^y3xW4lHH3qULnn|QNUQsh8W2a(PZ_0$e3ay)E8O;D}2{!Zq8`yaZ z6EAGN4;N+&P<`^@Yu1x#rck*L@|CvtKEVZkMfn0ePyl&)ZUNdhAM^LMEx?@4o3B?l zpV??X#SUcJ8zOk~b9^w#O-KUG45K>BlDtcN6hu`Mot40< z(~8R}5BiY)r6QU+edzPr^XJ*TTyxb<-H~H}wtwu55UnC5Uq&1`xhBFa^3@R&V_q|0 z89?u)0R%-(Hf^eflW@+}PTioJvuQpE7LpnMz<|Jgkc5dpg5S+7e_-VDW|RK_$1GaE zLc>wfW~(u+8(WNT*kXLc7UK`L7=N%u`_Z9ApXD$3EdO{wW?6jty}%=d0!U3~2oxMXKg2pN!hxvshXWsy1ktNURlWpq7zc}Q)Tl}ZGh82Co zE1Ad~+~Nz4wBPiipHhc`7og|aMIX{@(NrS_ZSLS9R0D_jo1KH`GvwLjWKm5=vV$9qRA+W4v)mqeSP-zrN4Q%TabmC2yVvJ`UfH)MQdv+FEXI)THUJTACETsZmKW>gcW{g||dW zM^J_rR!ft@TceWChC$`A!nehH$6A^Nk3kA=k4lcUibIgBf81DmcQoQyOM{$~Jt?G{ za<+&T;>VM9B^!r%F=lp8wC}hpyWP^nZ*Np`a8WYhu>8DMUi{LI_qIk&+3|j{q+R#z zjY`RmR}#N>L`h$K+3}Vpe)mQtpG~sknR6$A_0A~i%@11e-WBg#EqM3E`?>{hY2vpp zDm5&4AL7jn$9wZH>|)RFbm~Sivx?b8X;{D^uJc<96BJS3UFX$-PyZC|2D`UoRPhBc zGSjzoV63h{GS56CYxM@FM`YgU;vvE(pxX1XU9UmI(25m`tXMAZ9O}3dO1B##!>YsI z)TLU`|IqOd@dN&-Y9*o}dDj@sCsaANY=c0+#Q6&+qZUFQs{Xg^Dy}hIU&Upk2C)i% zAndNhUPiM8UA(oQXZ{Z+p|hG$n?kXaIa%XjSHom!55QJTet17wSBiBoaF# z5CSkWNxgblUty5wR0s8Sf?vO=uc&dQ)S>p!fa=R1t{)sYuNeHE7<>b3zRP&q<;M(# z>CPX|KVa3Gj8#)DL2JhhvfWeQmjsG|tC%U>QPH7lX)!hUYZ8CsYwQ% zAX_W!OJe{#?$4mXVN|B5DU_txV2->gSsI9!bpIiLD=JK)BJYfu5dMLOBhBj-t6`9$ zfod8>8Tx9sfwHtpffF;KqOgi*!|+-zabD};VXC+?&@;5tpvM~@aEVS1{#H00c>*GM z#&&vcIqXEC7>!%DSy+{Kj&}7**=N~>U&*7^7#{Bquhg2|;to5ICQUH9b24eqN=@!Y z)ArkU33-=DjH;JslWyzh1>A2YRuYI(pWMVph*RgZV28>)3A>02J2=^}JEjO5+6#pM zQwxm$r6bEG5~_DZO|;(^Jc+2OiQe)nffmcLRVS{jUa@N%q}*l1oJp9CR?uEH&JxJ~ zOWX1kxAc^7hvx-IswP)60t@#NDH3aHHSXl$y*%&`FGmZ@6y8HRrEq^*B_Jn~&d>sb zoMGU+y(vpk1So=C_i(WybdhY#pvqup%LG5ZhAAT$(A@#+fr}> zr#`J^_J*L} z`u%>|Mvc4vw)XQ(-eWtGlg`^uRA8pI6_IBh{Ky+$rLP$@LcD@moD|rnY#FoD_h!Gg|ej;_tm}0Dim#@Bt>#uc2oK zp@TR>Fd=A$V1jYBI3^fpl`p|~Z?b{#LO(+K!Svv;KX65X@6rZnTZLrHMX*I>--FU@ z?dJ&}*D4&Sufo9^nm;~l74CaFtFW(a6><=wC1u1kzsSQu2?Nc6MmijeAUw}j(kMXlBK4*x&n>{5&kxFrkGM@hGaj zME+)({2Oc`%YEcXB#AxyBZ4HnN;&jQ0LmT4w!a}7b{WWGsOHTDb_#}$qn!W{>h`YG zka>EFil7d62J`4S%S-#krq&KFtCeRg@OD(cy*&DM@TLp?YGT|iF@+yb2{uq{>vG<0 zQQ)W*kPsC>xFZU93zC?kz@3c(5%+T^&nzY8GCDuF7oOU$n)au=19Zd^@!Wautl~Ag zFJL;8Awt*wVhhP!99sxTikKBTp{c9sCRkvIqbVP`B^ZxnRG^yX0iEeiRGuZ)-6}%n zst1oUk>UBgH-+di=V$=*%j?^Q(bx3zSRJFe-8mY0xTzy(pC=qgu;?hz5Ux-bl8VMF z7P;~LhC1843%tEi)>GRLzHMFZOXG{By`eUaj#yJu>{ zoc!f3fhGcy_)db3Hc5J!SWbE=uI@6;5NeaQ1NSFSG1j)jZ80Hth1w~`92s{<6!@8K z2kqnl$(>Qaw}UjWC~$Wa@C{Y$xVJ6EG-lGw#o1OD!$IJNkKiA2cO}B?V||*iuqF#8&nK>_|Rm z$Rql(PzwBk>W#~V`E0$kZ-$ZCDgYg4u)!fUI**xcvKsSE7^^9zmcg!x&~v z*Y0UVNGU>jDQypJha|d61opi#*W|=@24~;IFDt;jfH;u^7~0`@tR|D;;aKuufh7`Q z+OT94kWF&TbXUi=P9X_(xxBtb1ki>=u(O~0a{6gmk9?I)rm5_%hADJL%UF$2K6ix( zrTjhsG}g9GC>z?rHMQQ1O0s52C1Ec!DmeoxT~bL;K!JlGsL91GFeuNQ+#)SE1>m1Q zDLc%1p`{-q5Qd&+2Hi~9Zj3?x!U&t?s^|&X5fwEirbZEx_fTPkNmiM4rd7kcg%<1@ zMEM4gZjSz)6w%6sq0YGQLTWA25ajE&sN>YSAfKW94l*luC6lL-qCh93l*=0sdgZO71_cgm^svksxIA20R|UA_zHqG98uS(>2A z#vh=Z@n$9V4uyxKPmXAjO(qfa@o-Ylct+Fr+#CbmMi-}*JLGD+_VH}IhB#66znqhY z0B0Vyn-rNYfN2i)euXcQNB9aH;{{=r%0QPZJAZP^71g9S`V(t(HR?efs1AIsrBTmo z(B3Eod^P$CoF&p%2|YYo>{|)Pkkvh~90yD1;iW;97BwJ4u1yZRv!7w_bj0kziH@*m zkbI0p9D(AW#0B;Ps*zqY7rl)V`V`h8Q*WvvPOtMueM|It^$N*cbdzGA_*tM|vqh(%iw`v4W;qqbxSj7kGC zO}*09Wl#4-CGRQr>tiQ?vprMEUAps2|HIyf2%Kdji}uHEc17M@QD^jOr%BJh;6+%; zA)EX_vB?=DwlI@LC@Sv@+%Fdz)tvK?bSN4mk1L2t0^xS zg-+<3EEwRPenyM8jEEL6kSI$Q)K!_iNqKUTNCC1eC6OO{}huZ+7(3T zt&MpP=$)K5wQre{%6apJl+OQT^B${~<8l-r=|G-@H5jert)xA0*DQe%?`lAXK{^8% z@gg)S*{XyLUr1R6vv8q{vHy@os;h{Jy?#%ZpIm^4B>LLIy*EO`;sF(Xz~04ZnOh36 z4hgw36FtrymAQ$^dp@!M5M+$Kwm%?ycd08sLMPO4&H`RAm3aYxvM@}k5y+slR!^P* zfu!p96vsi>&ridE14=axz*_8wfzmcctGG?_%2o5j7bb7ucnX>|VF!8w9un4&Q7C6n zsW5RvEIF@2o9MH%|8U|+|7c1Lby6W3lw%N?t0eMJdj|*R8xGiTX2x&ZYZ%#-G|PM^?S5`pR^F%h_1P$!91S zWohZ)SNj&=x^aXEmz3~j%Pq1hDdDG_iVqJN{+jYyoc=<{A=A^V^;xs#%rnnA>+G}7 zK4&JKF&sQy$a97Gq@#s6RfrERR>kLa_-w%as=tpLR^RYn@cG|(#_*5+cN{Uqx|w9N z@LjS#r2}N$g;C&^oi97kB}SJ?1Ge{bv+lq^ zX@;NBV8Xw!n1J4P6<6^U9whlcNY(ISO7|Bpe38$1!i>*WA)A4nL84)YC(P`6&{a4> zGAX~rA6h|NL!b)Su1?J>nqCp)fq;*3lJ{|@$l1nVEVSD}Gz8LX!sf$EqPhQ8)-rXX zEjv`^hp{LQ{UP@g`N4ir;2y#^HhF(g^;v(<$Y2J~{gRk1g(sbR(ESX8{JWpWvG8}3 zZm+f@D{LOk^56ykLbeGqctZfyQ_sBt#gnlN269h52NukHSAPKJ@z~KHDJhYIuZzdO zuPLBgcQ!`*Z>qI##<AN21rU$-Mk(@A z4Ap@+5;vYLB^(i>q>1h$Jncd~BY?@3h)yzLgl@+=68K;osSe!rtO7*0#uVOf(IBrA zh-S=gsBz8Jf*xk=yT*>lGEEVIMp~AAU9O9kRinj-G+K<3qfNcT@W@~xn=r5o2!|)c zxn36r!8dNJ1#ILaN}P!;uL3fBR4X(i@!#|l&(=^^t`hnc zeus;lmxV9}>`NrI9EUX|O?6n6FMA4ddo6*1UwtfDUVO*EX zB#4~uF094-SFM1w0YzbY693sLRz7~Eg&5Z9!8>D;PGnz2O{?EWk}Zzmx)IewMLb1R z;p!>xmVZw`w^LLnO(2=Pth-@^xXWXi6d@N3bNbj63opTMp8n&Z**6gMmv&xFI%kzg3Q>P}u*po?nvE@G*J#9BD@FnWWNmPOi zp)^Q+F&ZanqC$02=Odd0wK8LpEl`>;7bsC76wP!Nv^CRWH0QfZK`TzdV%QJGu3*i(bzf0jbiOVR)@$2cjHU=o_xAasG@gzr9`AUoHgv$ggzd0BB*TMZp!GQgJXGht%a&y4sbt zwNVenkpxO38Y&$mPL18?^?D|0&hT#ma?T7p4+vt1^$&4Qvb+&J_S*FraDe(U6q4ay zv8)2*2Ovyy5_<(&yhKC2g>SOqb2PZUqhS_%u;s>2%*b*yE4jznLuMo~yaILzt^bD2 z)0TILCk~JYf;1EJH6dM7#G!TiHn|r#V??fto#_BN5~$gRkO&7ZNQ5K#$PgHUbS)4_ zG8LAANB~Iq)i;g^CXNgc=&v>KfM+7bI0Q=IgZ9jxu1Tl>EtL52Vu>YB`4VI59KOSy z=MY+u0wByv$@d6A=4{I_BTX@FgL?+wD6Zivpi|$p05h^E^u{SH0>0Y;@8n9CQ3!QGAE&L0-w7`9C-r#mC#bxRq#42dh-$osGpC~v_ zBN~vD>M*k$a?!|Ft`H!odZXZ+}KKQGkvK#>6LNR!0$(QLi`>X7~s^!dI$>+5CO;|ch{-ld~qB<$PomjE(cbvsI2ATyTEV%kF z_|dgjXN$*x%Pe8*kZLzHs)f_+pLjy+c+d59=hHu!pq|_5lbG*A6<7Fg9z8edcVE)=9frvzI6Yv6i z7|FxAb)3(+PUJHwAaYIg@Ij+~<|F`m03fM}z9=myY3BC2}5BiBju?8oP2rh}<2l#v7B`_T}3BPLze~;QCYovCK z65lS`0_!ON%O*E6Adx|l?g2p}Fb6aLte@^KJPR+=Y2QuWAPFxk`%khRmiC{=7Qk-^ zkhuWP9E_7d0z`A#EG>5O=&s-%=hpPMhQGqsR%&^*S3(slb_AcbDr~@ z=ROyqJut-=x4$4gd*d>yM+?%Zv#E3u=&oF$oD@IKDhpOldKuiY$6s4%!)`fdK zUm#(M6Y66_a5%6BvH~aK^mNmpN!?U=$g?O1jGN-$zTaSjtWttAIz*G04YgM)tFV9p zF8H~D+M!9}5E~%l04tN6?eYA7+aRXX$9mE>#YJ!-7?#Mh+=6Cdc^W9?*kn!ixNY2ebYQaZYt056HA{xkZV?g?YhCCLti1o?>GRPYtBs#eP zO z;Jg4~b9H&V5v!Bf9l>auHNdzpT5@4Jq~aekIR4nKVvzr5b?~Xl!5qv|*LFRY$h?Ek zmTra%$D5e;8?M`rLo|*d-@qayQ*1EV{K-qXwAx)O0k0kJt-HwA3Uo2a9sS(ldrY%r zU2Fbe7w1NVGVEEM;mwStJy@U!Y{CktY)*)G5f;niHCDAiyj!iJh-#S&97 z$w)H=|C^M6q2^3_9ID#|+J=g$uJpPiesRnFT=n6nm9W|;Vy#Eych~VffO1GU-#61T zyThB1%y@B8cg9IQqx#69JTRoZO8fWro4kBqnlY~2?bpZX z8hiB9Q%_lt!wRlWE2uj{c|RyZvUP@m@z^}au#&;WLzeY$v8-g83kTD=XV6|Jf|)In zvcuXr4bzt={H5N{2m=^KNbE_kyGc-Ez@sUH&azArGGw5<0e4pyV_tBs2CEF>;crE?=Ef z{g6kp@aEN!iE~&zH!|oSViic<=pCP2q4?B^6)-H2NO3`PPObzQ$uNai@XY}k_X?8J z4KAoJ9K4TdXSXBAJ<*mUhedN?XS)zQXb)XkLk?ew26A}cC2}NbA5Hwye!smjY)1|w z^Un-&m_GO^68)vm!FA`m^B^6kcKjn2kZu)X9-^W2;`;@?Ah&lmpuJxb{2l#VV?aLW zwGa_1UXTQ=ouDBn30;XO+$v1KF64ife?X|)M>-TI>K~*9 zz{gGs4O}J5vqJT=1-!1xKBwo8?h@$rdegW@Kw*A}@;mz+e1-@5$%m<>;-B*xo{0V1Fyp~3j(OF5($U#3&yC#WgctOOxTOMu<5NvIIV0e4mgSn zX{tTQ{?hsx(Eoe9(YBcSp2mEBkJsL=>%4y?-|zgpx(T=X_J4yEs3{yqrZ5R5(%Go< z{kF~RNSX8ho<{S(trm{(%7%@UE$b@|SD$#{PD19l*d*EWCj5bDx1VeZ{9&JHmKuQY zWA6^dvrXyQUX};E4=1Y;*(81+vEP9?_r@5VguGT`WCKhS%4B&R1k9}-WyG8wabbg* zN(!RYJIgSSQc$qUIQxE3Gde0Pk~ z?^^y%R2R#pOB@mdqoQ6-usv0bIzB)>5Cd>Py;6NSzxTC37+h^zzAx%{-p&ejs@-3! zCvAN}p?CgCRPs!h3#dfkH6lXyN6|y3qRyje0PX$p-cwyNnk(LaAl`eb%gZ>v#UCeq z1z1y+F`OTaN}jZkspENV1p`kexa+5(rGg+#nj;42+sF91ZQbm%8NYzr2ly28Iwq2S zIJ$J$zYOEd&K4ql;&#MMwt1jHeA$t#6knT_62Bpec}vb`d-ecG><`FHp(4KCebkxe zek2CZb0#%kgnTA%aT~PPzL8enBeFTTg)3d`cF8?IgX7AREP_ zRc}Ljbq>lE~ZAhQOu zd$a-GmkcmFRebRvw@VRvc_K9~&FNsc9V}rhqt+JR%`FbTrO0d$f`fqnNYz5$zZs)* z`hKCdI4F=po=D+;NM}D!W!Bk-9{SPD!-JW|o!Pm4q|gz+7ah8ei10J4SlWR#f}UxM zKYI{!s0VtGL2s;M^4~?oKVj- z|7WA-T6Xu(pR1E`Q!b;@|7uj4@$MRI=I^7Zvl&LaRlC1aZ@dGQKU&Hl z{}4sJeH>*Ssc!pXz5UXM_m5G@+dtFWKUk1{M&kosT1A4>v$h2&{wbPz)Y#}6G!^e3 zkN3_-R}Z}Z=XmdIl!^I0{kP;iN>VP~Z6%G-4Wdb|^McQeJom3L7H5^_+T1Hl3VE)S z<|M%xjGU_B#}G*l94sWcpL0_(b<|T9yN2ww;GYE00qwQ0TJRa92s@$b1{gl;qg<@m zj{*w50bhU-R`-6Tj!~sO?Z;8cF^Z9I?8~WmvF(mVc~8l&8wKuKa$Ec)DtRaL(-NSK zZTHhC>f3@b^)bnx#d}9fULFwdpNRL4mQ3Y>*lMs4{OONSZla_l;~J?n#j_-rIZRpN znDW^#q9;eXfjFZ782RkU7?jIr=BG`f7Z}RF5qIT-t$w)VoibNno%L&%d6g@Jz}c6m z3yCv;Hb9xTMLmyBG!Lj5mBg4TH!x*tz9Z`FHfnStSzcDJ+WOfQb-W+O>P%Ai#~G=~ z$`T|e>lA{8C$50N0AcJ3yriIm19muW0#Qf$vcmT03PE;m3OVtRHY+=x!txY_AXZ6X zhm_(PxeoHtckfaPZoV?f2vQ0R1ZwP7QbD+)8dA#5F%uVN#|NYoRYXJ#WXPi#oOwLUqm3%&7A185&z- zrOk17H0JhjI(@Q(M5-8cD3a!enE=WbpO3TrjD4TrcPH!&r&^+h82m z$9UbhYykyWP8WK#YdG#C(h!qVJ1y3J-)Gg{?Ps_+%nBYS-|k;l7f+>vci&DpZjLEA z1|1vgZfVpBtoyg)A>bg^ClTX-bCEVUAsc4hAkIH5@Qrc03wx4zHALQC%Pc^ zZCSjr)mC)yVT=#OB0y~jO+Q-fF-~S6@ynoHaBDwT@Eyhqps&~~FCdm}a7j~phG!BS z5L_~MM6{<}L>st)x84M=TlOn=C4y;v=Y4s6dDr_-AVCi9(%MF}J61NudS$u(+L*>C z%wBBH+O(Ij_z1AHHJfV&h?&&-t1UpD$-n|g zn!*l0t_8Sh1<-%$8P0@*t#dIq4kF_eRi(Hp=B24+x>P_sl3gM*4N`TV{z4?Cfwy}2 zChNb2is?dUrH9ecI_BwtxOpHrdCKk=W5cYW{D)X6`XnFLW`*|1^Rg zu0|cR_9R^vb+`^a@tml(FRIlHJ`)5EFeDv^SUu_bCeMnRVmWERnIv!+H5{PfeOZJI zW)0AdZ0jxCi2^8yNDlaOsnO!zwchx4AoZj$m3dF7o{j@!a5!dxVO0{sQql?z-X;4fC5yDPZ`yq8i_N#KpWAW*L?sS~BCx3-RcK)4th(7s>e~!)DF~`kd)G0+F>{szOXheJjEsUj8?|vvryb#Cl3?QYCA-{ zJ4V_tg7hgEEQN>N`KSL60z#E=*!0**e5Me6owL`S%nwe^@z|UlnnQ3Kq=Yk=zz$Ju zNL_dKaHL->keCZJsu^ztE{@4mMfQ9S_C8QyLxITK`nfen`*W-uINtsdh}FGr zb)jhXE6@m%U{rg*@Ix?RqfE@m)CJEQ)sa(3E!}EDJ(9X0nFU^fUHj|RWQi(`9;l}J zD93!1462l@(j4WDjZvD@Zi9^ym_6pBycCVVVP~Tp(Z^%Xg(I^)1p2l!bRlvPQTQH(~qwF?24QEcK^TBPxx3;1H$om?t8AIow zi=z9Z=ogIe5gM|dxut;wspkoLw8*D2exhw1J``>3uyr8cTGu&MoccE~c-Wg!Q)&)q z+x6P;{+kU#!k9|0!88!PV!w(pe>D2}yd97yJ0h)UBf@pwP+eFw^@(VzE(r_};j+#r z8+Aew`0xlQa56)8=lKtGbF|Y@YSbaz-rxW=>8myy>f~-;UNfSbS?S^e?16|)*-ti} zhNi#Op^H}k#XNXSchY8KRdUtqxoARUf%ET$>aeN8wa<_$%6#AOdfis5eCBC68$)NpvM^2z2~KFGIRG1kuyR zM4R0t<_A7q-TUwl?HMg>oV4xw>P;W3N2ISZBXn;5+D7xpyu@@VU>w-R|KrYj<>wTY zZ)#K)pxbc9;C0jF(@>-U#pfFo4UEaLY-fJ}%ptt<-UK(dk}__oc6Z2Zb<$354&1@> zOFmx?s9$hCxGt(p6s ztXrQ(+RaTIboRP_9=Qj&F`S|Li%05sGF$Am>!Xs#p7ETk#$S}YAxeJPBpCYLtGkwr z$hF$cz-5&2f?2k6L zcz;K{_pm<-gw+qPt?yF%9+mb)r3SBk6MasDa@u*Hm66%ry>b_!=NkCnSN977x zK-DsX==;I$RTb}U0Qj=uS@x}h^z7>AhW@Ivrh{xB2ybGg7M!^*%GSly7VaT2^_Pap z{ZADpxk3Sxb)973Iy{k?}pI5L3TydMLnLRQ@_G=Om zA8#J$+}Y1X{lE_c;Sqr>bkDiR0wb=83ja7JYVJPI%Zou=7X^I~W|F)d8)m)S-VoMk z6=hg$k(7)66*oYtI7utL(?YvR~9w=A8*$4*JkccBh37|lI}B! ziu^TY-e>l(3f{C7B*;B(WCYQ!unpI(XPMC{>O^R#pxvD4mWuh|yGv{2%>fHf3un=~ z9zTWI$~?T!*LzMl^oI6e zf`n!Vn2Z8;^(5x@dL^T7Veh5y3&uGfDV-|EN8+7*s2fEv6^hK}i)Flga2ah>Fi+V) z_12eCa);K{K`(hjmgfP{^NxV`_ly`(NHuf-ClPL^U|>8(P@27)0xDRTJ-yEi4Hm5v zp4DW#yP|m~(Pn);+-iMYlI*-CnsN$fr0VZ~UKheo(sW}J-czfU45lkaOmTadwv8kw zwyC<}^`~_3ab1_>$Rg*Lx+43*f(Q{f3rjKiT*0@$Ex`V+Ntl3n4Im=qf zg10(=(CT+=D=le7fB*8QC4DAF+58LE`6}TmtnVq~6~eRl@v|N#jGCwVj~U0_I|GOZ4-;=wL}zvdp<#8vN8A! z&@rGnS(?rp0>KJSxhq=pt-`?)gVT0kW#zfYLtbm`L6L4C%i_`v(U4=AdqT?|Z;pcA zL*WILb)k;UkrKM@d`%KM$--G^ zmHtwQ=-Z7?LwJR^73Z5E&S&buVlIH-{b)6@oke{6Q<)faCg5JqwAemz1Y&htMPVEZ zAK)qPh^j6MQ=X~Mgkpq*iy29>t3bU*5kd{xLj;(`NL{9hh2_Jf%w%<9Ue?e|t z6-$~_GJ0v}g?gvUCTb#lK>hw0tK;X%qNSpF2)h$8r7KkugyvAuna@tBm*@%qywDCM zT9@jy;6(3_p8nF-m)Z*IJ94}PE$YmM+FD?!0X2w(+CN-l6l5mw21-6j(F{E)4pi^;-k_3u2 z1YJ)Ipm0veqG$JqDFrBE^(-YQQ)ciOTth&n-QV&$Lwv?&=NY;=6lTo9Bz~gK%%Hk6 z$Gw-QAsM}Ax{c@#+=xaf=PllKjxmVnoGE0niZ;xZ6zV;n2`{Ku`?NqNq#qB!4hA`vF-h34WGs1Ml>yQCpKAOL6J0Xz&{*8HoB}3$@v7 zT)tFO1S{!F=H_pWrfxOC))W$e1m)W6?2S5MFadRX|KHcui4%&R-d?M9y!MiNYjsL{ z$^Peoq8&T=a8ua()jt7^{Nql?WJ$|Y2RfNPjO3HW6H+8U%7E`l@J~4fdGIalpIPg4 zBkgL$^PPojXxFY?d+vGX<8#3UFS^j~qP_Uym*R8DC3ACgzy7k{xb)?`la{IKhEv{y z1?7DWDeq%7BTv=gt%E-yTl-DZr7pMdg&*_LtECpT39CE%xoH;$UWKNGKM)0mORRJ) zzS26{RESa6M3YYSU#V@gDRW;|uDtRR66;OTkjs_}?LFQS1--}lkXSbr_^hbX68%=)I z!{e9vJkiKZ;#ITO2qYC!a1w->l}GE`YYQi89AK7K8vDwFZ!3c_AllF6H;vC1hE1dT zOpKGsx4cI_WGi#=mg!lT#tZ<$5M8j{qzS?tfmRV zIo);uv0oR)3EvQWh*IaV6kVZ?A8zW=jZ%;YC&bEiN94K5z9R&aN}}g$W9DWI(uIvP z>FLGY6Qo{GE_{ytoy`II_p{hHtUr_LME4gWR5=Z0MLb=j%oT`f9mR!OhIvXt!Xs8T zLRFr&%A1vA!vbCOTzb4k5Fm#0iz3`yRvpOU#2v~ylQX3se0`vC^V6Y#x7(1ICJ1-M z=o%rw*;EeXFm1aVU{Z=8_t6Wm`@tK&O@O$Z9i&)K{jij6U;;cTnRcI@%1DI9=!ff- zUyt!RD?uc55=N3<`7Mq@lChJab)6S*(^CVS#A1!wIGH7-;W<;6cr&Pj?sofxj(XhrtEF`kp=0C~_H^~p}=6%d*J4JOy2cC{8u@{N+HF@uUMMJLBGMI$Wpv6r!`SXQ1|404f zpE-VoLTkvvvKZCl(b!{kz1$kZig+u^+omuxwo=lAe~nh&J|PX+!kMiV$5TuRD8NL! zEl67Z$n~|=Z5%M#>I4I|oP_|{7$rNVWGbulvj|p($g?oY4}@%G7?Fd4r)BJ_0!9_^6Dgr# zt~G;g60V1X{ZJt)pNXOivx+ysLP5E2*cP_+a~%gd>a-^3)Xpr#-NlyLjg(2(wHD%N zY~#C(I0vd=oQMi_jS=CTs%$07*hxk-Dt@mN{ICa?mdu+Q-N6LS$?q9yMTba}N{g@3q|!}_G^wLI@Mw%_Qt@X8p7{yq$;BOd z!>k-g&jo27Nkowm6e3QYKTboXV$1V%X0J_QyiWkT1= zpQts!IwTb2=ovn5os_NqMYQTnpW%va(>)L+AF=*TkSi}Mcqq#G8hSZp?M0NSjDYDt zy4e3(Bq-wIAc-1+s&!uM^JK*EU^XbiXB*8gA4sC6im>Sb!*UWe0Lf*TN7!t(U#}`a z{H18yIkQFh&$cq*_bqwF(xGUpVVpine(@_jPx+b-K4y+FR>5pk#w&EJ(nHY5CU_Yk zt|NRNEHQ42p=%H4DrJQMDhy%Lj~3iw21Vvf)~nzF5Gi6n3~k#D`+3SZ0m6|krpy5` zEyHJH8;nC`Q@Ipn!!!&+*78qr5blQ9B=!Kq5Ggn7m+Ns~OwK9jsVf$Ex2DBkYK|_2 ze3I?DbAZp=T{iED2J1}FT{fHOvZ2S%+y>I6hU4A-Xv^>}vnb--grN!=q$vVyDkELV zCO#7FIMPucBRI;EAB~cSj7<=53Dpg?F72GrUio8D*(QWdFiJ!p82B-{A$;SpLEc}`qqA~5t{)3*hta=jl{%z9_#Wj0KS-7Jqkv`gF!q|-R>qDMPw3XN^*fNg<#8O zN&UebTUd=%2-SmCn(E=aw8&0F3%I5+zLgD6DxH#+8y7m~92{??v2KfAIY?s-^C-

    0GOqWBxdSJXBV<)uZCVSOVF!@epq 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%0Awd28pB=w33fbVYbG#7LK-rrR+|u!#Nj8`od8Q zOQ{|`@Y4?MT{=TTe~j*0hfr1CV!ExL+i?lZPGIig4W_e{qvTFz6EKrei38KwZ5Na9 zp`T7w@y)fuc3(QBID~9P8+4>ImwrlT%O-e8wOifF5C-g_I`gT@%kyrC(f(COO1@ni znnyc$^82PJ?vq1t#q&19hi`5xi>se0 z?oHtAJgPgeSil)Ty3b+*Dbu8g(_%N`1B5>U9luJQ_mggAry+_cky48kO;O z{SSDUX+#=vXDEmA#&J!WLyx`Cff*JJjxp+)p zB_AIiLWkA?PgO%0G$)26C<1&RUm0dm-^6}IWp5`5ZWz&m-!qmXh(ED4f4!_-7C+2j z6RBnb{Rkff5q^|E!b#F&QuNH`e9+wQvj@AwgX4UFt;HH!WLH>d#8tFC@N6YkSjt7; zZj(`r&+VOnGpy#EJX1^tNFx;^SucAH7 z1RjQK#h_e<6lj(zTkzb`whY8c!!o!Mp<70>p2GLxk~24g`Agkwr+!BqA4vS(T;_)Y z^`WcihecP#6Em{fXp0Ubze*>K+8+i7|L_wzMaO5d0!g&Xg z)96-j*OVuERusm!s@dP+E!*r5k4bPjS1yB_*nw04iXlB}FApvp3;pWbse7{tF%Xmw-uf5(4dcz+RNzL=M^``p?o2=I~| z1k6H!JOm8?me_BmRAN#kd>)IeO09{B$w`EKJszLaPd|fEUkLbO$QNV1@L`GqhI(Bv z^AyH;Nt73Yyb$8GX3cY-rvY9sdhttM`X7GlW$S+XKmN||{vJNR|MHiwU;m0%{J|f* z@|A!1pZ@4SU-Eza@qhV0|LgztCzt-W|NFoHk3aphKl}5`KxoF5k2cFe=DP#on>PRd zqImo0KnybP3`XVwjV=ALX8>c&e=#S?%S-yRbkGW6_E$;`TtXQ1oRV=TV|qA5yk^M!z| z;#nmSS33|L6)68h+E;~15JAQnM4>P)9ttpgQ#9I&kB+8myh#f||L@Wy1kahO$+@47 zLz#(z!*Ls?6oP(iKqFP|8?Zn!#(e)bG;7BX)ETVkchLHV?&GrRK&=+K&-UD7L@QAu zZ%5G8rHXaxszDEKSdjWV7>4jC`W}-{0cR&AcJa-Bl|~a<$9gF1PVAUEGZBO!99K<6 ztD}0&H;B7oSRDhXsZDCBsHTV#9@K0$rizM0wlQzle-SY_8pFS#MjNU)t2&G7d&|SW zcRQ*q{QHlkdq|NuqY(8m{5zek2rdJ=n~38<)HmY0HH!!jMqL81B)+?u#dp(S`p=42 zvjS*@PmIE)tVazPO!!AyAYf<|b~)Y2OXTlLcoUjX^$<7MriJu}!T-#^OYq;QJbtAN z#?U`Gngy8N>4P_Z@rP)Yf#6LEPnK=(cXFy<30MGtTtO@G{0`MpgNlEd%XKN;8X8N9 z8Qa6v38X(Ce=rZ&w&eMM=UB-2Ql1xpJ+!VhB90Iyy?O;>hA=8dg})r&x0YPgfOD*c z^8vEMNk(f^!)Ibjah6d`zH`TCEZOl1<`!m@Y~n~zcd6oH;>;MsrcY~WrsTfU(PNuF zgeTqfS>1R(jaX7Gh*wS$$+41dDq&(Z1bMD*;8Y1XFffAM0N)|vQL*3CxrRiLu|>A{ zLB?`86yaIsl~&kAA+SrFlN+!VitMD$zurJG_L@_)du(I5g)M6y@C zH14B}wm(N07)o6+%`Un=<&$JvC#(`Yw&d~&OSaQJf_%}**K6x)VcJsU1gYImG8=$! ziF}B37U;+2gL?AwEyFK5VCKnRD}X^(B!X4k_G(LrM8X<5D*aD6mE+lE00LBVFbF3C zg5SEy;K;bw`?S5E-$bAO{>%Q}jE)!LeQ~hU&n^EIuVhBS3%VNps=qg*;Q3?lXb`?V z&6i=L46tL{^&Jj~eJZQPVY|

    5QzX;lwDbi&Q3kaCB&_uNuM5!pxBksX+2BzU^IX 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�RtO2_{Z-h$$qzMwkp3zZlSN96N6A8|)pz0!;u3-PH&85~W4;ZjE5 z1!_8!Z+RA3rZI5zM!mJp;P9>aLfx74czMxCy!iV>w6}8DN zx1GM>ZKt!^o1sTv%zVyAb;?juJJWWp7FRl;IE2G6+S7GcS>LRk!N`SpT)FXF$T1)v zcE?hrb<4!Nb?LQzIm9qS@N7|1{Op|BeV5=qr8Be1b;6n5_c}8-nO~+ebC>OPW^E#~ z?r~<#%e(B%Y(_s5XJ%9XOq`h#VQ0T)VdpZ9w&P}4=%YP0!Qz_Xht5uid|8zL!-`sO zKL$*_{omsM)ZmC-2irAz`#wo>Pe~kbB*MIYG{>}e}|Nia2`}hC;-~aFU?;^|MJtH{@4HdU;o>G`#*p7-~ao6{~!P3|N5){`~UfWfBx~uAOGSPf1UO9 z@%5F|&)3h_U(x`dN&|g^eC3h``&1g@8|oV-X}E8=Z-j58uR_u&-zeW`-x%Lm-#FiR z-vnQ!q=~*szRA8RzNx-xzUjUy-wa7JeKUQte6uCZ@y+qg_098DOPcSS?_1zoC~1*z zk*~(LSke+-txijQ%Y4gyD|{<`pZHcus`J(PR{PfY*80}@*84X2Hu~y)n|zynTYOu6 z+kD%7JA4hkoxWYZ-M&4(y}o_E{k}%u0pCI2A>U!&5lKgVM}5b9O}^ufbi#MicglC# zcgAAdf}?}DU@zKgy~k}mtMAhr0e`mXt|`)>Gd`ff?O?Yr%3m2}5<$9GrK zJ>Pw#2fl~CN4_@SW8V{ybA3H~Y8vxB9pFx9haS&(wgl)4$7+cKi4E_xktw z_xl_D2mA*m9r7RYAC`2)f5d-O(lLJ%(sBO@|4IKT|7rgj|5-`R{$~FUDObSd6ObJX4Op`P{Fg;KuX+~g1V5X#5f!RoN0&@fN0@Z=} zfdzquk`@IP1!^QM4lE8VkyIO4inJ`SJg_3LGVn=Yl}>d5rqxJm0&5*O&M@t$L91|QXXEnAkzV)gTX_=!@(oLqrqdrrr`15iQviLso?40nc&%A zbMRd7eDFf>V(?P%vZO1)E5VlFRY})^*Miq2-3ZVWfd>(ued>PD!`h@z1`i1(3280HN28GH)gF{0?Lqo$t!$TuN zBSRITQK8YHF`==caiQ^{38Bi+#L%SBd^eqg3v-qi$aS+HKE0!C865T($F$V%R|dUD?%$npM+M0>O!j}tqH9OtqrXUtq*Mo zZ4A|iHib5awuH8ZwuQEbc7z&2J43rdyF+_Idqev|`$LVP1EGVVL!rZxj)abcj)snf znnK4zCqgGfr$VPgXF_K~&7pIl^Pvl&i=j)Q%b_cwmeAGEwb1p@jnK`|tKJS03+(y;Kb@Nh{Z!Xv^X!xfT7g-3-)OBxd%6CN8L7akv;AgMB38J-xP z6rLQO5}q2K7M>oik~AYcBRo^mtnjSx?C_lM-0-|`b$EVwL3m+!QMe|&IJ_iW8(tb- z7G54+5ndVoB)m#eUAQj1I=m*lHoPvpKD;5kF9SR=`9}XW09}OQ1H%U4kJ{~?1J{dk0J{>+2J{xWh zp9`OtbRm2pd@+0}d|A?!@Re|jq^sep;cMaR;Tz$bl5T}>g>Or04Y!8xgztv$NxC1t zAAS&i7=9FP3qKA&2|o=#3qKFP2)_(xBTRje`bPRi`bP#t21W)&$|Hj#Ln1>X!y>~Y zBO)Us6_HVq(UCEcv5|3+@sSCU%E-jXq{!sRl*rV`w8->GRb)nFW@J`mc4SUuZe(7h zIx;`9AhIyBC{hzy99a^njVz5Ui!6_!{UiL8~hF0wANKC&UQF;XAd z6xkfv64@$gTVz{gdt^tXA+j^FE3#YCp2(ia-pIbl{zzlwK;)pLLy<#~!;vGAqmg5g zrpR$gCn6^zCnKjKrz2+~XCuv#bCL6sE<`RwE=DdzE=R6JS|V2?*CN*=HzGG9w<5PA zt&uyCyODd5`;iBchml8-w#ehilgQJ^v&i$vi^$7JHrglJH`*`SKRO^fFghq&9vvJV z5*->H79AcP5gi$=h>nVmj*f|rjgE_sk4}hIMkhumMJGq6M5jilMW;urqBEj1qqCy3 zqjREjqw}KG(fQE@(S^}P(VFPu=#pq{bZK;1ba`||bY=9D=&ER4bhV^4(KXSv(RI=F zk~Ty)L^nq3C2fjsif)c>iEfp&ExIkbJ-Q>>5ZxKw72O@(6WuFmUvyt|f3z`rK+?hJ zA*936BhjPLW6`GQ@#u-@$>^!*>FAm0*=Te0T=abOLiA$vQuK24O0*?h*icW#wNuk$EL)l#-_!l z$Esp8Vl!j2VzXm&Vsm5jV%4$vu?4Y(u|=_(*y7ldSZ!=+Y*}o1Y(;Ek?3384SY2#& zY)x!!Y+Y=9Y(s2gtUk6WwmG&Xwl%gbwmr5Z))3nn+ZEd#+Y{Rx+ZWp(Ym6O;9gH1{ z9gZD|9gQ7}HN}p{PQ*^ePQ^~g&cx2fnq%i;=VKRQ7h{)nx*WR_YtiXy?3zy3V>eUj zReVN#W_(tBc6?5JZhT(6IzB(XAiglZC|(m^9A6TzjW3Nai!YC_h_8%)5?>Xsi?5Ea ziLZ^Xi?5Gwh;NM7$2Y|{$G60{#<#_{OWG0N5pRg^jPHu?j_--@jqi)^k2l5-#1F;~ z#Sh1i#E-_0#hc>C<0s-LNu@r&_G@yqcml3L;|@vHG`@$2y$ z@tg5m@!Rp%_?`IO_`Uf3_=EVv_@j7R{BitA{Av7I{CWIE{AE0w=#%K1=$Gi97?2p4 z7?dba3{DJ@G&C_ZF)T4WF(NTCQIQyx7@ZiC7@HWE7@wGss7y>uOiD~nOi4^lOiN5p zR3&C4W+rAOW+&z(<|gJzs!miV<|h^;7A6)YY7&bROA@t-rHN&U<%t!Em5EOhs}gmI z)rmEUwTX3!^@$CMjfwiiro`sNmc-V?w#4?tjzmLZr=(qpU5VX^J&C=EeTn^v#>9cd z!Neg+hZBbrM-oR9#}ZA6Qvx(-!xy1Rzg~Y|grNrgLl|)P8YT{br zdg4anX5v=jcA_N`&CHp4_ zBnKu3CCih8lS7h2lf#n3lOvKNlNHHP$;CnqE;lM|DZl9Q8Dl2en@ zlGBq_$r;I+$yv$SlIA4mBKG4@=WqqekkruBu+;F>h}6hbMQT)PbZSg$Y-(I;d}>0fGBq(ZDK$AYB{elQ zEj2w=m70;7nVOZFotl%Ho0^xZPR&m(NG(h)O4XzmrOksX z>QL%%>PYHn>R75Nbv$(bvD(UI+r@1x{$hf_FH_lcpLE}JzjXiffb_uh zpmce9aC%63XnI(BczQ&7WV#|fDm^+qCOtMiEne(zWTO>1FBV=@sdf=}*$D(sk+8NNdt- zk=CWxBW*};M5<43LfV|(g0wZg4QYFN2U0_NC(^F;Zlpcwy-54g`;i*c2hs1?_=eGch-`U29$^d+Rr=_^Pr>8nWB($|r0q;IBg zrEep(rtcu#P2WShpMH>ji1aAkhV(f71nFt|8PfCgi}XvRY>z%jeS7pn>fd7k(!d^r zkji@uMjFy%DAKSV!;wbx7>QKTV-(Wp9%GQk_85mWzQ+Wl${rJuCiR$%G^NK>q-i~- zBUSa7fi$y+z3H#4_1pjPkAv7?Z??T=v)K)~H*n4-ep%~xtj`qUw#Jt4aLfLM68k=W zeC4^fY?*uA(_X^_pb4V^2oDS3gJ{pFag)+XM_rgA1d@k=#cwBiD?^B;9$4yG{Ma+h1 zX~3#~-COvw8qe5-kt;N?S42Lv7VQNTxf>&fv)YlL1MDk}{BEG_jnZ(YhkRAk=;eI!xdRxj3T@QEwcC+sfb}HdCA%p*uhMI<;X5%WwK;9Sa=D` zQJddJ20W9BU8Aj}Qm&}{wj~BgUe(AF!$2w8=64e_0mh}>_AN=Z2@9zoq48cI2Y4n=Y2oP%A&-Qo=IwFaaF&to zLq!)C(@GVoiKrN6v{#JGrFA(`lv5g(MkpVUeZYKpU-G?@q=?|2l&@~-SwhMH2nJeJ z5}2j2@B4cS<{c5VZ3v5q3|NjK^l(@2wvbOsZRCr}08n3ci=Iz1w-gzDF%aEfa~!qN zhx&N0QU#pTyiAhhJM`S@%$o7qSBHB05M znSIqwz9@Ld)Jq4EYpjT$R(i(UB6o6*;W!fRGhbl>4 zVKu^;UlWvpgj`mTS9wS93mWDn0DPI|l__2Q>7;y7RbK@fddeUS6BYb5R!|w@GiJU( zJY|T=#hnwDlp#(bB>*f#B!yC#vNGATlzQ`FOX?Ge446ym&4~2)z_!&3a7n#Zr2c9b zq&}dJ-K)}4KjW2pt(JN-E_uo@ZciYSr=*Hsk;X8UA_ag3)Rfc`98Ii~sw$QQX-I6^ zyuV7C_E(G~$CAhiA!5`pl0=T@60y~Qc5nHE(ahXLJf#LD+@lUP3@0T3EH#KffEtuP zIPAb2LQDX1>|qdrhuUET?!{tcG8sAOW~9+UzCS4eke`u#um_rb^VfequdJl3_p?Mv zrg@X)F8eSqP^4uL1+oMVKE1{~6$#Z%mAncHX?#`eLcMi3rP{YT?|fz&bJ5OcFDhm^ zAFBx3whhE}Zf}VPs>xJ=Js1KG-LQ8zn}XUSRT1Y!FW$3k9-+HH)SpqU=LJu$0w6VJ z1#z3Q<%`;4taY^jODrJkr3gYR_yh$}OuyaRHFi7Lxt==ibkq@)5ksUqs~s+@#|!$3 z@UYv(3SJQ}w1yQ0fPP7R*K`>n+Wy=~qUCtuEWNP0#UAzME87J(iZke0 zgfrl9$~nYZYHF^X!4}p$*9A9fXOOjA@MChgDK~c9*Dx2?ZS-R8#*PMI{FNdYcaNY} zdl;|xGTxvWZ?nAET{5{rRPrV9Vq2&H0H^>v4BjNxdXEC|LG1!nsh6sJsS8!v?5WB+ zZ&m7bRa&j8Tql!ja&>T7!(2LODad%8F#hE(Fuu#f_-ZfXb(--Oi}8zOa+T=d4QUqF zsRIDmEWXD0eVl+#6ySA6>q7*rR9aeN`NgxOv%=C6JM!$%GuFTXzQO8nT!UV=j=jq1 zFQddv@9h+c0H!2nJCrI{?+ssQ2hrE_%g8nEb~~3QBPH!Xmr_c0@2%07>pQE8?!7G$ zA*u^+FHuAQlQ9wAQ45n|rHMNwUgDI&zLi^%$M-V6Xb zw=GtC-^JQbwrcNeyQ*WM2XIn*_32g&=)Uj&87u$wE?G?9zV_Hc`?^V<%I4`OYG3%C z|7RlNBDz(TQul92-G{L50MK0S#I)vjuJ2s+@6hz zvSP>5V}&Jkqs~^A4ggrHZ?#z3MBo_BQfYpcDhx}Nilxz?f~5-P{ccHh@61bIzqbR@ z2OmRe;RSD_3~*?Nf8nxmgpL4uK=;8nl34%}8GYq%ZSP(onq^(@Uh2x3W|eM82 zO{R$e75xxi@W38wL{C~{N>;`z=!}y}w)gk_^2~dAtUS1nxfG2|;BOM|J%5#jSBhuY zro8Ko-^$R0MQ}5}fF17J*a+P5K>z&)VuX{@<%Y8((x`Qt! zah_cD)0M}?a+#9Sz{l{67AKsT$J3vp0;e=8J0Cfhh`Tj0+i-L)CLHxu9D#iqr)EHv z-Lqc7vIY{(7FGT+joM-P3q0k&R2NOz<@TP)J)IvdA&-?N=i#!DJc>2y+?6jLDG9c3e2WP9PV}s;|>kSv9!6( z6#ghGlv-UFI}Apf!nmab3MstBx=H|n6!>6W4<~QX=pcnm^SPAM=SntL0Nm{;!zWza zfcTM-j>aK=4Bg5$vKrS=U8`P=8jw@3{f45h*Hu@&4j2qwuPel`s2(BJORhYJO&(44 zq6_1w!O&FCJE@)^)n-?o<0g-$de((;(qL$+r=3*KlIlrUo--zorh3AK(QGg@)h1$u z5WMspV5LtD%JBJts4S4Gumhw(Ttj^n#fBu4>M~t6P0fICSJ{cNI}%1>Ae6T z2NguEn%<&74hRHS@|0cWV+c!~#Z6gS%lw^i&xp zGeA5Dd1#w7&vzgJL?DUx5Dfm-V^xEHoBWsyz~9z4dPPuTluKHedG_~;3pUn76c2kq zGOAZum$EJZNFjP2wz&kuXC*R;=TT|S4_T?*z?50WmT$|HZIhsaKaMfWO3GALJXhkG zd0w%^@NM8cBDu7ygUdg;$R9=~a6;-)>NVcEd5^4e-!o2FS`%Jv*daWVPsRC`@mNhaNLH=`qCCj|M$} z^IH*O8-xTK3c`l`y#%jTudO+)PzhP}wv%ElBU$6M5Fxaa#J?2&rSY#v*(|&Kfm0^d*rmzB`2fDnJi+tmU}z&CVS{HgH!HCk3w&0VR}^_dd%RYSA-rh z82WQe5aQ22gEr|SLdq+&ybi4fpdw$d6ttX%mU~#mQ3L$f{c z?-l-qzVHFH=GXbVteO~$z;I8k?IqL+0Lo;3z-*;GKkoI4sP{uSw4R{wN@jlJJ zNZcS0G+E(}{dHe2_3<6;wQN_UCirwOp@r*4vh@HGYvqGAh!8Z`8^TCUCi@M%QA@cs znQ}g;6>B&)KBRSrLh|(ZU0#8NB_6&}YY$kM;REIMx)b%4-wk{u?$YfZ`K-3TfRN=Y zr6L7=rRcrxt1L=KOyxsSMkZV1>h=K7fqiywXg1?Gz` za}`Ocj1>?h{5t%29jyY0Dwb3f8A}AOpnS@1k??GAK;O=lw`!UY0Lt8)v1Bb#XWXmUPB28wtT|P7p9!0hAuANO=?? z1!75)M@|(kIT<}(WDz5@+}nvIr#YFun60dd%RYSA-rBME+F8l0Q?i zq(#S)rcV`1u23F>Az;Q0{By*TMioo05n~V-wqnUN>I4AQE(^z!iNqa9TsxLD!YVjx z_IZsZjh}riY5GcWu>^RoSaQdhl8z<)lqq#Ome4P>6HEGlWHh5TWj^LNumB)LO%|>q zBufY^xL~|_M$37LTht{O*Zq2NV;8|I9B-D9h3ELHo)vE<(98f(Ch3efFUi9*yz#`F zF(mTDL1Y|>0HBCC;>~bkKIRJ@Z^{X1Qvl_s#xUCN@fV+JR^BJ_xO^G{X0`4bgynsvNs_*C&`A?0x% z0`|t6dKGUL6QdanTk&Q%bpn8Dmxbd^IdRVt*N!*!pYwQA|JlczwqGkQ-T==PZ&n&p z((&e$GNn$(8|-UsFW#I`Bn!rp4YUd%s#wzet>R*d;1!M~_er=399XerAWaAWWp2(` zvWck2@WvBMj_}P92a*0H0)Qgoh$Z`pd6+MBEZIfCAq7xAs4w##RC(KtB@IR~dhBvQ zNik0>Im{yV<8^^pve!e88Js@D_#mOTw=lhf9(v5+q*sIw>T)bO#v1Q}2tBdnI^Q&a z6)ToxDQy729AinHjwMYxmVBgQ$q(JJXMU*CD&NQW-a%2V#x&$J!Wvq-RM#1)fcAM;-SY3PI^V?5wYYW6-$1oVo8&ZC3T-F zmfWN~)HENh>kdf?+F`JfltkQ0=mCEO|uSHN>@JN$ux6mehXsv81xdSOPp( zEO}&1Nym~^%9J`COG53(l9eDC&8S0M>v-k_0I}DC(WMVDR{&E+D&<8+7r`qWT~?9s zGT}*0l{}zP0iX=f8D07lbt&F>qDv*;EO8LIMohag&um$;G|cC9uZys zv5GGLL`9cI9bKwFRdlJPJSITE-sn=LqRVn(j03|~bh%EQ0HE4s;plRixMPWHN0+M4 zd334z?4wKFtHq5}fai)XYm6!B=rT%~Qm3O!xc%rd5+tLUh)jCFr1k+2do37Uwi0s$ zFeSRwezUl-i{KTGE>B2!nDC^c%S9R$0LlQJ(PalwhvJPVx}4;j!44wlNdy2z#1UPN z5VM>wbaX*O!%VOOD6iDayaQF!kCP*>rTdOu!QbPsx?trSd-Mv^yXv9G z3{HARk3#Q$VS2Yb^q9d(uLwONy8MxfE`O||OM{Lsm7glQ+@n11K)~MUQlX;DLt@+p z!&Y=TL7f1g+GXMBa)h|Ih-*ieiqCm;src-pOVgK&i!Q)(MVIHslyr2tu1u-Z(IwJ; zbh)ZX7K|kWxi1cgDwZ_8U0f^?yuz_$9SL6n2i82;A({{X%G{i>WH3=L5<7<%9M!?>UvX-B?mF&^=OV22E!hH$G?zi#Q{^ zv`cTChaNLH=@}m+^iCC~H_1bf8JzTr@IhUUCDU2s;}9V zC`@mmhaNLH=@~r=z5Rvh)q3bLgOgqndPFSw0~JgDP{opZ9ZSj)OR%#li9KOm*blan z^4J3bdt*sf#gaN=>;l79EZIq&0HE4s;aIYjxI2k!$CB)47)z`zV6q>~+8ox&{b1S8 zK9;n7skm4IJXb8)XiQ1RlI_ZrIvq=J`nbI{m8~Ed%_L~Dc6o^3AJ#tz|R`N!m zM=WA~VS23|dd%RYXY?ra<`t&*z(bE2ob-y&BO=g;Dgyn!ia>Qb0=0eZ(?p;rl*eoc z*c*XbzeZTub7IT{!&U^UqfP)QCIT%d?hNAE5vUc`@mcL6>y8N2`Ze+T%9oaYCOeWV zi;O_Pb48&3gX~VTjzH6tDRnvm#oCWRQxwU9v1B-1J`hzbsqR(WXh!e~$C521JP90F zqnV{NAppFwq=Kju@x~KNX7kMi2azQt0)Qu$Oe5xazR45=<{hi@w(I*R z7{%yVG6poAZQR6?SuA3d@X{{5DIR*v;G}1KkkA`hnBEKzJ!WvyE5ZkLIhM?2jfX*m zo>;PmZ-#&sE0!#zv;hEfj3q5PmelH4@()!k`A6{#`Cy|CG)5g0E&qvGl~0*xOOaQ{+!2>=FdKs)V)&N zXa;z$ShC%il8z;hp&6J`r(;RH{aEq{B%_&xj8uklGy{MXQZTwS(oP-%Q${L{xYGe= zB@s7p%o6;$4+mN2fdsE`bQwq%?h8+9q*6tr0>B$x4v~j@c;ksKSNP_RgUB=z0l*Vo z&JnYfFLZP{MZj$ZP+n;Y^WIW<+l>Y%jH+~Wxv5l@XWiv8i@1*0^m6T-ojmKI#|%y{ zV!V>jyIPpuMGrk@aMJ78D`6IempFIf?BrF}_%cN3i7wCi<|0_JqRS*o8vroJ=+dO4 zOSO(J|3F2TAGo8-BhtCRY&yE!CE&aQC_Pq^@;O2ZM3+{NoSI#7GQEUnEaHrodpoQ8 z4?Ogk!6|p6N1=DBFuf-pdd%RY*RdXXX!0MZ=<)*kL%`6o z>%2?D8-$hhW#c{uhOLpxc~ENjW!z;i{H!R79e${}S+osKSv_M^*zcp{U;>zpeC8c|L(la}eS zQ8Wnv2uVp08cE20no-J~aW68;r3kz>Ak%yj4npD$oNU4Cb1F<#_4PTV1gYVkBKs18 z);DL)2o!c|kiWpy&#tQT*n9b)Bq&5jt{t65^pk98(oqI4VUEC zc_hE6i<18;s*M8kNqzxH7P!A=li@+PKxXJl3;YUrXr~2MgJd+Lu7BN0u>+t~~WJgq}Dp7W`2j0vPB1-8asVV@po+Vrs9~Bx*oprdJt?KLvmp$`@%S&WtrZDq0 z@hSVsHvrxm?ctjl`D(O>M5a4xbY26xR-=8M8cpj&jkdDvDaatv-O>CGkbk^jgUQv% zOlFzn;D3__C?cIko3Z(7-Im6i(T-YAV95YDDTW+*rK$E)jMQQY7cn{UR!>z0sKE+Doywc?wivcQ}LMgtjgbN%rhJ)i22l>?5~^s~ zRYC^{MdetQu?PSxh2}^GA;Bq`8shdRNgZ*lZVoQ6FN2hzDjzXj?|@4ISR}dFR~!1%z$H%s*_30Ye!>{+lD#q zR7nYe#N$-+jX~}wAHA3;^0h9h$tyH_!1VN0Sc;eJTW$Chw3U09I{s zG}$v(lQ)R_ge0j+=?Ydml~(Iin!JIoT_e#VP$3U(xtS=MlM=uZQv59omN^e zD6RPszdGdU7e17Vzb%p*z+3A8@Jj9lW%R&EE?Sl)?mdUpu2B*IF!OsDEvnv>l8Cbp zw8-><_*oibBO(M(Pp98tdn~Ry$9K9YgtsY#m3i+mx-IqirU;>h^#H&tgmPB-mQx5r z2)W@9!ewR#Ade8LoI;pgNC?1mS;BCS5UzDm2;a;n1UhJ#WgGwE{^%;+x`>IPjI`z- zNdrnqS9lcb+oB|3?d(gGjV1Il7(ycu5niMe08k?Q3#{>%lqNpLMl*VcA7isw0+VUU z(iDTlS>j$IN$f-;0~jT@aT_2kBa15zc{$fVmyAE@WY1un5t?=@7nIOEZsjL=dIq16 zuXD`6izpj$ks2?ceTmHbxiP0YM9h7>|^+K z%3&CaD2>5W;*o;bM(jpnODCp{v+Xd525k`a+92BA1RP)3`w{-&8q(I+;rQ5=tVuY1 zdu>_tKfUey76*9?jVb6`qW6PGmve83X)}0T-TGM{ z>CFFJcS+*xJ>kQrR-T*+q>JRQsAk(^j_!QCgwvcW^ry^=YD-3|0m0JI;+wEHyT< zRNZARCDdek+mo?1nfKN204w*d`khQ<8n-uAW3Z7u%Vtf|h4C0D7CXhCXZ_+DZ7uJX$j%R4BUcR*Z; z3~~g&xQX&jWyf`~Udb|HXq$)-7w2Pi!04cc1TQ(uL#zS(N78-7);8{Wnon<+(d+Y`R^wO{=FZT^;Vt{DsQ7FEYs zsFrSIla)`+T_}&Yjuh+hMtf1l)mYg^LN|aj%Zn~10RU9NNy}+zKG1;avk+Bjw)2U* zo+OnQV9Th0$FRKtznNn_a%g5A&;;HW^Lp#<7OB(_!O4J=B&x{>8Sd zP)=isps|EA@BSk55t<6_j+Umfij3DO#vz?*4qVYxs`wYoH?V&M#v3`zu^3fN#gb*a zO=YX8g>EXVSPMAaw^UQXjpNc(Xr~s({EIIINKL9S7%vkBS280%11tk;@Pm(V82-R- z^=o3JSVsq+*=@MX)KWpgC86zxMct&Nq&!Wk)UXPpRUg?v$ilU`U@Z>s%&_5YNu|<~ z7AAnWObHo6tSc|(_r669>mH3DYaBC&+;6sTOsVX84xsv#eAW!DQ9lq0^IrW$$| z3Nv)28oW}9H)(4{R!KF~)gKSYH2?(_dCzd76*;|&oXC-JUi+>DI#ndlt|Hq^xmuCT z&=m>DVL~H;$sz&u8R^k%f&fsF>NC=V2$`fH>NC=P37M#*)ULj=L+oL{)>ma0xs~H8 zxJg}0X*{LGMZ(|k2a?NU1C0likbXZHC5* z_|)gEhf_2FXcpxw*1}U|94zu1)`~?wVs+kS<3kOL);``YvdB$w_`bF!vr&{;`yVo> zFy(5|Fhf^F!|f6d7co*qlM+`xg`xp~mZiQ_J&BMJ%8ullh#1B>rlK*Bm8s|mdqlI@ zBN`4|`UWdVvoE4P*<{pQY3ibfWy4fm5Yf3GqIfsU888`_sn$6}WN3fisOXjS$%Y{v zjY$c@b#@!$uS(~X*LL(XVaxX9C$hPWdA6yyp7-mg>fLEYq`@aX z%x)QTACM_v%=1mT+L)Q4E5_V|24LLe%P37(tz%!KWC0*VZNR`6L@{ZtAnNNR%L#d| zAZjnoQbL{)!d`~@P!_r$Mv?`)b+x8q+K`@tqhbwdBvtq-FNUAQYTG1$%rmN?ChVdby zb}D%0?}6!R$D2%@bvwSH>fGse%snD9f3F?2Tig4{GaxM?Og0BDKJJh1vw&>^CpbynpFA*UUg&oDCp zd8*P@0$Z}Spg!Y6dxix}S5=xkRXORZ3ib~x`>o)#rS&bbN<26gp5z@y3tW?{YO?0; z*foGj;H9h7)239tCU-oi)Z+UG-1LG1t*~?qWMuFNa85raXBz1^WeHS;t9B`=X{7TM z`%$F`wsNim#L6xadKjdwX{2K$0DvO!YVI`BYv|snX(Z`19VG4{lC&n1D^hZrp|^FI z0grZXito6JgfGwFdntUd=8dZPV9gr|8hTyq$Yz>1Ia;jVbKzhnW;`7w= zAdUuBu>nx!f{*TqflhA#Q6W*vAKGeyAH!;r^l4kR_OHXnF1oNLsF<^WC z6OW30Y3AxZXPv}|iOdJJ^uY(qhh%BdYKlSU!N&=E)1vVqa!pFR5D;;>kQYX}+J$WD zqS9ZZ(pTFSy%A)v=~qNIh++W1GJ`_qx{kOTfZLI|4j5_=%C)(!?;_`~=bGzUkm1o2 zeqxh-b8K1yFPK;6u-B4v1t0XT+Nw1!F$2>j<{^ez9qL$$ZKRzT$-Mz)QK02GR*RU` zcfBW4bO2EBZ_-VSC7{ldJNM%{+{A0SYXYl?yGr4D>)y(5URrf;ldoY)rwbpjVmPw~ zv4RF+V7fF@b;7Z1!m8q>ODdy{RJ8GZ(nYCoQy2=gq_V=OkY=P9H!fv@DOb-;Fauab zGwIy8ntRsp#dNFOWuguBf$%B{6o7V&J|~hcBkod#OM~MkbF3Cp&X#E90iqRW&?4$k z-ClfsJhzbp(-Xw`SI)K|8w&1MzwOyg6ZGG!R>s#&kuS_@GY z>n*Ye0c*KZ1@QhBcEk%qvy?o_RgATdyz-fqv=_-OKogvVv@HwJ41fgNDxIa;T35F) z8h}wsL0f=Uh^IFJb<7fk&A+C-WIX}O4QX`f{R2BM`aB=Lgd5)h3UoI?;u()?jF=6P#2xlIl2Do((3C zraIPzQExCb)zQT8YYA*6)e2XhEhdkqI?{!)&0uJ%!v&*5h3qgHwL*qUM)r3#OS{R^ zU{`^=Ouola=|7jdF!mUXrwU^rF)UR#l4^ffp8Y0|u4q3O#sPz&E82$`G0p1{QhgZ# z#Ide;*yPbvU$`)i8VpVKnP7A%z9y4Vi|+|DT9rIScG_HpoiuqgJC9r#rwxW?=RtAo zoHZFWJNJsqc+QjYPH`D8crxB*M*8``{y7$ifBtq1exCjce=+kBv=_^2~o**jvT32 zo~d9=)N^dc`?Qz}>X>*9n+4%ji;0O`s9;=Z3Uh4sp8qcy65sRx3@Z=9drL$HB$f-$ z&!yqzhT-MB`bIMdkQcpB0^&t3kjp8$!y&70bD3m1H1^x3cx_$CXY1NO5HgmzEo(c3 zQ^OCastZmH1K+J-qgg~=9N<@)1x;!eDsAqHO07A3BgXrt9$Ka6Iz)x+rlmiE)_U} z(g@=3)k;Aa;y?wytF0?qv6eoK?;33cqP4Q8^IE|Tk+N3``@$k+!tbumsb#$3LaPM? zx}+AauvcBRomT_NbQp*xn&NdJLcSus-gK&Gn?s$Mf`Mof(YI=C+JPvGNZaYYg*OmQ zGxgBQ+|qevW@Y0WI~9>K;dWE!bUD*7p>+uYUD73Q>~I94jUZ!ngy&I=0D!Qu<+-M0 z-4Wj4!l*VFx+A=f7*=n85vi_mzUpQvaX>+%x0*t=bn2Kt1Ur@Zc^HLV+-io>NT$1#5 z>o7-axBQ?QZeZ!nGo7@O6{=Ph!hA}(o=&Rg7F-Mr+BkuR`I2k^a@Ui!+&GnWO()gK z84uTVQoY`inhmHmn_O0LbVToKCaG-t5uy%+Bk%vTJ%?&k9v}^jxR)+@kf|>hFS{>$IL*_10rc&x%zX z1<9vpVQ3oltfwd%$RPkZu5gDDnf4M>T^KtJhV~MZ1*1c!wcBLWPHSRu8TWcJPGH86 zuEzn^W1Nf2Mw3U^W2_6~puy1f7+oAYhfPLZj|yhAoG-Q+V5_97uwy2VW@oqycq0@|-hyG}V4Cj0*-sQ|%)d9h$%; zlTnNAWtjHYVa6+-jL(b9c-52fX>l2^don&|MoY`LDY-{N%EXmhCXbffLl;J?!O)Vs zUmQDkO-3!byUZAx#}1O5rK9pW+!(y~4nB%yR8cf%)6aZ_RR@ zDkr2|bR&u+2pZ8%_cMsKVZ~j@+k2 zKc&6Wr95(yg{Vcep*4o#_N85Jg0mdsUbq#!DeIBKe57v$Y zK}+j>UG-~SYiM}uTI`x)M61`(j=Dt4H8c>i%>S^6HYBwj$Ql4pjA;81_YiP9YLK%G zN80=kx;P41%7)Om7wGRRUy{Y?X`b({M*j)Z+1!i&E%7JnbpAZ*s*&Qxm5KProq3_M z1%&QH0T{waonC4HXlo+9trPl~9nqlQM8}?|^uwjHL+=Um>{Xg1uchJdmHbQm!LX&A zeh~h!!eoAr8^By)O`RbTr=tfk#zQSM0?|8VcPoK7j~+;M-&1}2Cg;(E1LSR|a0S0x zt5YYCJ4S3HBtv(ZKieuymX(?Ep&*F&{WoRI6WD8z-@A2P#@l z=r*8RD!Qcsiog#n^{5LJKE(LNae=~B;%-%{K?j#5{*ekYvVxC$NJ^5Ml~M4t1yB9P z@h?%fm2c`%s^#miXn-Q}k&aaA@ZuW2+Xyl`Qmy9m218bn+(PKOFx$Iaogn21aIKW1 zu1{D;EC6_Yf(vc6peaXtiD&>QcK*}~hU)f&AHmCT2Wh-CK~K|6+&bdI7Qa{WFYpH= z>vGQa!9=q(QP@V6whikpg~m7CO;tG=W0{+b8R(|E3LH9OCmT$a-oQYsJyyOnJFnlcP1h6oX;ewM!dSWQ|iOOTl^$O zu>p2>Qe>%>xZIdv-TP-Kv84xd6qN=Uk!- zK!vr%LGDlhpy^HB1F>kfp-b|S)juPRY5;yjfZV5$!vcu?#72dlFwvp!Q?RaGkoy#% zNh1`h7urL$$)oj6lQy|(!KyDVKj21TlL_jrMkeqdP?y4Nr`@a&yTQq4J+iDotSxKc zn`Kls@f)oDAzU1^t`g!BrqI$wxQ~`w7gHH?+F{H|&%HU$R|bQ5UM_by<{BvmF1)r32>xVq1jq~}3FfNIvEK<>zPUXVd9ter#k`EFg6-CU2k zjc+99aTbDH{>h&AWU^-w^}fLJI`0-e+4F$;<}2yLHk&DR$hFop*>jYL)d~@ldNBNM znAAIB#HI~vo)VjLef(Xue+*91xqplSU-_+CJ=yaU<*%Bt0kW7$y+&4Oj;fGjQm;u* z_Ed8q1iP#4U{bGHJcw&juSqw_T0NlvL3Mm zs|V}dM|as|)bkSKi_6&J$vBo7tx3HbtjA~U|NEwUlXYy!v9=k9G7!1wM zqvF^ZWHM@Y9x$Ud+;bH+#N^TJ+;w3LGZ>nk*5cS1VKQoVZZV@JozZ0HhO4kq zCXZ(4x(j2B!O-knbyA%`s#jcj#+y8v>SY&3rNPitFFL7CA=UG)Jd;fxP4%1$W2(W> zRL?r8&LGv(t~^yHkEVLcg)!4$XsRciROgavlPk|0lSflM=E9g~Ff`R8#IW4JLQ*~C z%Co@a(Nqt*FcujMO|{WUwU$)(x$-PAc{J6%E{vrHLsQ)?7#%j)jFt>9`Bx67y{nwm2HKx`g$fuEH83ZdHig)+JnR zDr#+O2uV-c*(GeRt6(jv)pxC{u!0rZq$=d-5;p6uLY?j^)OV$;(5$-(^}4H&%PNM- z`ML_i&_-2%J;s(fNGeoKf~qOBO=KK+9JAD9YI%E}HE~rZ57wT4=Nk(RwZriMyx~4s zIR#jc2fdE1sJ#=wQ96q>-(WDNmoUt%s0^VYHbIn!(Dz|>8j*8tQj)xZU6q#YAlK_r zJ8S;vf(9sy{mtC@qjz)XkIoQx9d#81uca_y&LQ;f6%!HY&xlzQwtUR^tl0rPkQ*60 zR`DUG#Z%1(YgEZRwEt4O2B?Y9?af6Su}Nn!)XDpfIkP=vaE+yt3a8{Nx5{wPKajfL_KJoI62b%$_W`(LTY5`L>?@i$b;zQAi1t{=;V|JD4qOKu1-G6 z)yXm9uCjFUf!4`~S|=?ypXiuG=cBEYR-Rq7bkfELOD9>UPMF8mi7<_730b?poSxrbsoJ?--s=2}0T05VU~9%;IhCkK7$>M00CGkc#|;NMS}k*7 zoHQ6ZTGa|hhtcY^$*7~%VrI11IY)LDxe9AGc{Doz^fc{g;m>OkM@3iOIqOk3$dpR=J$7#hR+d#44_Q^4i` zcv{>yRvN$&X*~t+o=$AS4kESS_o{@Uq%5R7VO2+?s#w&pt|aFgX^*mjRDT7^v_7C% zp#k86%a#>fet>i;xg3GhmVbdin3k@>+8WGEW>8&@!0K~wLRL9cGkSbx)U6lGMk;md z8B$r9k`Jl9X*R-vPjzeN3)W&dGURUuZ%R8DK>mkOtI|Izx*ZHI( zafm|fwsz2Wq&*bZ?O?DHjI$lIHwS9lXXy%qTRtWF6tYV*Nbi?^;E1apHXj z`>L(hVoenIiV;_^A8d52gMELc<1Pn#xpQGFPrb|XKwprv!r2H~DF6_PX@0{E2RiWd zabb)!7&`F043dVcjeDmPN12Q|x;|${i=A;~=c$k~?2I*eG&@gR7~>6wW~Z$zMDZu;mP(%^t@worrf7Vz)VtX{MsuakK`dAvhgJ zM? z#g6EFjzbu_!TJ{np!@Tc%JPHyd(Yt*d+Xp2&}CxGf}rztl(fL4>W%gB(w9jGg(mk{X^waRwD zE2WE@Fq0aJ807Z zv_-dr)~*E5HXT4)T>(_FiXG$m+JP{12KDEp9)jq}(`Ehh2qjFnKgPhg=x-21B!Rpg49mn~a*B{mhu( zy{K{OZnC(CSe+ZEo@Tz?!j?14ws_pjP9pA7h~4I18capCd)e7}_tMfe_p*f*+Mz1s za4+RL%$8%{mh6q`N|-IzVYb2*W)-X0lMqyU6mrI?!q7I>zdORLbDX-5Ro#lJB4lwN zZ?deBkj*H|3a=+MfP-AzV}s$W?9Y|asEl~iGU7c*w0cFU2Pmb>4imBgl+t=H>2VEE zl(795l++-i8O{j)&%OYUzR7ZKEqt(?8xc7iRukNOfP!QUk>&8$+5_C54@o`MTh50b zdK!8dAJTXu&h3~*SC1h;-sRkm89UU@ZJn}1(BZ^z=O+w#Ct?*YywuKZ4as%rhE5nZ zbh}5sVltlcWUOOG%YQXfC7%c><4(_-JlcP)bYYw`7}|d=FOHoHCZn#$Qf4gVziyDl z#l-5I{~E$i>edKbPXE>F@n6?iz#@g%ZT{=3si^i}3zgk;rhC-dHUD*y6`HRqb^t&J z{_7s|%~X_>|9U`36)0K$Yal5B;PPMeglcDfPw|A0m~Wb*)DwKYf`9N=r9Cl=_XdBL zJt4*vQ0}QcV}DWxfRuj+%W23~+VkUHugK$XVk1^hPlWpJw zbX{fb1QznI=q_dRaaWfTZ(UyZxoJJx>rSNg*r$*>?{#@8DGIi{?gR>7FVpm;@Bu&p z#s~JPu;&N04;=5p=w~pr4;(8P9s2SCCZqO&ql?Qp$dj?6xQv568AmXq6$FM;0KzqZYuR;xdl*WE@aj#<8A^{g|<+J9j2gI$5GK{_vu! zg11kMBl^n#t%+AF>1&YMFf6oJJK5R5bd9tdwiK*&%5O|5*cTvkdD?sX#6(jM9aUcN zHsKDpgv*XjYeuI{qKdkGLb!b<7m|0tp0SLnh6%mv8U)CMo)YPN<1}~g$h7JckaHZ@ z#783aam^}x+QWHVGs&eF=W)$F6#ioh-_lh>amO|Lzk-Zy%t#09{1D!3l6-_W@Z9`| zt3?TU03NNQFnyUB02LSDW6-Y^{adp#=D=rzj=hcii^cYTi$A!K{Kxq7|FQSo@pT>7 znYj1$LW!hho3>>eDr-}*oyf8rD_KR>L%eG{aS}U@y-L<`TgR(7Sx3n_S#MUB9~%fZ z5MTv6*uer4>|h5;kOVteK!P3YULzS5^f_%vEh!U3R~#w6H@<=@E7I->S*!|*}A4Vy84k}Ue`n+S=$vpWBY9Z>b+l9n!MR9AX&1K0D057|jb-e0c)^U!?o)O`ZTeZYO z7qRD? z8OW_#2cV%EV2G)3xlg6avqkHNG|7jhEnp%yj)3tL*;gQ5Wu%>_`AqbO+~I)$T~5`~ zL`RG9KwvxIGEWVNFDKRH#cft5@&D!ICdq9T-bdQ7*4kFscg$L6D($0!TSP$&=H3=j zva<@h0{=VPAWlD1X|HmdY*?Fx+x$!o(Bp`LS;4#4zHH{X{c0x})F2E(7q`w-s+Cg% zt#WwMmSbul#<@E$F_}wRueaj-qVF$cS4gg2 zi*uP4=c80`-4l-U5iQPZ^N({`$Kt%7464)OTqEP$EaTkLkvP}LIJbD>EL6o(t4wib zg;r6VVnsF z0wYLn7}xKd3r}l_a4;1dDhfWax$shDsC?iJ@t+8-S&Otxgn1q!*pCb<69zdRcoi}c zR>?$IlOqvkTyt6>6Jd>KE?lUJfoP_=a8{@^zk${;EPpwCHHv7Cyt32U-IG zXSL>0lw!}U8`bBWfPCsM)Q zqTmy2&6Ubf*_wOh-)j@Dc$TXU^!&2=4V&6Tn>*LhmAP!+GNnOZX| z^w7-f)P`xwfwDCN;IUdWok;9x&G!LkwdPsmF)&=Md8X1pw&r`D60=na*_!WAiHx(7 zwVqi??GU-Wq{A(ex7vBVzgfwFT_JdrRin4VItnvQZ(#8~PlZvqJ#&nBJ*=f$7wp61 z_>|yp3<@!+Bs{|=0JJBBNXgUV3uZ=Vh zgW1GZ`We%kKV^mTUAw+m#X!y;wz=8~&(XBf?4ew{-s+q^JVeG_A^~z)E4@(TbfKy6jvof)GDVSRH&Q7u+y^~zu_Ihe%pSH;F))NWue)at z-*g}Jbe_r{rn1}!T4W=zPIM}x*%sHR2;SPs8w3BVtv?(}2j5o#?c$ozw{Sb0ff1 zsC>w!acEv@H~nTGMULWA=bSe5oZ6JOX5GA>=voeX+r}={HstVtYsfimnCaA}3Y^;1 z>O8fnnlx?_4H_zy$Z5kg{SB3ysevQgHRA6gOEsUOyJc9+{a@w#_w&xN# zZP*;esZFfVuKb?=`&CWy`451{dj3C!=YOS|Hf#i3=5eRkv9yG|xWh^z-F#0crRkBk zU3lLyZCIm?JC9KX+eE=9Hf`9V+$I~=R^c{3(}q?Os_EEt(m^t4voOdp?rfCf&I%fk zpxsr5;CH!QI@893jMIjVvP)K?OHzAttBRSL|`~&gc?p2nG^{nl`+sTqei!t34$ys}gcNzmiMjoHM$j1m&F3a({x?G{L1L zXiXd5B0H9Nw7jWgq#cVrCE8U9X~#l;>fBL+(vJBgXuT#qAa!aymEBh|Qk}V;5)V}g zsZO;MwHGDKSst05L+n{Ni8|9$qPHp`QLCtg)dWfib(%+}uac3dQ#~d6sS*-(GMC8N z1O_NU>AHy|Xt{1MsWZV-S*end>Wuf4C{rb*I%BDXwJ2>Ep^o;*3{^4`b(E*Xa8*L0 zj^q+KjU1^2rIEw^369bPhx!v7qY0M#6C9@r4)!NFK@%M0PjI3pIDiDLSWTr^^HOXQ)*4AD%Z}#G6CWA|)eZb<0y?i7Fvub%RUf>{m;bpp4Zue}c<3 z!7Kg*S89Tn{Rytt1TXp%T%!q|_b0ec6Ff_TR;)Hstj;i0%8u0rB_m^X+Eb!Im5{MI z$t7~eYO@lQu{!QgaH}TR;!kk9CV0f3V525@$e-XYP4Iv}!9AK_GYML;YNlB2WvG-L zt9?pF#;VCvV!tXOW3`)0l=l!K0esHh+T0G{G(Y1W#y!oBRo$ z(gZh>pcSjL6sz?Nm9k^is$^uW>OCdSsS+|)Yq>K z30~C%m-!RCt_jxq6TGPjE+#=MR(B{?3mGb9$Lh9{k+E9fDREbokg=M_C342O`+Y#xILn`4FHLZUKfykl;BLku%2*BZCpb|P9N6&04e}XeK!CoY2#j2WO)q|l@cC2PA85ygzr^FmpLdNPnfckj#P;xR<@A{IP zugU$pFS&)9+^>DfE!O1z&6ixQCig2}a?3QifAJ-^LX&&Pm)t5%?w7vg>NL53Bsu!R z$DfI?AE2nN4b#~C6F%7$r6-F+FjebXr!a09FBCjybozy_x;H2}*>>L6>TbD`z3xp4 zL)QIs4I{nI`skHe|E(Iv&oqq61LE5if40ovgB=>iPc@8|o0eBI>#t34Oj|UZojK$yR7=s<_z%%&qh=%c&hEcgJyB^0hjPC=3 zj-oN~Spypqu`h#8t);CY;iBNX_>_WG1K2Bv8Rx>_ckvnYI3>~VQpGsS=@Zxy^9IhW zl>av0z`jQOyF#9QgTp8IQ%qTR@#(q&UlURx$bZM%k8pQ%)_&Bg>HVEN^*&2_|M_F; z{jGfUzO3o}tvvN^BfY=*n0kLbU%hW?dVgK%&5h)X1qJlsKTNGdYb3Ww>90Me(nXrm zXR|kw`RFnJtymc;D7*gj~HH^w;$F8dkb`R4qUI9kndCp*16+?dq zu^Ez58?A4~w|sm>FW_(bZ_%S z@k&m{@N=3UTXM9Yi3&r;;wAE99uI{{G$) z%T^5|sbl1@Wrv0l*D-R~vP;8=>KHi&z)czkU#R4IPNzp^_i3|+ffG5fZcn|k9aJSI zg!q+>md&KvKKl#tl`j?Lf20bYP81|kMq-s=8oxE(qmt&Ef(i?s3KSF=B=>?jy}Q}@ z&w_6{t4ODNuQCw&R6*yaI9EX{|D_6$cqvf$yh-b8#ahrp;uL%bKhi~Y)euZ1UNC5N zDE~&hIVl5rD)hw;1BBXCja&b}w$(2*y3_a_`qKY!8d`U=kpA}~{jWPc4_~JLVS{&f z6RLGLztQ=Vq32T&`Okm;3t#x%-+TFsU;N@LuYBp%S6}_|mw*2&U-`;w z`11#U_@7_@qc`4o);H_cm2?Pj}q z+q}bc*Su@qGw(A!Fdvu?&2*qgpl6_0pf^*WfS}?)-$03^et~|0{(%93fq_9xrGe7G z;6NEud7wNnBrud|SYTLScwj_eWS}B2ifMFUbYM(iEYrBaxWM?p1g6SBWnf}pQebjm zN?>YWT3~vhDlmg-WXQ($vo3)9wsplyNefgO?> z1C4>5fn9;!fjvx3fu_LTz&@sC+yuBkaDeGx;9%fT;Beqb;Ao(Q=~&=c;CSE!)5*Ze zz^TA#rZa&vxcKF4;9TH*;6mVH;1bj2fS|U(mB3X=*8Vy3>qzQK}UKc@b{{=oskfx$t+(%|4= zS+G1fBserUjA?jK(TL#4Uv1zird1+Oq&4PFagXSxv-bTfD>*dDwcyu)-iDCl1Be(*u?VK5!)5$YN0 z73v-86Dkh%4V8rYh5CmEga(ENg-Sz%LuH}z(2&s3(6G?((1_4TrixHSXjEu)XiR8q zXk2J~XhNtmG%++OG&wXSG&M9WG(A)mn!z+PG&3}dX?AFKs5&%Mq4sD^1?XkKW3 zXhCQp)1uI#&|;<~p(UZ(&{C#lp=F`vOe;bwLMub7LaRe{Olv}GLTj1Ug#^`y)-!Dg z3ECJUY5;8tZ4PZ=+8Wv#+7{X#+7W7G+8Npz+7;T(v?sJD)D+swv@ay6IkZ1?AapQv zD0G5OxHu#LpMS$hu4EPgg1g3!kfaIL0iIGLEFOH z!#hBY;hmse;oadqpr-I%(7teUct7Ys_#o&|_%P^5_$a6)d<=9vd;)Ybd@6i8dePInRZ2XMRrH_M4BRdBl{xFk^M{uB7zP^4n+<}jzo?|S|Z0H$0H{qCnKjKrz2+~ zt&y{lbCL6r3z3VFOOeZww#b#p)yTETb*3AU8-s zj`oQ5jP{E5j`oQbNBc%gK>ecqK?9-#ql2QQpuy2HP_G&wdUHZ?X4G(A=Ynh~2Bn-!ZKtB%cy&5hN>=Edg67Q`0D7R46F zmc(jfOJmDo%VR5ID`Tr-t7CPsHLfh#ia_iX8?Wi5&&C#E!*|$4u zyf>&%ycpCsUJ~yY?;jr!9~d7LF9i*bmx0RTLqJ30!$8C1BS0hL6`)b^(V#K$v7mAB z@t_IuO3=jkB+%se6wuW8G|=>T6=+6$CTLcCHmEv22Q)Wc1DY3~4_Xjk2wD_h3|bPe z1ucy)11*oQ0IiI#0(9ZZS z(C+viP*Z#_XkWY;v_F0TbTEDhbU1zlbTr-qIu<_;IuSn!Iu$<+IumaNosFLZosVAt zU5sA>U5>YbuEei`uEno|Zp3ebZpGU{x8rv}cjNa!_u~&h598@XI?*H16Vxlw8`LLJ z4C{(3r$n(742S(1b)K zXkua#XmVl-Xlh~_XnLXwG$Sz+G%GP1RGpXunwzKr%}dM&El4Z`ElMl~ElJdZmL`^g zmM2z#Rwh<~RwwE}YZ7Zg>k{>#^@$Cjjfn=(ro?8@mc&-jw#0VOjzlA9XJQvXqyb>XR%6^-Y$5 z`X&2=1|$c91|>^DgOg>T^5hWE(Bv@C@Z<>4$Ycd*RB|+EOmZw}Tyi{ULb4JxF*yk| zIXMM1H8~A5Jy`{sk(>#dm7EQ#PR;?%P1b!2ISo1k0CcF^tQ9njt6J<$E+1JJ`{x>LGSk4`;7y*l*<_32a$>f5OV)UQ*2 z(11<@L4!J#f(Cag1C@6g0vg(B7-)DWdx1!*qRTI|MIr;OMIw8}B9W0)K2_1x+HQ^u z+snGr5|Moc*nGgtaq&a?L-d1OSk%_V@k0y!kWQB|EXlQkL4Tu^EML}Da8Oio7~9}8 zzT8E5`-5|}4Xq8S?8;)!#VEEFi^O7-5oCo1MZ&dRi$cXk5Ao;eUb1%D4d7kh(kpF4 zK75K-&#)t33h=6PI^eKOTpiO@tUj;p%9l-umFGiIdjJQ^d)6#ttxc-T#3IHaop@Oi z7Hd|93i;|*I*_QjOJQI-Ry<=#WC%K9ZD{~Ya-vvUN`K>kL##24yh{hM(Q!qUU9hzD zX}%WYN&zs-2{T+2Va`{;C=-kTGYY{NEEwV{jSquS$_zeYj}A8;gdee3p826*1>hC5uft?woh0*|WxvgHQ8?Sgz~xuKn_ zPOuwxQ~Lpfl!-BC195H%j%W;D1>+_dP;aQ^nGICa4N;Tr8NLaVYO*|Yjnx}r39Ta` z@NjG=t&9#s%in>Pbc$yYACwoyt#7ZH1stp^tYw@Xw4HPUgBpsBR!3-UF0{`fMoB`8 zlcRu^`~xh4qo#U^G{HJm*}hkjEO@T=f&)N>cP&R9t_!^Any zI$;g1#9c z5<&)pOQ2JcnRGEzXD)fl-3}H~Venk-fUm=Iwu2K4pJe#6qyQKcWV=JpBbeg?hJwrs z0&#jOSwq-AvaAg62~5DdAF#}mBPghEh>Gts$476_c3TiiM|V-95|yNTYh-^ zkNmlgorYhO#l`8B&0SOyX1Nfy08zw`l1s3{TSjIM*#aK9gmjm-G@6Abwk64j0=V?s z0?RT!p|(ieFsNBZ4}t>X(lf++Z%>=DOFl!6kX`NrSZn1;g^i|sfXpT(4{=yN%AIku zAsE!`K1A(sIx!BC8R4Q2bCEv8IUqRCU=3&LK812W7&uySQ738sbV6s93S zz@xm5YcEjwGo)08=Xf@+_wM0+a_`c;j_V(I(^!?|^$Db8Bb)dU?hIqerC?A4YEDWI zj;2yOgejH>#Uq-U3_YTu^hcB@hZ4wk22o)cNg&(YAa)qg@2z}LPQqKMoCt$(?q)|A zcozv6Rv0)RAPgcOG&o8Qp*q2EwTHpP-1rDZkX|fBMw22Nyo%I2;0F>C7?~AWi}pax zzNQmj_u2hkqM!&{oup6ukt~XE&!8gceyQ%_7Cl@U^pqGYvaI038z1F%A%5#fN{w{I zsB5UHj~~6sXQFB@GWo25VOH|7s-U)QGhYfccA>OQH9hE8>ebEu5{Q)cW%8w zE3xf_OXfYpPRN;ImvJlT!dYl3843pFrOw=m<`HKpIOs%Yt$fgn%&(YKkw^6~}3mtazQJ_#IMmK8K_$2VgA)01OI%{TRGKrRHg- z)MhoMl1=H_0aMm!rqt-BR7z87EmN+Ml5^ZKxFmU=7}R7{92aFF1|RBx;+r(Zt98Y3 zw-v{r#!~zODLIQ{@Coh~=O_kXP`CIPJ-?fYF;g%;PEYGy#F!zXw9LwjX9%atiW0qd z(0HC+2Vu@9$Q(J!roZi^KaD)5MsFtx1U%s}JE5dKqqhnky?s2hk8+IO_9-vP1Ui+x zWG9mf&*&`;U3mj{&fGGYo!E^V@=0I!FbU4DQ;!#f$O8M$Z(n97|vMG)y$qC|)2dMQVIYJhL!4``r z3Ewfw7clUXB>l8~$~!S1_epYGvvHim#>aY+jCQx&gJc?bo|cPyQ^ZpPosLg&=9c@h z4z=8~nlYnX##DM*Zi(-fI}$kIqEB-7zfC~{gE-G}TfRb^5#V5yd^0MCLCs|EaAhw~ zGd%0)=KMl4loR3s9O%kOO(X=Ka8hS$5P>L@le$r6A}3)`K|j+g4UPDtI4A*4|C16N z1t_P`AqyQCTeNFV9O80f#<2yZhn(HNjGg!?Hnb;An}I>eZJpKMcaimjE$f|q*VRPW z`d7`)!W(axKOo~j)u9&Cqo@6DA#+`+W^9IWqRfS_nm=F{`>=f=+x}^`y&u^Q1~r!} zF&X(CWcvWJ9mafG7$Z(I)@=^PI3WvXJT*4|9vPxU2b}*n4 z4yTbSZ6ao0sZwEPl?E%7DuhbKkD*d;lKo;qV^_W`B)~7PL&#hB1zk@Pz<(k97fuZ$ zZch{s$T9c^QWgxl=YyZ$I1>^FhQAbO=}Px>quab;zJ44$Nb~zSJlm5=JD5dBMo>y+gyfQQorbd$H4-jWmRDt;r^wL7> z-^fq6OhNF0(}GC|4k-3gV%DTfQCk5`K~n)fUxjb>sKA^Ft|K9CTUS1LzLILVpP(w} z>S3IZAFvV$rlf(}j%Nrqfu`CD_*oi+wN?T7y21|`dp;$NI)#*D8ig;l0o(08#|%K0 ziIh>A=k7^|u&?UE?^^m)u)^|6SBe*sTZwQevK}>u6kho;KMHx;=ZYI65a=NN8-Mdm z4q5AXA**0x%HUduF=@KjJA*N0xC0~Sr-d<^HKYyDq}p;;s)p50%WIu00#f~%q<*_J zU$h6#IMg=K9{8&3H4lTGLyWNhNGjgWIIGN0{X2d(Q;TB-YexQYD+z zCdd3GR!~NfY1c&*OZe*+Qoi^~g>Pk&QDz;o&`w{(tSKxiE?br;NhQ^r z3bzR?^<{1QHzK#KoK6stfN7|X<0(NK6U2i8^L!Y@vR%*k8qq% zG<7wKq9=icU(n}F!8pMxitm`$sX8#+)miq^>~NHug`5R#Dd3ma>Q041mpanrxD@A? z*XZ;V3X$)ie^r9IqMSpOY^cKDL?zoQ=8z&B_B1{jvrkr&lERe4A|>Twszd+{sTZsqFJY(~YF*VWny3)B)lg zbZEMS>I8!|rMg6;g1UA1fl`W%OD{t)8N1HX7uyN%0L0NG?60Q_33ESTiZ>>!C3J%@ zeReMtYV32Uv4?QLpm!7d+vq&P+3UeU!|~wkVI0wb=8y;&E}U7!-0i_Z)NLF#zEK!2 zU3Z8S+DS4Z$lX(yiL=9@a}~jY!P3o6*R|-bd(C!Tcj>wlgtwhlRj!*#nA<$6Vg~$W z>AKg18e1G{oFyDETqaKoL?3)i&g!dj{r zBPR@)@E5&Zf5Y)J&D?*DezuZ!gZwl~$(#7NxQHJEWnJ)A#7V7ASYjtg-x+HJIRetQ zBMSXwEMAb2N5;BG5m~JwA~V)XR2z}+azjZGFq9&GGFBN$t&mbrB4hQYC(?4IY3I~P z;w*J&I*957gEh@RV+|m@T8KL{R)4}=LYR-rSggh(hZ^OC1BR=+^d+2y9voN3Vx0Mm zBf4F05&^@7(}S4vJUBTr)+kbFF3DIKYc_GJ9Xdatv*p2H*X5tFDhY2ktEw{AUBaA2 zm~PkE86w4M%y6hNjc~wlncPk|RURBy#$udlj3ZokgG9h^;anx=R1Z#$j5UW8noKgT zj5X1r^JRhs!|osNXU3}O<((p{q>7(p#v0GIi6vasw9Eqx$_8Q$R~tEGoU}IotagE% zHP+!QUs;XUgXNLcmXnfWs1^}5nbk(I9bz2D7hiy3M=i(rPK?7&llm1>>Pcj^b)@M? zrD^BXUg8XQXnKO`1cNorKdWsfykQV`W;IO1VP=~!-Cffj_Xsu09cnZZ4j8U3b(nC< zJUFhb#^#hVj_8^PNCXTQ&OTxe^5EpiYR#n30Ftq?+IiyibLhN>V8LM5<)77#5?%?! zovzzSn0*P;?K+j!SdBgoHBJ!@7%r2y6Hadrjw`D%PEW=WuG>N)V7PD^h}pw~lOwBL zB!wQv0qx3a_v7lRzn);hu=~gRnbj_9S?wNFd7@eE4goq|RDF-b){-M2Z9BqO#^S}O zd1S11ipXsh5t*@WIU=%}6ahmi;%6MTf~0OrsV9-K()38Up)~EB8cLjN4o#O*onWx0 z`Dd)Ygm)F<&Thw-wOt`hcehg+i`BU7P-76`fZ^&c3rM$19voN3Vw?+%Bf4D;iGbn4 zsV3%m4^EDZHJlVWOEOl*sv^!Aht4wz77TV>{uyg5;hknx)i`WAVV?4+>UwizHBLCx zm_#^WxJ;fxILAFWu8hSvEe_XBBoQ!NIOBK!`s-RNMj>+;WG2MBK+tEzI?eZGy_qpB;1u^M#_HChM<4427w2xqki$Cbkv zXQjh+d_6N5E}ZLxv%-UuBZsw;Ld!_TmBVTsI$t4JFzo*Ee&(=qS`J$RRi0=LTg0}B zDfk)mkpT?0E&m+Gw|y^kxW-owMj~Lia5fWjlm{nA z4x2^_jU*XY4jb;!c_YDsVfT;sGly06@s7iWL6s+(!-f!GN8TLk$q|sY9pNiu@eaQ{ zGS)nbNV$rL%vggR5m`fufT0utKINdS-yBzwRH>AD5*ceLX*x)0+BvnAI0GD-E~h%d zU`_MSSapQgAL7o8RZE!t2=h@Hi`D4sP-6q(fZ^&ciwLLKgX79rjMJNOM8=v=B4D_1 z<`T1)2Pa3y+D;1fAQ>xT9V5=en3}MeO|W3F>+;W7O@#LV;!fAiAk6!O>2{r(>tZ$T zI@CBwIAFL;o<=x#JUFh5#W?MZBV0F`M8I(2R1))+2Pa3yIzbBEAQ@N2y5`V%9KnKN z_mB58W1Z46)>WwTL^DO=9ly;N-}2lS!dQl5yp^ z?GBx<5iA&X|9C(1+|*+4$ZQ)_d7^o43juayWY$KGfVAxhUm1%}Jjf$s&7p{FRuPdI ztHBYGi=+q`N)bOJvvVZ1QA$0DjJ23F-Jmq>oZ3X3dWWWGs7^3g)BH2mO2S(Qac9Ol zNtkO1^HCX#)u?l*v5s)SaCMhsgtOX%wUUk+E7xp*bYu%2=}T_;T^D@{A6`jUeuIy7BLb%Mc~=AXmvQVo?5cjmBVggJpQAC<#cjd2b&dXQdV zxH`}h!Wrwqapf?^8O=B%hb<%#FkCqEh&jrGlOu=qBZWqijFrR25@)zW=Q#um2D>i* z99Bkn!&p_7!)6iYP>-sv9L8#tJJc9KIAFL;t|FW=4~{E`F;1z&byGVHMVh-}) zfH0O0BN9to`>?T3@yq30 z@&_37y4i`-+*IQ9mL8&WeuPj@Qp+)R!wCvaA-Pz8EO`tCxP;s|@H}ld;f+DGDWuHA zR>S%NYcm!0itug}YoTyEuPf(6p!B^WB+rZfvCT(2RA`R!pWH>*Ln!LrJ%(MG@M(KQ z?!7wuG!%XqC8M8aqnDAOG5a`o&&jmU1`KMc;%uuc6vb%w?}*uzd>-p$^+($Zej(NZ*TEr0MiJ zVbEY%z!_<^cZrWXaqV3?&rW`ZJO4Ry7Z_T{SP_@#0}1_{$6XP|r?UdSj8ntdA$&j= z>fw_SM14t-K3g^2)2l4>euRz!PTikZ=yVtsql+`iGNGSlYsC3z#nfcLpe7^E?n2tb z?2~Sv@?J4%aMG=T@}4-s%enLGxMoe|YRj5lgoOegYiKhP`Ra=W;>bU;3L>Z_DXil| ztfIUvD@`UGBM9-3j;4AN=O}88%1sVEs1`7|2*wULoNIbv9LG{&T*nx_N#d}==q%!J z5EwCu@!%;G0mH)ROc>bS_KYaHpPeesTfqTon1!OE&SxO~AUltHH(LYmW^37x6UexQ z-KCnEr8sSpp|L*-W!lXq*|6L?jD<$qaG%`HG>BB$rwogxP7`_)Yb(}D-~O%&f1gnh%LkRxpY~c#Dh!hk&Jv2?}19%Q>u=UX#30?>$Qa}}1}V*k`fk2_eiC{Vnt*J< zvYUc2Lp15v3!o-;ak?6KC3$|c@_aJ2oa%3Icz%OqI6QA3L@XM3?IRjE4hNtbJ96y8 zB+c_1GkLzo?fIpo>U!4wQ~bDIO6Gw<`T1Gq;J`IZ)d|igxEaqS&N|{i*WB@{<8)J5 zZ>8V`ROebLZp90QGNl{IMnB*~v{0Wr-OMIc))1DJi>DF#YDYBYNrodD?|-_PqeWv? zrf9VBhH*RHOd(ZQpdgH)(}YB(U(UvSl3hQa>;;31(3wD@$Wj5GI~MIC_3yR%&UmU3 z(yqRPLYZPA+0ad#$0K4P4+EfM0O-6bt@(QP(tGzzE>Vt>d+BS*7P$k-s=_*lOKzmJ zPjnPd57oK&pb1asszQs`w8EiWex4e&N;~UBLg8umyG;v+u?nYu@KfV@CpdKxN3D>% z&~}O%7}Tl6F+ppHvrzio4jWz$ZetX}k-kJA3uK9mV_>9`K+&N`zR}h4Q&XNcq$QPX zgWx*N>iLADo?x^S5~Tw29m|mz*QIy&T3?qjqZuc9LoX1GUjsaLT)dIMc)4-Y0E`qp$1UIx83_ja%i+C7|hZPhviZB%rqMFc+h*u z)j`dJQ#B8=#~dEy19SX)a58)FdG_ELG7=2UgE(bb^s<9w)D9NPaQX^8*41S+l5TvZQ(E%>MO5p%4oSp|PQ@#XmBXBSr(R;`JuGk>$ zSLZi~hCprWSNXTChsp;s#}9CsMrSy@Yng_csBQh4wQF|S*OM&i=e93xq-M|o34I*~ zZXpA~5C#eeG7tl6X&6UYguV%}KW78u;mexsL>dJwS`Cg>{T4RfGX3D<=TTq1pNPZVwI z%rAiS1&Yt&J^S#xHazFV2|*4gbz}rRRP)0fmvN*8MgnvU6}-Y0i)PDTE$Hwa)hmZn z;BT`@T$FlcG=)TkiEMycy>bPG7z}Q-0>99Tvv|R6;7aY_lU)K3EzZZd!JF|%YBt_< z*eFg`;cji_ok5(-%;D@fg?_$-pAE+qKTFB$7pc&ruK1}SvGWl~sXKlalN5L) zmHCbzmO2YJS(p6GB^WRW$G#+I0pYX?oL8*tZIBn#^)`%inrpYOZK)wC@Thhg;PXMb zu4{f+>Lk}L4vDCv+QA@w#32#OiE~2eW1sz0O~}UuGW8(+rXNObA$`#*-9y^cIr! z!XFmi#fpj>e~yz9U{Is6;l>c$P8VF}8-EyXhr8`mkT7_zw&S|;ho!c$5`5>+P0|5B zle5H~KUavem97@g*O8 z=?@p(;BF6tsWf=5_Takpho$Pd0&(rnebNC8inV?1&p^UiCvY53ladJ9nd38eCEkQP zdhO3WEd#HGR!Hit^a#ZPnt0mso0|N&gbw24U&sRqt+TD@7*68jyp53XUmZC`U3k!s zi~*0FLdwg5T?Gwx)E7U`y+7#)nbwhee|q<~hY@nfzM2ek4tjC!to-6vVSVxIOG>Wf zxQOpsM=0-uK~0bE{aH?o6@nqYjgBJDa>3zyf69rm3=GWs*!TYQB;=)3%F6PY@BJA} z!nIURG{&fK=3>@KG{%Ps6am9(j5NzaAOB>#T}XacH~-wD(%^ag{tn!3Pn97UVqKDa zS8C?0+mVZZDm1q*(B0k~79U#Qk>6SGkc#uzLhNgPJ6 z-}^J2K<1*nGYnS=WR4po)4e}aNw}KIxpKlRM;O`&3Jfa@oD&d+&LUzn97QiuQ7~Mp zoFit{BUIt>l(>>?4yiI-Q)Q|H{|rHa@d#BWqeWPw(o_NN^>N+(bCQHn#2)pbE&K=G z{j*557&+db1k0=pWW60*GsQ9u*)zrNyMLCDt0uB3oWUrYcTO!M?gW5Z3Io!7-)WX=Hja1L=(w@LVV=1Ar!r@n9mDNFoY}gKECqwIm0W&9 zoYCN*Ct-n#yi}6xA4SDnskn?%apuc^+BqRSYK@H;){FbsyqEvfE7N5jt{~IhdAMCB z1bPw1RC_3Oh%_AGet_(gJdf5Tr1c{oAZ@Jpqt?)nyNe-3MUm+E?BeK?+4F9m)ro6bg3aUe%PT>bNaA^-+;3cmX10x<>% z24DSini%~>jO?p_))G!XD@J~<{^3DgUviil!mTD0@Pxzc7v~0X8Hhb=@?(0;bnNP% z^U6swe-@LI>=E3L-2=D=Omz7i!1ZP)ilr#+sO(ZV~q(ZlA-{JZrIgw7n5z^d0K9xr{%s)Ew^J=|J>J% zx#KeCZFkFU^xtyZfn#0$Gl=W}gE->qpFYI71r7#=_SHWNh*SU;Y%rN9k?Z+-vu)j^OZvVzRlKo095 z$WU297HJ>{br9uP+RdOxq*epj&mcJ?vRnzui0sQy`_k;rT%|x{M4B>y*li=T32QWv z-8x9+vh14FYalxbB!F3H6PIV0#Tdeb#U~{!T`3CE=Ol4Qhq#jicQCA{9=M&W7D)$p zMcD~S+zsR>^={RA72Y1QHiRvj?!d@T_pPM+rpMNOW8S*&(sTz#e!A}_-RmD)_qBQJ zzF*TF7`E=*VDKT1QgN6*I%*B(04cuuu@zsbD}FY6gK5ze2Zol!10+DLZ z)j=?0n$`AO8b~#P1fJ*2#%uG$j3}kNK=HfJ$9R820mg7N%N#^I#wR4L9k)|Ep2_Mw zPU5T5+A*fGv)c1Ovj-S{+HsG8_Q+Yra+>Z<%;0COy|)69A(_J7%;S;KhdvEVd~DB6 z&^(vxkugBi9T?uxT&}T0sRlAG1IQ3-WS9BrU9N$QVUU~ykYP$t#&DEgJ3bL+jp0ZI zB4apG2f@CjtRSN`kl`6XMq~#Wr-2OBLDD%uDm9Su3?M_ZYcg2_8JqzmM_8w6AcHc1 zKLP`z%OzDz?#*9r=N{#(UFW(sR=vu2RbNJw~jGS8t$o zs%|-FayNv$hYvBl2C|KI8^4Ra@_!Hc&310Rm*r*9! z^e4DW6Fkp?wCjPF_>qTmjZT^ri1hGTf3-I&LFwT${sa$bf~WFV`>+C$YM<~|dy5j3 zY9Gr``>pI#Dkl_(to^9J+D|J%S^HtVc5Ix<`j9!RKxFL)83dWAOHmEKK_V-a1nq9w zpt@yUm{+jY(;lN{Q8m&{Nf6moPQ@adS|4Yyg0)6m3rb5^vEj&G!`l9&*05euw#YoY zPvqHlu|U_ohLxH28de;fAqvq_R$j%6&sNn%v;vhEwicPZ2df|1x|eJfUvAndCpEF{ z)kTfga#it3POO4HPZE1%386uEJ~u>dOva_C&NWKSc)+kaygDrZ$IUIx4Z9s~z?vy6 zvf?Gm(gSr^WYsw}jr81!g4Wlj9+H6!`3TcmsYGKo(`r4YHQJ`}sVdhMs>^Mg`(FTCF%82nu-)6|8%!Dq^5}hB$kz2(c^Hb8%)NX z)F|Ot1KE)e#1)z!>K%Tts=yS7voF#IBue6}nvl5d9ICuIFmT-WBy@H5=<3Hev*bkEn$*o6%on-m^mQRjhZ2 zH+vi)y}@wD+L=Z7QHhnZM8+Ok>1oEbb~DDp><%>JshVjk+@^V&aV0flHh`|vRiUdQ z&6l}D_hM=macdo+Ymy8`5C*(_xWH`!Hjuq) znShTWFB6FH?c0`bYgqd-c~!X7zTz>opQCBdN_n+!WbN^hKfs&4HBBv~-*$Y7Wt zi%sTY;`zOuih<$U`nH9blStOJ^{v9Q^{vKEaClCCJO3E1(_%Eywu<~yg9L|dwcN1i zuL>l%zY^w85Ct6)`#}gRMQ>5v|K{miD&ooS}XP%<21M?IcG=sTn z42Zcerh|@Ym^#NiMXfbYQKhC~P}rKMXjU&owLDL;p5iwa^Ay$ek1>{c?T%>}uX!~d z^J+U_-X_gFt{M+rHm}_|4O8nduO@?eC~TS6sLZQj^BTyiQ7~^V{iA}-%V!#9o6=Lh zaRLKPz%hT5c|As>5|r<|Bm4>O(gcV36WpT-4)G_rR}(B_L3(c4vnjdetM)4p>8MhF zwI5P~(oqBb2_De|`|E0Bkezi#;g|xEYM1CBxokhFffVNtaz+E`oj=Gq4WwuOAQv@| zv;c9b&OObn5E3+!#eyRGnON~K$>7oAsh3kFytq%o2Klf(!yJG8iWyMlynGPX6WwBNSG z{$)DOS-wT$Vo?{Y$WcK`MzA6#?$_q9|xaj!W1J6tk+LJR*6A)&S> z?_Uh0ZU16yEB+1tVn9k^&o+(Y^>3Nx-^-eRF*I}e_gma={Ev?=5TfVdSX=5{tT;?* zB6B|EbU}TU<48^LTqZ%i#?hK!YbHUx#&Me9X%=*UYS^27SxKb=kx!YE0t6wd%#sWn zJ;|`S1Ici*s#_+*<09(fAht?pGHiAv!^RBB5QVK|*yc!v;qM0DOiiQ?(86ZfEr`}v zBLT_=EEoIvX-wSp8sw~!IFYA{@Q)C_IR8qX33>>|MC8dSbEyazEKSp8F9lw<#^@r) zH8N98W?QFhB4ca43HjFE1nL+=cze}MFu>);jw$f3y0j?Trkyxt=XB%jAw1I{UZ2*O>Hqh#A1GC7geR>;s*3ky|f#IhO zh-3bm$VZ-pqW97oWuQzbknCXCh1~pJ5_%5iQ7U+j7Gq(y!_~c468;v#7u~y?2>&J+V|DL(Dgp*ei|%b7 zYbCmO^CP-9+FVDw_iE)|*}WUczuxZM?(W`eN!1Nhkh*tOmNtMb+^+9wEgfhBYm|<% z4RF<%3}LORoNb`R(FU3`v;h>h+5q;ox!XV;SyivM0ejqs@h*3DKW#w7cP;rSXZK#O z43ym)a()CiYJznv=gm0U@M{U*dV236&SDs2b?*a`0rRShwxTD~ zaWQ;`BVIF}fgGI#-i?3jP91wmaG}C}Ry3{o4(w(s0tQR(@nAnIu?vMyf6E{nid5j+wx2Sg0@_jr7gF4+H!jb+VTliw`|K* zqAkl4$enGu-O-lYGPLD7)s}I1k~>WuqhL>Cv)-4HXe;4QA$+SXpCisBM|-;^8F{zm z3nW;nu%As`BF=aR_6^C%-j?~d^gN^wFk%GVMuKA%_KTvuk9J^Rqat9iw0OkYANIr} zwnaW-)wdTo0UfjhAN8(k?O~K?503YJ{-`H^ruThJEBG5?2-`*yV9qXiT`3~_GUWUS z-qZw#`x9)}1c&+)yrT)0v!E*p;F^Q1|S*B2gNH8`J1Y0PE>FeQr2c$sf?8!2pH1QjaeL>?&N+)Dd~WtC#$-pqpu4`iyNdGosKSX zI6B=)UsjI7mZKY$qubcg6Uot6-HvX1JV&?X?dU3HtaLOmxLM)LLIrfkv^wIi%xG3- zq)lF@x`XVvXoshj!XrPC;FAejIek5#bz&82ohq(6v)8Gn?Lv>aGOSwJA_I3p1TKyA zAoWmZtuoVIrz*Z9s3jnC$*A+v6(~v{IHIX}#61g8>jTGe$$-bIi|XZ<2%c0R84Na} zp_IM!l|Q5`Ab>OOdOD{T6Ze#(o)*bq1hL-2b3{p_`X-{5F-axxYD6_> z%QoH>Xp1yoo^<%qan=>t1`}z-LuXxCUu^8@j#hXBr?yD#WV>jDTQrS)&SEZ6n#pO7 z!+VBy{a76DN z_gr*^T`{_ZKX*3tl>&qN%>t)u?y-aHjDZby`cV0`) zAnrbgeTO7N*ymiuRI9IIDwC_2P&IYm*T_q}ifIF(?4`=Y7trQ{8&slQV*n5)LKkGo=v^Qm9qcCJBM&Q`IW~X^&4)aPfn1{lac`eGk7B+7;S+xP?Eu(*| zXY=w|#ni0yl;aU#pb6xBGd`#UJpOQ=?K4#h@KJ2~{g&wgpiHBzwsTD7j{y}-(I+SW7?tIi_Jwiv5 zL%GU0{)FJW7_bnEz|I<`7yM=rfJVgd9`mB zNz>APFlj%_rF|PT#*j=jGW;6@P4DpRCbc3+!8=@x+E(|}ZQ{-VmesZ@2pkMY+wwC! zlWhw_#C+RUyYhkTR8=n1Xn6LrWg1jhi<{iTv%6%;G`D@Prp^#|io?DUWFHv9KA*!g zY2B;#@GMOzlLF=#U`}9-#PF;qVS!->2E#KcJC2Kq;n`3s z28L^RRz}RRB%Rd&Fydi8}KEtyiN>4d>00x>s&f(c`B`AkyW&Q+5YJ#Qy1V?Ft z1N{k((FFUmplg&>nPZeSUV%tQmH4ZDq7syjDi*a{i`R_TK(#pRNRD z?LG6aeWn7DwWoEET&J{DYakCyUoEXh2}%?0v7qZ*Gu*_Ib&$M3fk+eX_^W-f5|p*K z=U@9$1tM#|se|Nl;0g`ox<39z9t9$6KdFP{YB2jWkmLSL zIG_Zj2`zf=RA?{Swk!Ck`Me0tnf1tOi+=&$x0N>JLnUDTdWk84*Tvi7b1YQL)lW$l~u zul<1nk+nDIAh{Y$k8*nyFF`i=GoiNwZK1!~Cn!N_ z?|e~vK0R)d0+F@X_^W-Y5|p*i$-nk01tM#ot%KxhFtap}nf^?eqXeZ1ReJ5YdfYq( zB2Ad)ul9vXP}V*r|Js)*5Lx>q9VC|nmuVoC{!Cb@1f>b%GYRTFu1*sin@LdbaqBd} z(Zb$*dfWyDBAr&@ul7w!P}(~})Sgd|+p0ih?Zf=lzC#Jh+K1#{`z{3{YcJD5ay6JH z4W!hc3C&7SnlMnWJy(xAs6eC%{r%N`LFv*iGfGgJ z&@+>u-s8?`g6T|xdXKxP2|h6Bo!vEalIuOLO@T<9VC|nOEr*IeR`K%p|DyxRILRaba&h&$!VF zL^`d-U+v?RptSdhs6C$^SE)c`?T7r;K3NIM+7IMk`!oe2Yj4&;ay6J48pvLMCd^iX z(u6&F?YVl~Tm>Rc*yXSG`ASgM-k5*wixh~geY*~l%Yn5T$X0(QELVckgw2@*^&YoM z6Ku#NsQ0)vn&1XuZ$3S)UV%ub)%&Y`qY{+%t`)WC)8jTP5LtVjzuLDcL0S8%{A+Ji zAhPxqI!LYtvs(jM=Ffz^N>G|mtJj{Z$L&`j(uBqSYCog|W$g>|ul=Y3k+sj)L2^0p zxCT<=&xBJ-P?|6&lc3(?S~bDhnFRG7cU}{mDeTRs$6Zn&(rH!xYQLfcrM=Tc?fLY$ z>k35HKE+?{x0Il)eNz6l-%%j4_DUTjSA)5)fsFTOLVBooR5@0!Jy(zGr9h+!qy5!h ztOTV4EAp?sp8}D!kI+GKIdGr`GR&U|gO#8(VMr!Hy~hpF1j{lB>OF3_CRi%$&8Npz zC=ltif&OYAqXebB{YCBh^tkZ~MAly7ul9*bP}W|Yf9+Egh^)Q04w9?EOxHkq`ZHms z5|k#S_1bgwxM~F=O?c1W=XWJ1D}R@#0P+dm0)-*#{&x){m-iNH7{B(V|57C<_5ZgF za(ZW5p~?L!gPh*iR%>$q!nWqq)z&Hu>92P*j9l9@*J~KR^re4;l9T@WN3Po$?_5`j zZc!Lg|6lm3d%Kd8b-%6Eo$DgeoeD$N{c{Z?*FBo5V7`d(y-KSyvRKv)1i|7Fj z{aQ}1@t`e!QUh~SD;&RTo*b(VaU4Q@KtxI zl9P46uGgL8ipO$=A?yA_Uv&>taGLMnqzM!?A9G8Sn)@=C#sgSenPE&F+hM&{?nClX*845$j;wAE99yf%} zB%gieF@5%;*JrsN3N@PEFKV{u8Wb$hFrL>ja$LK(Si>kJjGVDss^nzsKBd*2>uS&y z3PZ;3Sq&rC0C}~B@o^m^$DN*QHH>Z=My`87*J~Ib(J^u?Z*I^qp3yOK#B+;=(N)LD zaf{}54WqM;k>e80of^hd8b+>{#XTBEQpd<)%RUVwu4Ck|<$#6})iH7mfDdaJ`CkXx zqG8~u9&A!dMgQS>+7qh8gwP8G&l#O?vYC;p==uv$AQk0*qzax+6eLncVwGVU zzct>YlIEL&3JabJ6ciXF_kuaSyV?2Ag4nX8sz|5HRvB2OpDO6w6z3{vyNdihBwh*> zKF^!IX!BI(cg5lC-vI`lds7X;MB)W`9Sh2eakN73sn8cY3=nElHE#XiFpS@l4uwW{ z8ofhX`XBZrcBid<-RUTX?sTtDck|`WpArQXL_wnMZ-d5fqwg8NG2Rs}2uLSb&iLT( z4?K|B1L!7axSs@qp>QM`Lsm&7lbt$sdg`gCJ9qBfrAybYT|e}pXFmLqk9_2#AMMty z+s8ik@lSl>6VE>T$xnXrQ=j^D;d9SF|NILty!hga{|SFS^V!dSwmbg3^wLYe^E;pW z{1?9Ph2Q<%-+TFsue|cgm%jAsm%sew-~auuy!P5_e}F%K_@7_@qc^_#)vvz!W~%6q zzxK7S{TKZCuV4ShH@@-BZ~n=j{K=pG>9_vu&;R1v-~RS@zVnyg{j2YN?|a|>{(pPx zum9%1|KM+b_@f{F=*Rf;lb`;L=j|L@)3{N^|Bz4zO+(ZlG;)XV5)^k(W~ z2r4%E8YMCKqG$t97jVYk1#x&4$qY5;`m>p>fgjYb1#ld&1J#n@_W18p~UfEtaR z#xBrqV-Kjw*bCZcG=ugV2S5jnL!iUP5#y-Q0y<_K2c0lZf=(HyjWeKD<1FZ$aUOKR zxCpvrTsGQ3SB$HmYsPiZ4dW*0meCHnZQKFfHSU4#8xKGajkK9Idzd{zz0BUAK4vkf zuUP`>XZ8mTFb9GLnWdn?W*Mm590D4u9t5c>^B3B~pu&0>>=h4#;rzg<3Rq910vu4! zcR+jzH|k<5HJ(z{MXdq*7DM{6*`(jeonH;~LpnW{ap|{>V8~LkNF~IHgQAi{;MlSc zaCb@CmG_J+(;5H9mROW=K5lIN<+gaNHC(W1aI_Z$hi}p8L@&ZPzO|3bUUzD1MKlr!D=44DdcLdn+Jm09KUR2GEgHZBP)W z(eY6b*cFb$v~luMC>6#_57vzq28z1TX<~e?1THrU6$bhAu&E|~KbY4S7UJNFG6Szv z@|37L6Q_pJwIg9jg^F>)Zh#)-&qev~&d7^Ck@N9u-_L~bK%tErhSlfxJ zL+q6=K!DeJhKs~)q20lFXs|9rEZDsS%L_YW2#3@K7kmoXuLJ}v7Hz_JwgJ0I2t1eX zaD$`}vV4aHo6sf9-u@B<@H3&<7NJq$+8KfJCCd%)yxR@8xN2M9Z6pL9RZRyqvl}9o zkmZIOTy=uou!q_Y7^F;$IU9+?Ycaz`A|iFfxhC`*YPn`JRmH0<9j=L5RavgVs!A9& z!V=m@Lg3N)($ROJUTpgBK+QOXI7YJJ>4ovv%mR)U7E?m0ID2RZsQ?BA-A1b?w2LmZ z&ml+vpI#J~Xo)|-sG8d9dD28Rm^CB|9(jtc)L~C0EcGo*J-VXFaaC_TySl}1*YUX&#GoSEBu`rcWUY-QHQ!b-}nRpLy~v~^6R z{F%<@E)Yawvr(8;5PC&RdT; zI-f^mz&twt3OdjKiVF;3B8WN@esvdhzuNK}+6aYF8eh0#Yz!}7njhaqAG)}~B{aKj#88ZLC>Tx`o>=P!|2vf;KHf>rac_X0D zJF#FaiT9|A^RZyJ%LtRn2>{0k88w251v_1s6Nw2xCvO->;0}^^AqYZ?Bgj+=vfV4l zRu}s!asr@hLAJmf=<}@@ZI<=IZ>*(zmE*gK>U1P&fg;_4D3Hef4qHcWGaeOM^8?#Z z@o$S;;J1SD))kN%*qKog2E972liz>rG-UJ!p4rx0H1J@DXFl*aRnW8ZKnyy~7tOlz zO2})kpPWlYZIY%);9>;tQ?`K64PffrZ#0Z820&VDno#P*p=xPB71(;(Wf;OLdbMdW zZJh6GBleEEnp2HniiMqgux0ajwdrRV;Zm>y(RHnO!8;Oz*0Z4iFiP~1PPBp$?i58Q zy5U5FA#DC?qIHVEzl45tHsA>bEfNa)1PBFYIA4}uvs-Q(uAu6XPweG>v71%wU#QrxIjvYG=J=i{e>;^A0F|Fl zf6s^|`&TC}MxV z2V(E_iH-fYUbksfvHwEFZl{RYVhiX0P`bk{>R(Gk);>kR0y=)I`~&9bqXcks zEiAO&iHEnyXCAR=Ar477i02#-f$u}Mh7%x+tUCq!InP$9OQw*9|_W8>c6a_%1{9&MI@_W)`C%E@=f^Sdq#|57ruuC|v2d9ee@&^OG%^w%p z-09L3SN^y{=u|Lu^2a5%7yxOp$shT<7ft@C{$}&XWnUYy7dhWX{GfNw^T(vletUsU z1I**M^&Y?dIsNwi9{KG}Ut6%V+0~YxclKNUc6qRQ2KF|?Z+|FV|2a(t03jcVCqE!$ z93U7MKS}7&=PX-0*0xq=pC7rpxJ+QGBov-bE72(u0cKRx$K|_>7wKe$3!Fo$bUkb@(IE;Rr&w zr5ZZCpHy|6AaFR*(7Ye9dC9Lje^u+>KR+KBX})^_-6-dimcJ<-Q2@F)oPf7ip4@*{-5T z<#TOgG`kEy!{I?X{ila@F(B9XUxa?9zis+fhwDeSb>-Ev?44gt#>J%sn7IP32@ZSQ zWPue=T?!l3DPBF-YkPg-#b4AVepuWp?6_4FZWX0l?V!3LSY9#?1ERVzj-MBn#DJm*U^(<%0KP;(ZZnb?`nlbd|ngvlaJ7$?xDBaJIrUud+A3 zKX>k3D=e<6g18}BcMO;JDh+>)$iv47n!ttbNNM!X(a0@q*2tl!KMe5>Q4E~x`G~tdaeY2$;eFE9viuZajg{}BY0KB5 zSLjb?SY~1>3N!|H0RJHLQ-(>nM?3PVnAeN&#UF$*ajGk?uCdG9hf}$7~tU-CtMMDQ0<}$_0IUmGvs^^-ix|Vya)Ed1bX>`It`%`3H9; zlt#X)lSRf&)Tf*;uxi?9Ykry#KL0QM&mwHL2ptCDe*z(_EVq&6|J|8ltEEtuaz4Pa z+-?z+r5ptC?2oFc^8P~gE=#BTqs-=i_r~G3ZD8MHdFcMAt~USs>)vnawC>_J{~xkE zwC-S=|BqNYty?z#zg1tyeRTc}|8F}q&|-P0%*Ai`KjY)^-{~=(_tQRctjOh5|IhiJ z_wo2EACI@~?YrpX5p2W%6-%f3FMh-Sb<0EbSp0_nn?4@JZ}`9C<5BE}|GVt+y5XN$ z+1c>Ve>)rg-n?u7{{+iJ>khWzzuMAi-N82ePw~+ezu|wn<)Jbczu~{e$K#vW z@IQ;bs~i4%?7Ky8_+Q{_ORx?9i!7bmu=oxCb(V+PqSy`pOQ|#6@ZV#d6}{nql~3;C zH~g>l@%Y5o_wix9VBA^n<53zY?rgGjYP;e${5M)2YP;e${BQU1D1O8LE+3ELH~jDM z@hE=7|9&5j;y3&s^6@Bs!~YQA8{?9 z&MY#^M`F96&?{Y47sV$3KHqKf|1$Jl`A!4hY2Z5ze5Zl$H1M4UzSF>W8u(5F-)Z1G z4Sc78?=i-@8ef|^t_kZ9pHBM6NA!<26jlcnZXQpvn8YiXyPn?yObJ9F2E$5{5ko5ofAAc+7r2nU$lm0c1N#mR}OF!3X zX`YoH)Y~~D?VOJ0iD;gQ=Ba4+d1#)39@Cp=pLx!CqLfLllg>Qr%);}|-V@Jr@~58X z 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

  • Ry<|pZ}8Eb>3 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

    r?`_;e{pP1?x1s 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%0Ds|Sgs04%KtzG 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

    pT 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

    bg~kBs1?(=|L44 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
    -g}IFY=M! z{QvHE0QeXzb*IfC><9U54}2G458;7LaP@A2@JL<9CL~`b5q#O>ikC^SpT6vdc5Pu-LXx-he&-7A;0FF z;br187XK;3+8x4^b$@(m58heWU)b*~%p8-Sm*#ZM3EnTPCaWzh_%x5tBuUl;xAC6Wk#t0_jq--79%FT)g}@7;8b`rcjG`bM6;grhuk z{U{HjS|0L~$#uvNf8+cZU-5@^1!(pGc|P*TqEF@4pu8u!P{E5PPJuK0A!u#qDp8yeGP27k->!NHQ-!1lf!-aW% z^_gI=^atA~&+q8}H3bNa{TNrD2gtuJe#{@;Ie*eKemOmu@xT~=Nc-5IyifU2zXb{q zT19a>4 z1LD)ZF+O8yj8FfI@%IVwnI9h{ytx8|yz~Xj3qGxasej~O6L9r;lKCy|uWBY@evABZ zev3U=f6Qm`&;Bv?J5~Nz;n$n>pNRaC&+&Ordzr9*REqgEwtTn(MER%c8p}UJIF^5= zu=A^5o9+LX3<4tjDfVQ4ivQb0*!~ZB=-N)t^Ah8$?Su5_-|3gCu_g<9KEw0c{=%yj zAo8E4tMey6?9utr9&?4Qf8t*f;$L6S>zBv~(I0#0iq0YCJL~DXSwfQIhU_ojESUHk z>psROFUMy;ur54O0iwL^b#;04PufpnCu07Cuaww{PFHz*>aKTF#ysz}>ekPD)%`~D zM;_-7AA557$cul7@(ve{@*`tDLmziTBu?cwxS z+?b!AdQ~71h}U+b zZkw0s<{sTNb*;7io36`0*IeA}qcd{1d7-$0AIYXRRQCR+CC8dJ6`s|s|3qIoG$mBVS^nF)>W?CZCBPq!gz?3Oe|>^9UdcAM_P0~8>-A@y-L zq3O1L)R1qu*+?57S8kzOAd zZSaXdD`4cEC)}<8b=E#i0~v!j}mtN;I@E?k9|2lc)x&YTU?#nYsy>sG0WR*3xs=!ze}_J6Y)95 z4Rk%G;77!#|9q$kZvKWT?XySWe@Ohg@VSLgel5Z=KkU`{O>EA~R%1*08N#&3UIkyH z^t8v)P#)6?msedDWZ4n<7b-w3`(bZh_G6ie_F4r~M11Ti#@|Lb#vdT;_ zvx{)M0)&3?U&h4eZ;p>&c#ncV4+`%j1;>9yzx77d&o1>}M-kDNrY2p1!`g?_!3%{r6oA@_Z;@?q;e`h8B-6cMH zhW@12Y3AxWL*X{P#xrA0NBorv-uy2e`Daz|4=Z@o8y(|cQ^9|#;2CdrjDMD1BSN-m z3J>WuBz}9Vu6x2OlJ^ziKDsCHTVBwAte^YMg9+*L6>?(TbboEZd_n~~ys2P5q0(FT z;|k^zDvYE4gbJTbp&wye5X+y~p&u7MEM;PckH8e&FFa7!#}m@hk>WFtaC$zuLO;Qm zKrEMz))iZTD4%}i@+psT&E@?g>bH5wANlZumXGq}svG4|zq)X&UyJbL3J~d;H#t4^ zL;hGlJ#fnd&c@vpIE<ez(1I{cbJe3i(Y9eCFM>pXc2l zzB1d_-X;Du!qjhk!EAp}pA`xa&oQ(YV;wX{@oAskO8ox9$nWj3&k64=+&%E=YvzAV zeEQn3z{j7MKUj^WD%Z|dfY{!hqU-8}YBl6%EVumE*YkGpCWTLb#2(Q(#BvPn>*ofR zV~G1EOcC*E&lsP1rQ`FsKUf$a0r5K9FkNW_i04rJ$+CoWj9mG*>E6c$knad#%g6G} z@xor7q5sVjMrRQI;Y3~C|1Q(H5aeIk1XrJY8jybz^yCcFZ>$p6^D6jivJRh_L*M3e z9CAP5cpMV@x=sN?x74j2AmWwt{dIjTA$^Np@?g7`htJr}5qADy?v0U0D(oQ7g@ON~ z;&&6?W*z+}+Dn1@-USe`9720~IRyE!$0+}n!cqQ#!cqP~!j_-kv_&8OP1~h|^SAZy zD&_MTys_dxR50aTB^=AURydaTY2jGja$%Qu#MHbUy-0t9UOgZmSFI-`+Yo=0?#%~p zA29LpcXb5_jQn+gi1-tAb$a-6i4Fdl;vXW6%|gV#LRZJ%Q}`U=H@d>j{PT4+pZqQm zt}8%bb-@Py*oOHz=f1?%F+5?i@+Zbt2{T^2RPyID{>k4oQL71Xv)p)q-i;Di6RJq>52Nrz1_>6b{ zj3@d*zNjDiXVee&9qobk8ej6m9*{rUgNCFI_JA%dFZQsvaI}Xu;b;%|GwYM~$KO!~ zM19fE|F8AsINuhk|5B78V%@2qu62Nj@e%vepA#{j)^)d8hH2exu)8pS_dS%feJ$c3S#Et0(hV&1P z%LdKJ0>nC=TuO&^J^b@)Fh%h3 zcgD;IsSiE|B0v0F%x|c$<73Z^Ke4{Ug{?1+ujpUn_zLmy?J+)cB*$mIPkZ=z0K8Ga z$cOxv4@`fLnD#Ly{h*K@yj=zF81VJ=JU_z*Af885L@hp#AiL!|M4fkx@YkC3pNM1p zV|5)}Fnl#p2mXY>uWlFfd_(>He8X`9{8v0qKzp?-K==pRBl?FOgqOh-@i_qW9X|(v zzMq0A;(1`4t}?qsY%fpJ-Rgolj(wo+R~F3it)q2+M5!Ogv*!t~Dg0R%=H~(W48%Uj z0$sfiLi;xh$M)|c?Dns&AAsqvUQYmH&&KqRjfJsU2!Br7ZI+PcZ;Fq;{u8Gs!k)Rc zJl+S~afpG=~Ie9W&bANuGa9QCoDu=PRuK9%&; z-|7F}<9+l`bm!w`lsB+a-k?w(@-kjTdDX-Xc^}tgyu0vy3K03xUt{|qyXEJ%xfP|u zZ*x;#%zs;9>w|qg+Q;i9*eBzW?Gt-!6}CN6{z1aA{At22pZYLf#qtgpc6s#2ojLFb<^!$gvdS60n`xml(E-C$m=SlkO!oufyaaY~P=fzRNcNIR* ziz9XK=S9lHzFZ#p9U|=fcpjW1?B~Jb{*vX7pLJhUNxvkdC;yLC_*V!1KVp3se-`Jj z_;1f&tDpR4et)R=7b`$K&*0zuJivS(d+_+l^9cHUL;>P?L?+&N9$~&bK{%Gjd<-86 z@w~gWbx06k)HN%SAck(rmm~ZFcDZ?x`B~zm~fPTIQ$e_b(23v zU(uiAzh5i-&ipm`qu-c6`gQ*NYytI)KU+Zk;^)J<346VEkm6Hc|4aevw{>B!-?FcW zKUk#z?W6dVy;XC9wG)N0-);rps{1xV(GPe^z!xh1*}{JP?t0-1g*Pne9}vDs_^p!u zRo!2q(6wNWt1lNmCE!~Erv1ALyZxEJ(EdIbfj{meY=6x7zew2QKmJ)NZunK-c zE9DKIk?VhX!OS;y7vJ*@>}#}ew6DE|ZC{*Aq5W6wq|PmTE)?Mr`-?R%)O+ZXxi zKbF5bzoGmd;>YsW6L$H0Zb>R?%&(ZA(!VDwK$I^N?NEMQ*yXPrm*=Mo^f!p|u=iLV z_U`h?5BrGqL0`@fd9eSd6d>}OsB6p*eZ~B+rBE+-$e?xKlqnc_}2vfNAJ-mZG_#wz<&rBd)Ja~2YVkZ9PNE)VV6hzQI+_6 zR^smy;@`9;&u_YDoPfX@Vrs_7k1k{VXm6LtZv)eQ4=7KF&n?it{@eoR4$!^N5j-G1 zW7R1N5b?+B>iA&h1IE;c_Kf{~l5nj5!NQh@{EroO{yz~uLzq4QfoUIO){p7`as9Zv z@O281x^tSZw+c(htV+Akol7IGO3!J2ga~Syl!xGBBohuV<{MIY;k?n;~F8rB; z@^8s9=Y!xgcAL-q3xEASm?Gw1)ZgY=8 ze_Wo~wMT^CtNXpz$$y}{t8^R7yIR=g!N0A-|6Jhnd`wY(KE~hS4<{=?j2C@$^>_ha ze`@f-^$H$X!5Wep@yTxoVdn?lzk;U*O#W>lJyS+ZZCyahJQGli?{l>bU9{BhZ z^T`kWI6q!**-03gAoAZ;*O)(j$LaZ*OZ>}e3J~S(qH8Q~tgz#MaBkM$Sw)`D2s54# z2Wp?2eZcVvs@90xiYUuMD$`AdWqX2=&>1vF;j9pRQ z!vm)LLxo-b!MZt7_zDGRu`vGE{dMziX{}wjr3r3+y|s_7s}j;$ikvg;&)*<^rkeUK zF7d%F0TUnjWBgHpPkijz>3353lZ9uO{78@Qi|MJ4nO z!ZH210rR~231Kx$qKE%IKX3WV5=tM2I!o}d0)=`}<(?2-AVx^QFu zbM4c4edt&E8w95PjMtO#9wYo8FhyYMXZ)g^%|hX0n&Ia3)X(Y3@6rmsGGOxiw6OC7 z-x4tSe@WQ+U(no?#*fRo=#L`mk8WLm&NpBWk10URM|adU&PR6>j`Kft`Nnv~e314( zMFHaV_Sw4nb#?HZfSIqJEbRFzn6$>ke_x0XKD~mM2K*WEKO+2Mll~JC|7*Is{QHEz zA^eBJ$A8ja{0{@YD=n-$D@KyTg0^#JVUwZdophP224;h&YHRtJbkzrC(8J^GC4 z8Bb&Sk-~Ka2>;ot>&^fX`-yG3+JF8+_ULGtQ$IC;6qko+t9P^(k z?EJqyKKqL!^*0FrPv4CGe-q)wFh!it+CtZRiahwoe!}*T@X=S~qc8KBPYo8vh9I72 zhv~W?q5L`Q-T8aLJYOqHV?BVM6`d-4ekq^l@k1-|XNUOkvA>w#85RDr3STa}Q6Ba~ zSE5c3_S02Y+s|ndhWW|srN1%X+EjRMkq=ytSm_4}$M#ScZnVc|6@RGk1Ol^B_9pu?l*z!=`KEf{lK4J2j7v#~O8hq^UAmJ#_G~odX5PbYyN!{r}>nJ|B2<{e`5ZlLi$@(-!a0+6nlAC znEr=NLCABAt}gG#;?w_5F7d}pKZgnH&xwf7e8%ySkG^jCR;sbO3VS^ff5P*C{l&B5 zqrc-y{%eHM-^_xmpTnG>!mzhp3;(5gxo-?8n9o(Hh{k>v^NFp6`5W|mrANQL*MNR5Ey+MpQ!Zom43}|YqjT(&CgFiE#+VKp8TH8#|mcsk^VcnU_RHmxA55o zvwqq`*z2cr<-F+Y-hbfpaD9a1=ixRI{wzur;lCKqs3TO}|NNlxqker$c{d6V5Uv;e zfH3u2tpGhEypygkC!}+9!cuANrGkl1eH_34nYlhM7Cz})bsy97eB|`_8=lwEA;fq% zMOS2kSTCNgtJjOs4^_2(s4xCF*0-my{Uhlog!D6)<@UahK}%24AL9+q&Ex$;eG@y$OJ9ijGv2$t=!^PCeW}RC=NeB_e#3q`@b@g_Zo41U~Y7 zSUAdaN#Il7H5Ghwz~q0su;oRbFAH0qfAo3CJ9_8m=TTi$i0DaSP0`YsU@+%rv5$CO z5`Q=zBNlO9lKypVLK>HaTXla^!R+^i#@g5xWWhxbWG3>8|^y3dWDC z$i{d8RuvkU@qzi3#|QccdB^@k{~e$JU8eZ`b)BA2mane+C|`@P2kUxlLXu76{2{t$&Hx=EjK8yeoGpyLkAf-sAN~E0{{F}Q{@?At)#oGj zW8^X#`!S5Cj2Bze*+o1b%H=o4Q+_^a8{znKN%*_?b4f#m{k%l}y9j%~2h4oVnDLGA zFOF{-A{*ly>vfC=D-|Ht|BlghO+p#t?~RfF4B;sMnZlkAP~JJhu{>3&QQnD??|flD zU+up{KV>I8T>)Z$oB2oF|6W(P9j1u&U%BWG>%Yv;UV|xOKNH#F`Yif<8K#K+Nyd}7 zpNT%5p83V_fQgSjV|>Ps7=LWQ=!fwl>Sv;`^}~MUWZ}49IZfE|!DqaPe8vm&(Jx~~ z)bG*40~8?I6aB^Z+(5X|eiDZ9_1R|qC*tSc`s?cRJA7w|`N{GoxOu;l`N`shbZ+yC zyk6?@_pL4S*mqgsvwn&_#`V*^g`+;k2wNZ2M^nHK^+A8G59f;+Z+*TP{T?eE^E*yB z<~LtB>gPSe&X4|ay0H5P=Z8Ni%oq-F{)GN|azc9c7?j@!#Reew)X)6i4{oZp3ZGE) z1)uhceEN_1oL~8X@InQM{IAnB=Km>SrzgL=1Ll14L&EWV^1lk-r2uh0`4L^?`Q#^r zogd{tC+zac|2Gx>9|NDCaK_in3H94r_s$PKYk%hdz2}iRUrc*mtN=0J!ahCU;`vY} z*WvjPd-nW`^U5-j#`)o$l%Gr}Ju~Q%&MObsbzrFv&y&~+eHh|-cC@a3p5^>9_KQv- z&M%MA_3?zVeEaD>$~Q@vJRs(W`|29yn=FhEfjG~6xUNy2BZMsv?>o|;?^A&OUw{9V z_G?u=tRJ3t(AO#j2z@XfMSUD3Y<r!@#j?cJ`2>}BtnSAZjQl6- z-tv>*Ny5&L_E;qB_5hz1@Z0Hgs`!7aKG6^Lw|>?}zw|FZ@1alh8}&I|IO-GqMSarW z9#?><|53WS{^%2Xi~2;rQJ?s$f2KaiEC0V$pV%LL&H6#V*rWA}z9tAqeWA~&uPMS& zUk3<3t^lDg^c(ech;Y=`!NO5rGlZkQ<_bsqqdz-8?Ck_$+aLCTeL6n;vjd<0w^-Qy zkNqdQw)c~mKddXfwE|QETB;PCCSNB_z zNCfV$tMNQx%6`41KT{b0y+Q%HRCqgG7nkyG6do_!rz>3T(+M*^Zx!&N0n;AnFSZBv z=l06psM}My0r!L6*N7pln5)pqlU1R*+g=2i| z*YR1u#h=9WTl~N4!}Ap5+iMCC_z+zq#vd4?uUW!TUq=aBU+|Bq@M$0OdH%r^Rw_U| zPxjU|K2L5S+zwO3^Dg$cCLui=eJDR4eUnT?qlD3Cd%-^_`ieitOaI=s@cFqkWM_^H z@$*XPt4qPupZ@OpqVLhdQQvzDTi=JO{BgpMmi9s4t-?{?_=l+P$->URGyS7a#>1%Z zBZRHb8#c=G&*{zjqlozu`t*3j`feZLr(ud%-^G5PO(@T&x6pl@uThmd3ZMMc1daT* z*f{TZytnX~{|wdrBOyNebNTT13Vi10==1RspZShd));RXAFx-C4~$>qg-4Y5j4!iv z@9~B7M+(yh5c5~;kuo6C&(ziFnXkW3_&%5-=If{F>iHt$@!7&2kCA_guxtAt&Dg*o)hj`p}%!w*XvlH+CY4-Pl2}#n4gc_LHJSy2#mjscx1r%BWz`*0))T8{?;U2kMXPKF>k^pAfERc8&b87w3<>*9lu*^s`*p`r^Fc=Y-EM3vS`eY`bwEQ3U6P^ zfBx8fzQ*$-&NI<|KF`E?C2UE}kcjg}`15$)NL6giubBUg5%&Ct`n3wj`n3rUP=F{; zRcMrl{F8;F{Pcg%?~rGju;t$PUVo&ILFk|MjQXejtbf)6@hzTj4H=W4hrGUi%aYt4 z@jT4|itqgCFGmR16`)<0WdC+w>0k7JHBpEDPk(j)r~jNS?EZr-khEO^0@ELiZ`FMt zg?OHx`n{|Gy{e!pG|rRrUFb=|@w?F2m%rouA@Q-N_?>6$$9%rqj6Ygh?B@%@M+@&! z+Mn-8A1nN!z&|eVUsU7DWE$t?DUbPaEbk0qmxsKJO;O&D20rOOUP+I?a(d+blyH>y zM&T&$&B9UMTLK?>za)H2sUPPVx(fR|!;wq#`9Si3u-El;jrNK^TMScleLdU$CJALs z|1jp~CAJY(v5DwE+{>&I(SNqp-DU+-9{nMfClhOwhy7#Uwol|AD{T3Zr&ZYHb3UB7 z*aSp>!Mxt!jX@?ME=o%Pk%WIB$%9JFeu%dE;Kf@w_p%>hYcY7~f-lGMNtf)rDhzEyB)k z)A!{5b7(1VXW=2@`+ZD)zMB3tq3{`>cNg}2fbkjI^mxbo0{e;MGyXV^&wB{R@tOYV z_=l)``sY=pJo3ZdB7Z`KPhT;g@pqcA%#H*xkY&ElAh;h z+M`RsJkJgleoX(4*yXc+aX&a=Kl2#E!MFnX^ z1!)B>Q9)D?6e&fK>hF2hde+H%c9Pcj^ZWDrU7SAq+3&O7^{%zoUVE**ch0#y!ml@+ z{?Vl}{7(W8{#lyV82$1`j zxV}#S?fU*WaMp>5>-%GY(;P!T1V0|zGsU^S=Xep;_k7;Q@!}ELTekJ{-zUYn{y!7j zwc=d=v%lAiGv3kIw(+vRhj@9vh5h|^(sRB4A8d#9KJQd|5B_<6 zpBS<8d=7Tb2TulPpJ3wOEAn`A3}fQ>b~@0GZwNU(zVUtqk9WAflk@ln&hh9<@Hjq9 z{C*&w@AqXn>i*vI25iPXb$_o|fbEOK|FOG2evFZc@0%0>|E&BRFCGMcnnonvZ+Qav zlVg6oWYbzZk590(ebJ>e+Lvt`+L!V72an^!#PK{1e3%4@>)AoTagO2s?|=RL-M-I- zDQw33Ts&4`JmK+9fQREv&ha5|)^8-ZjsF7h5I^htcf%R)S>SPen8+^%#z~OKIsV2; zkk~)21={|@^Dp#|5h;H^Ev#>uAG^}|**|zZZ2y=9ejPqcY~QIsWOIrA_bzOO_N9F~ zxV6tP_Ty6c4o&bs;={!IZ&|?G9K(I8-~07im@i)Qs6QXy%Ju^4`xrg%f3WOu|BLr; zegz)x-!Ok1JmhEl?+PB;pZq|>xt>27Jgnz=|BL6_EBG+6ekTEK{aBY!f9iR@1wD@k z&mVg{#(;<8@xr}+y;O~TOuS$7FW^GQFqY5t=hyk-tnaPZ4)tZcGr>c=tnXdmp}uS{ zxJb7zIV5TR8F(f5;koz+iSa)P4DnOX*uwE)`7eNn@~LkyddBlEc!=krt^IiPw2mLI zk8Hc}eg>Z(>;)dKpS*v3DEK&hn0Wm{5$Wp}$NMC>9q$hZXC5ZrAO0(F=PXCv&z1iT zo9GrUvAoN$70O$O@@@t{(wk$uU@$Mh_VMB@KZWgZ{p9nKvEXmX&gUhJ^?h+(zlyNE zuQ;#gldyfTIOCs&Z5#h|@DM+*pR>V#Cq4a@V>|exy~@~G-$%i1eIEl4^=1C2O@7vg z^P5l~#eJvrMlfRlz^P~d3VQN0 zBK+SGo-+JH_~ZGsM>hUJ;`ggP1q|g?`bqKa3XUwX@5T9j6iwja z`zUCCHDc%a8SJaEy&Rt$P`3JgeERGKo$D=;LFdlI{=lK6LjYzzn;{WvZ zb^4+H_)k>)y#5^kdmJAoJ}=?%56?^ZzQEz&C((#ReiYF1k%sg7z&_4C%*5;CAAs9A z=C9AEV4HoCiR-~rfrA~xTnF*}728*`5s)}OUkD82^Agyv1V5gQg2egW-N0iV^Sm^| z?~CvU3}^d33m)2+e39YrqP&&hr{lxK@9$~_9`Bg1&*#{-^;rcT>cjTn@we@<4&1f} z`-9ETz7g{C`_MKA58sEz>&@2SufPWrIew}y&3XOl4<4>RJQjKQETkAIIv#Pn8G!wE zykY;b=X>06>N)-dJ^Aj2b9@+X^yEA?!Qc7VJ`W!|UU6UG)L(4$P+73&(tBaT;` z8(TZan_%a7(Hq>37lRDv_``d9cKkUS+>SpZ!Nd4N{jm}K0TKOyM$htp3vSCl*>Lvn zTxe|n?gbwDH-Cqg*E=3#Ce8=90^0uG8$9%P`r8KF`r~@W`s)vF{S5@S{@|j+-*5fj z|JaO;ordF$^2aO>|v zaO>|PaO>}KaO>|1aO>~i;MU)U)_3c1G1~$9zS;N(iF_!~avnd+4~uY)SJuw!ljUbc zIL9k%XMC356ycL1{O$;!6X8!p_`(QZ65(%0_(u`WbK1tYF2Z}^T(NeJUzT(Hv3$=6 zKRCkw5aEA~@be;kT!h~i;nO4h{s`xHyV>}jjqsNv{LKho8R1_>_>U3Z6MfB=$8F1Z zGMv9Rk%RUQ-^a!IT2F9ZgP8a}CCA6F9P_-N;hfJ62LDNRatvu{&fmYpuGo*V^ZpCR zvvB`qM%-VY>63}$;ekMV{@L-1zmv`J%l=L_c4hod_EF$A-s27Dcz+VOJ^%j*&N?vh zeL#)};e9|pAL01KYcLa^|8o2Z&wu&%_@lvJ;-HVj_TqSC%jf(saQeFnJoqF3kKy!x z19v%Nz8dy)TD@Q{BP%6kX=bd^uuYB=+MYVubj|FzfR`8@3=e^Rv>2Dx-h==}m0}t`g-!SmtkM=~w&U-n*&f{|qcsM@%e(isO z+wa%r+KPRUiF1eRz!y4(dwt9OT>TYs`nw5s>u)l+^>-(@^;ZJE(D=I>Jop=kcpd={ z^=rYzvIhJT9WU~QhO>R12M_IY2=XsA`Tq?5DtM?r`Rj(WyswP@aU9Rhv$00r)Cbse zXaBtSG{xHod~0mqi#$wxU#%~2d&kgscJT94&LNnXzYoyn=hzzZQ@<^^)&DA@k4N-_ zjQ-c~zdQJ!@L}2yd~e`gCcZtvLwqN|J{+9qBop)R0kruUOUO_C2ym-EB%=RKM2{gb ztv?_6j|M*xA13l+fq}DqP6oH_!($oRhxSt#xYF;*%;E(M+4Lr0z|K55_@KW_hzVEmd z_;vU&aelK6@M*{V{V4YTpTzn6YY4Xgto+ZRvv57uyqOp9@2B_2X88MQ{@(Th;CbHc zelPnVY}?<o#+Ogx@TfZ=%3-&^3p-+b^U@FYG=%i-^R;HaLC#;9+_ zX3*2$*Wke)|6YGBIQt|M?LPp6o&J6X5B}Ibdm&caKD>7o+K27M^-ADhA^%n2AL@9q zzZ?r5`U^SNGl8>z{s}zvPxkjy!EJv(8$9%P`o9!B_~-e=*uwe5{>STW=zsK|4<7vU z{FnqD&JS{4e*>p}n$fd=^LlLi_e}8MpTF$D4o8e=PW=G$K)tCQ9qcM;Xp|F98qn zvb@W|ZFx5sJ@d1#g!0K}7|#5UnEcykWBvioW5~q$!t=l|Uw9Pl^D_9Z#{OrF4Z%)- zD`2hjzjJ=R06fgc zIlul0+|IW@H=Oh5uffB7nS8C`EI$YB6XId~TY-o6VSNXH+xq@GqCeE=ng8erKQF?s zHk{?(1#ZiqW$di)wYXI|REcz?!N|31il&Wd{z&=0`2)ekg!u1|4E%~+pe2+dfZ?hU>jK1|EU z`T6B1{XOUU{Sa*0_4}dVUwN~;Kb*uiE(0#{`Ox9m8Z6HD1CGJ=Lh(=GAD5`uEb$d_ zf9?2OobjH6ZM&X67o1}j6Q56=2MqCYJjo=U9!^HmeHt;&f z{Qds-v2EM48GNwpJU$;|I~*Uj=V#y{ULKFt;5I+!10g@{KSu0789U$q#gLSKf0y;? z32y7d=QW`|jEB!(LOk@p6}T;*&tpRQZ0{YxZF}=w%7uu5iS3P3G^4$T8vBW8@7=-A z^70t{@p+E*$7hoZWoQ54e1+FcCO(hl^O=)8b?-wR10FY=^OeA<=X@pT$vOT9&i?jS z@X+7bUjG2M?KKKKv=`fF47hEdbHPLV&>!D*5B~V~S66}0&GrHE{qJk2$A^jEf0e?v z{r;=5;9-1VeqL{E{)ylrKj&Y!gR{>w@%|{UKkO4sw9kszA2N2&2AWqW)GZrh{9%fD5)@KtOi%=iN!?~u_Zv##}*Wn+=lK20xeO?ZZQO{Vi5}R46Sh5y~3pw_@rajFR z;l#tPFSTnOFc-&?Gr!)kQDGG3sN;HU~ay`#6Vm4)2Rz+MSwkM+%pCD(xG zAQQxse%d~76O5NJ?0z_G=fsk)gzfBDvK8A|*mqOA$4S6#mbja6u&Cqq7aJ zQ5K?or8^sZw{~Yk`8TcWRG#;Vm}kM(H!~JzOFrifx!D~-#u-SmNd^@h}!5u7dT*jmhFw&d5~><&LO1N#hp^##Uqeb~jR9rAkh_778FOU?uD z(G$*+RoL2kQ)OWe)D2~z11;~`fEPXrYi6w6zn_)=h#BzN3^I(XSLIb+hOPwt& zKORed+_eSW?Z$DPyfII1ELqyM1@(LemM&vnk(nihgUis+{NHz%Wy+1+_r*$I3F!pBVz%GW2 zgu{SZ*u^-~riW-sxqUEk$WNPIfoW@u(k^ONG;L|6B|Fq-){(ix`pl|v^|^7v4jjlM zHeaPu*oJ3!X>$dmgbt%CZkEs3gp6Bnrs5L5IDd$KprxlQach}65f=A#J#2DkS>!`} z43>VqBPL(aQkaJ4`fvH^$mVRZIKx9qXTtI7@RScADNroivcBK$w#^}=F*7zF6q{YB0uleh!`dm zby22si@+a%aqBoEF#*w-d_k6YZii)@vwRpVCXcs_o#eeGa-wPn&MM!*`O~fm`o}a$GZv%*iG2%yJ{fSG0`cu8}#ehovpI z-i2{Ep5-i6g=`!*-aq&F;#C{xoBnjRVy$N4;GfPdN+kmygVet3?Jo%UjOU z!&%T}U0Zp}x6YF5&e8wlNmP0?V zB&=nox4;i9v4XyX%8x8?Jt_GtEd9_1nI_kyO)zcOyDJllNdA=J(iK+V57M-|T^J|% z!X~)F{GoW#TlR65ln=vOmci055r>~^cPtn}`B zvpePYvb4|4?nKA#f|(s5t0Gk2kKKyx32ZX9g}|)`D>hyPe1c_Vhj_KbsaZSZt++EQ zw8g4Z@Lmq|19+Yy{Si08wg&DbUJ1@;a)ZRTKg~b)8X|r@_)yq~iN6nyTPLwy#gD)P z$-Tk%6n_AGKk$9T^G?rl@70YEzZ5(P`vKx_fFA>Xu=s(0$%>r-9)4%N1pE~6-^t$N z4F8<$DDexy$G|>P{Nw|(V*dp{Lwp8qDozAn&(R1eYyT|w+~3Wo!52V34fuEI8{n@D ze3bb9xJmdB__^ZK!Fk_#w0PFv{ByJm#K(XyhW#S(rQl1!FBd=b?^&@oz%Laq1787t zmH1|7X1V9QyI~*Gk>I%FkbaI`3f>?5K6Sfw;JgQRzxbKBiMa>1!*kXPMrFkg06$&5 z_hsoShZB47^DEaqxeGPZjSoI?MeH z#1>v2n|V%_`;MPJ;=^&%bOQ9~mM+}}&ij~Xc9&Lx--&I6=@Rw#VB6};z^#6+(I0
    cNi!@;fpk>EC- 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

    qR(o%$Bk2@0(E-6JA_PCyaaFM~ArN^Cj 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